Java 在一个列表中连接两个表
我想将两个表的内容合并到一个列表中。我是编程新手,正在从事一个学校项目。我需要两个表中的数据显示在应用程序的一个表中。当前代码可以工作,但如果数据库中有两行,则应用程序表将两行显示两次,如果有三行,则将显示九次,依此类推。我不想重复。我希望你能理解我的问题 我的模型中有:Java 在一个列表中连接两个表,java,mysql,sql,scenebuilder,Java,Mysql,Sql,Scenebuilder,我想将两个表的内容合并到一个列表中。我是编程新手,正在从事一个学校项目。我需要两个表中的数据显示在应用程序的一个表中。当前代码可以工作,但如果数据库中有两行,则应用程序表将两行显示两次,如果有三行,则将显示九次,依此类推。我不想重复。我希望你能理解我的问题 我的模型中有: public static ObservableList<archivesModel> takeArchives () { ObservableList<archivesModel> a
public static ObservableList<archivesModel> takeArchives () {
ObservableList<archivesModel> archives = FXCollections.observableArrayList();
try {
Base.connect();
PreparedStatement st= connection.prepareStatement("SELECT * FROM destination,rent");
ResultSet rs= st.executeQuery();
while (rs.next()) {
archivesModel z;
z = new archivesModel(
rs.getString(FIRST_DESTINATION),
rs.getString(LAST_DESTINATION),
rs.getInt(AMOUNT),
rs.getString(FIRST_DATE),
rs.getString(LAST_DATE));
archives .add(z);
}
Base.disconnected();
} catch (SQLException ex) {Logger.getLogger(archivesModel.class.getName()).log(Level.SEVERE, null, ex);
}
return archives;
}
publicstaticobserveListTakeArchives(){
ObservableList archives=FXCollections.observableArrayList();
试一试{
Base.connect();
PreparedStatement st=connection.prepareStatement(“从目的地选择*,租金”);
结果集rs=st.executeQuery();
while(rs.next()){
ArchivesZ模型;
z=新archivesModel(
rs.getString(第一个目的地),
rs.getString(最后一个目的地),
盖特卢比(金额),
rs.getString(第一个日期),
rs.getString(最后一天);
增加(z);
}
Base.disconnected();
}catch(SQLException ex){Logger.getLogger(archivesModel.class.getName()).log(Level.SEVERE,null,ex);
}
归还档案;
}
在我的控制器里我有
public void initialize(URL url, ResourceBundle rb) {
ObservableList<archivesModel> data = archivesModel.takeArchives();
first_destination.setCellValueFactory(new PropertyValueFactory<archivesModel, String>("first_destination"));
last_destination.setCellValueFactory(new PropertyValueFactory<archivesModel, String>("last_destination"));
amount.setCellValueFactory(new PropertyValueFactory<archivesModel, Integer>("amount"));
first_date.setCellValueFactory(new PropertyValueFactory<archivesModel, String>("first_date"));
last_date.setCellValueFactory(new PropertyValueFactory<archivesModel, String>("last_date"));
archivesRentTbl.setItems(data);
}
public void初始化(URL,ResourceBundle-rb){
ObservableList data=archivesModel.takeArchives();
first_destination.setCellValueFactory(新属性值工厂(“first_destination”);
last_destination.setCellValueFactory(新属性值工厂(“last_destination”);
金额。setCellValueFactory(新的PropertyValueFactory(“金额”);
first_date.setCellValueFactory(新属性值工厂(“first_date”));
last_date.setCellValueFactory(新属性值工厂(“last_date”);
ArchivesRentBL.setItems(数据);
}
< /代码> 你也需要考虑这两个表之间的关系。
假设两个表都有键“rent_id”,则可以使用以下sql查询连接这两个表:
SELECT * FROM destination a JOIN rent b ON a.rent_id = b.rent_id
你也需要考虑这两张表之间的关系。
假设两个表都有键“rent_id”,则可以使用以下sql查询连接这两个表:
SELECT * FROM destination a JOIN rent b ON a.rent_id = b.rent_id
这两个表之间有没有连接或关系?这两个表之间有没有连接或关系?