加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Hibernate addEntity方法:将别名和实体类联系

发布时间:2020-12-15 02:39:42 所属栏目:Java 来源:网络整理
导读:addEntity 方法用于将 SQL 表的别名和实体类联系起来,并确定查询结果集的形态。 语法1 addEntity(Class entityClass) 参数说明: entityClass:用于指定实体类。 返回值:SQLQuery 对象的示例。 示例 通过本地 SQL 查询,查询全部的用户信息,关键代码如下:
addEntity 方法用于将 SQL 表的别名和实体类联系起来,并确定查询结果集的形态。

语法1

addEntity(Class entityClass)

参数说明:
  • entityClass:用于指定实体类。

返回值:SQLQuery 对象的示例。

示例

通过本地 SQL 查询,查询全部的用户信息,关键代码如下:
Session session = sessionFactory.openSession();  //定义Sesssion对象
String sql = "select*from tb_user";  //定义查询tb_user表对象
List list = null;
List rtnList = new ArrayList();  //定义保存查询结果的List对象
try{
  SQLQuery query = session.createSQLQuery(sql);
  query.addEntity(UserForm.class);  //绑定实体类
  list = query.list();  //执行查询语句获取查询结果集
}catch(Exception e){
  System.out.println("查询用户信息时的错误信息:"+e.getMessage());
}

在上面的代码中,如果不应用 addEntity 方法也可实现 SQL 查询,但返回的结果集对象为 Object 数组。

语法2

addEntity(String alias,Class entityClass)

参数说明:
  • alias:用于为实体类指定别名。
  • entityClass:用于指定实体类。

返回值:SQLQuery 对象的示例。

示例

通过本地 SQL 查询,查询用户名为 wgh 的用户信息,此时指定实体类的别名为 u,关键代码如下:
Session session=sessionFactory.openSession();  //定义Session对象
String sql = "select{u.*}from tb_user u where u.username='wgh'";  //定义查询语句
List list = null;
List rtnList = new ArrayList();  //定义保存查询结果的集合对象
try{
  SQLQuery query = session.createSQLQuery(sql);  //执行查询语句
  query.addEntity("u",UserForm.class);  //绑定数据表与实体类
  list = query.list();//执行查询语句
}catch(Exception e){
  System.out.println("查询用户信息时的错误信息:"+e.getMessage());
}

语法3

addEntity(String entityName)

参数说明:
  • entityName:为表示实体类的字符串(这里需要指定对应的包)。

返回值:SQLQuery 对象的示例。

示例

通过本地 SQL 查询,查询用户名为 sk 的用户信息,关键代码如下:
Session session = sessionFactory.openSession();  //创建Session对象
String sql = "select*from tb_user where username='sk'";  //定义查询语句
List list = null;
List rtnList = new ArrayList();  //定义保存查询结果的集合对象
try{
  SQLQuery query = session.createSQLQuery(sql);
  query.addEntity("com.model.UserForm");  //绑定实体类
  list = query.list();
}catch(Exception e){
  System.out.println("查询用户信息时的错误信息:"+e.getMessage());
}
参数说明:
  • alias:用于为实体类指定别名。
  • entityName:表示实体类的字符串(这里需要指定对应的包)。

返回值:SQLQuery 对象的示例。

示例

通过本地 SQL 查询,查询用户名为 wgh 的用户信息,关键代码如下:
Session session = sessionFactory.openSession();  //定义Session对象
String sql = "select{u.*}from tb_user u where u.username='wgh'";  //定义查询语句
SQLQuery query = session.createSQLQuery(sql);  //执行查询
query.addEntity("u","com.model.UserForm");  //绑定参数
List list = query.list();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读