[英]How to get result from query with multiple classes in simple java without using hql,jpql query
當我們在java中創建jpql查詢時,如下所示選擇a。 ,b。 來自a,b,c的c。*,其中a.id = b.id和b.id = c.id
結果是對象數組的列表,所以第一個數組是表的值,第二個是b表的值
我的問題是,當我們在sql中編寫相同的查詢時,結果是什么,以及如何獲取每個表的值。
通常,您需要對不同的數據運行不同的查詢。
來自數據庫的信息具有ResultSet的形式 。 ResultSet具有不同的字段。
例:
PreparedStatement preparedStatement =
PersistenceProvider.getInstance().prepareStatement("select a.*, c.* from actor a left join city c on ...");
ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()){
ActorBean actorBean = new ActorBean();
actorBean.setActorId(resultSet.getInt("actor_id"));
actorBean.setFirstName(resultSet.getString("first_name"));
actorBean.setLastName(resultSet.getString("last_name"));
actorBean.setLastUpdate(resultSet.getTimestamp("last_update"));
actorBeanList.add(actorBean);
CityBean cityBean = new CityBean();
cityBean.setCityId(resultSet.getInt("city_id"));
cityBeanList.add(cityBean);
}
您可以創建不同類的實例,並將取自ResultSet的值放在這些等距中。
在上面的示例中,您不必總是創建ActorBean實例,也可以創建其他類的實例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.