Spring,MySQL和hibernate在一个模型中连接表

时间:2012-09-05 18:24:34

标签: java spring hibernate spring-webflow

Spring,MySQL和hibernate在一个模型中连接表

我正在开发一个Spring,MySQL和Hibernate项目,这是该公司第一次要求我在java代码中连接表。

在传递中我编写如下代码来从Hibernate获取列表数据:

return (List<NameID_lookupModel>) sessionFactory.getCurrentSession()
                .createCriteria(NameID_lookupModel.class)
                .addOrder( Order.asc("Name"))
                .list();

但是在这个新项目中,我将从多个表中阅读,所以我需要帮助我正确设置我的模型。

我的表格看起来像这样

表a,col 1和col 2 表b,col 1和col 2 表c,col 1和col 2

我必须在表A中选择表B col1中的col 2,然后将表b col2连接到表c col 1.

我如何在java模型中执行此操作?

1 个答案:

答案 0 :(得分:0)

我看到了两种解决问题的方法:

  • 使用数据库中的视图并将您的类映射到视图
  • 使用SQL hibernate查询并将结果作为您要使用的模型类的实例(在您的示例中将映射表A的内容);例如:

    SQLQuery query = sessionFactory.getCurrentSession().createSQLQuery("SQL THAT YOU WANT TO USE WITH THE JOINS AND WHERE"); query.addEntity(LookupMappedModel.class); List<LookupMappedModel> result = (List<LookupMappedModel>)query.list();

您可以在此处找到更多示例:Hibernate - Using a Native SQL