Я заполнил поле со списком в javafx с записями базы данных. Теперь проблема в том, что когда я получил объект Id , выбрав элемент поля со списком. Я пытаюсь извлечь весь объект из базы данных по Id и установить значения объекта для других полей.
но после выполнения запроса я получил комбинированное окно выбранное значение V1 или V2 вместо объекта
вот мой код
tcVersion.getSelectionModel().selectedItemProperty().addListener((obs, oldVal, newVal)
int id=tcVersion.getSelectionModel().getSelectedItem().getId();
TestCase tCase=testCaseDao.getTestCase(id);
priorityCB.setValue(tCase.getTestCasepriority());
stateCB.setValue(tCase.getTestCaseState());
automatedStatusCB.setValue(tCase.getTsmAutomatStatus());
});
Здесь строка first дает мне Id объекта, но в строке 2nd он не получает
объект из базы данных. Есть ли способ достичь этого. Спасибо
TestCaseDao
public class TestCaseDao extends JdbcDaoSupport implements TestCaseDao {
public TestCase getTestCase(int tcId) {
String getTestCaseSql = "select * from cmatrix_testcase_mapping where tsm_key=?"
return getJdbcTemplate().queryForObject(getTestCaseSql, new RowMapper<TestCase>() {
@Override
public TestCase mapRow(ResultSet rs, int rownumber) throws SQLException {
TestCase testCase = new TestCase();
try {
testCase.setTestCaseId(rs.getInt("tsm_key"));
testCase.setArea_key(rs.getInt("tsm_apa_key"));
testCase.setTestCaseName(rs.getString("tsm_name"));
testCase.setParentKey(rs.getString("tsm_parent_key"));
testCase.setTsmAutomatStatus(rs.getString("tsm_automat_status"));
testCase.setTestCasepriority(rs.getString("tsm_priority"));
testCase.setTestCaseState(rs.getString("tsm_state"));
testCase.setTestType(rs.getString("tsm_test_type"));
} catch (Exception e) {
System.out.println(e.getMessage());
}
return testCase;
}
}, tcId);
}
}