城管希 - -! 又来讲Hibernate了

HQL语句查询

                // 使用HQL查询表的所有记录Session session = HibernateUitl.getOpenSession();Transaction transaction = session.beginTransaction();String hql = "from com.lanou3g.User";Query query = session.createQuery(hql);// 预见结果集 // (多个就用list处理 单个就用 uniqueResult)List list = query.list();System.out.println(list);transaction.commit();session.close();

使用问号占位符

//使用HQL查询所有记录  
Session session = HibernateUtil.getOpensession();  
Transaction transaction = session.beginTransaction();  
//使用问号占位符替代  
String hql = "from com.lanou3g.User where id = ?";  
Query query = session.createQuery(hql);  
//从0开始  
query.setParameter(0, 2);  
User user = query.uniqueResult();  
transaction.commit();  
session.close();  

使用冒号占位符

//:后面是占位符的名字  
//注意:冒号后面不要加空格  
//替换时 直接使用名字即可  
String hql = "from com.lanou3g.User where username = :username and password = :password";  
Query query = session.createQuery(hql);  
query.setParameter("username", "wanglong");  
query.setParameter("password", "123");  
User user = query.uniqueResult();  

使用hql分页查询

String hql = "from User";  
Query query = session.createQuery(hql, User.class);  
query.setFirstResult(0);  
query.setMaxResults(2);  
List list = query.list();  
如何配置多表xml文件
1.一对多
name表示实体类对象属性名
column:两张表联系的外键
注意:外键名要一致 否则会多建一个外键

class 与哪个类进行一对多

      
/set>     
2.多对一
name表示多对一对象的属性名
class表示的是多对一对象的类
column表示的是外键

注意:在property中配置不要重复配置外键

 
  
3.多对多
name 容器名字
table 中间表的名字
column 中间表引用的id
class 对应的那个表的类名 
column  对应那个表的外键
[html] view plain copy
      
  


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部