0
내 GUI에는 "검색"메뉴 항목이 있으며 Faculty 테이블의 ssn 번호를 검색하여 javabook 데이터베이스의 TextArea로 인쇄해야합니다. 그러나, 난 단지 15 행을 가지고 테이블의 마지막 행을 얻을. 다음은 searchDB 메소드를 호출하는 Search menuItem입니다.javabook 데이터베이스의 TextArea에 표의 모든 행을 인쇄하십시오.
MenuItem search = new MenuItem("Search");
search.setOnAction((ActionEvent t) -> {
try{
searchDB(tArea);
}
catch(Exception ex){
ex.printStackTrace();
}
});
다음은 searchDB 메소드입니다.
public void searchDB(TextArea tArea) throws SQLException, ClassNotFoundException {
if (databaseName != null) {
TextInputDialog dialog = new TextInputDialog();
dialog.setContentText("Please enter Faculty ssn number follwing by %");
Optional<String> search_id = dialog.showAndWait();
try {
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/" +databaseName+ "?autoReconnect=true&useSSL=false", "scott", "tiger");
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("select * from Faculty where ssn like '" + search_id.get() + "';");
while (resultSet.next())
tArea.setText(resultSet.getString(1) + "\t" + resultSet.getString(2) + "\t" + resultSet.getString(4) + "\t" + resultSet.getString(5));
}catch(Exception ex){
ex.printStackTrace();
}
}
}
왜 테이블의 마지막 행만 가져올 수 있습니까? 및 TextArea 테이블의 모든 행을 인쇄하는 방법?
[appendText()'] (https://docs.oracle.com/javase/9/docs/api/javafx/scene/control/TextInputControl.html#appendText-java.lang.String)이라고 생각합니다. -) ('JTextArea'에 대한 문서를 링크했다.). –
@James_D 예 appendText()가 가치가 떨어지는 append(), 대신 TextArea를 가리키는 링크를 업데이트했습니다. 감사합니다. – johnII
더 이상 사용되지 않습니다. 이제 당신은'java.awt.TextArea'를 링크하고 있습니다 –