2016-11-13 20 views
0

我想從Groovy [soapUI]運行此腳本,但我沒有收到錯誤,而且sql命令沒有返回任何結果。我錯過了什麼關鍵嗎?從Groovy [Soapui]運行以下數據庫連接腳本時得不到響應[Soapui]

import groovy.sql.Sql 
import java.sql.* 
import com.jcraft.jsch.JSch 
import com.jcraft.jsch.Session 


// ssh login 
String sshHost = 'test.com' 
String sshUser = 'test' 
String sshPass = 'test' 
int sshPort = 22 

// database login 
targetHost = 'localhost' 
targetUser = 'test' 
targetPass = 'test' 
targetPort = 3306 
lport = 4328 

JSch jsch = new JSch(); 
Session session = jsch.getSession(sshUser, sshHost, sshPort); 
session.setPassword(sshPass); 
session.setConfig("StrictHostKeyChecking", "no"); 
System.out.println("Establishing Connection..."); 
session.connect(); 
int assinged_port=session.setPortForwardingL(lport, targetHost, targetPort); 

Connection con = null; 
String driver = "org.mariadb.jdbc.Driver"; 
String connectionString = "jdbc:mariadb://" + targetHost +":" + lport + "/"; 
con = DriverManager.getConnection(connectionString, targetUser, targetPass); 
Statement st = con.createStatement(); 
String sql = "select * from SS_System.tblcompanies where companyid=495555" 
st.executeQuery(sql); 
st.close() 
session.disconnect() 

而且,加入一堆log.info聲明我收到以下響應後:

Sun Nov 13 21:39:30 EST 2016:INFO:[email protected] 
Sun Nov 13 21:39:31 EST 2016:INFO:null 
Sun Nov 13 21:39:31 EST 2016:INFO:4336 
Sun Nov 13 21:39:31 EST 2016:INFO:jdbc:mysql://localhost:4336/ 
Sun Nov 13 21:39:31 EST 2016:INFO:[email protected] 
Sun Nov 13 21:39:31 EST 2016:INFO:[email protected] 
Sun Nov 13 21:39:31 EST  2016:INFO:org.ma[email protected]74b9f5af 
+0

腳本運行正常,沒有錯誤。但日誌中沒有任何東西 – protea

+0

腳本中沒有日誌或打印語句。 – Rao

+0

我剛剛添加了一些打印語句。請參閱問題中的回覆,我剛編輯它。 – protea

回答

0

也許你應該做的事情與查詢結果

// instead of this 
st.executeQuery(sql) 

// do something like 
java.sql.ResultSet rs = st.executeQuery(query); 

,然後遍歷結果如此處所述https://docs.oracle.com/javase/tutorial/jdbc/basics/processingsqlstatements.html#processing_resultset_objects

while (rs.next()) { 
    String value = rs.getString("COLUMN_NAME"); 
    log.info("COLUMN_NAME:"+value) 
} 
+0

這非常有幫助。我的代碼現在可用。非常感謝:) – protea

相關問題