Xpage의 MySQL 데이터베이스에서 값을 가져 오기 위해 Java 클래스를 작성했습니다. 코드는 Xpage에서 java를 사용하여 mysql에서 값을 가져 오는 것이 누락되었습니다
package com.vijay;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Test {
String name;
String caty;
float price;
private Connection con;
private Statement st;
private ResultSet rs;
public String test(){
return "This is a class with just a single method";
}
public Test(){
}
public void db(){
try {
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/vijay","root","");
st=con.createStatement();
st.executeQuery("select * from prodet;");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
this.getMethod();
}
public void getMethod(){
try {
while(rs.next()){
name=rs.getString("name");
price=rs.getFloat("price");
caty = rs.getString("caty");
}
con.close();
st.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
나는 심지어 내가 너무 생성자에서이 두 방법을 넣어 SSJS
var v = new com.vijay.Test();
v.db();
v.getMethod();
return v.name;
으로 그 값을 페이지에 라벨을 부착하고 계산 된 것이다. 그러나 작동하지 않습니다.
어디에 놓칠 수 있습니까?
ResultSet에 결과가 포함되어 있습니까? 즉, rs.next()가 true를 반환합니까? SSJS 코드를 try..catch 블록으로 래핑하면 또 다른 오류 메시지가 나타 납니까? –
예. catch 블록 (ssjs)에서 제공 한 명령문을 반환했습니다. – VijayaRagavan
결과 집합 개체에 st.execute() 값을 할당하면이 오류가 발생합니다. 그것은 rs = st.execute (query)이어야합니다; – VijayaRagavan