`

Hibernate 项目开放体会

    博客分类:
  • Java
 
阅读更多

今天开放项目 ,当query.list()的时候一下子蹦出 ,但是就是不报错,具体解决办法:

1:用上try catch e.printstack() 方法查看错误信息

2:发现没有默认的构造器 方法 ,

这是java的特性,如果不指定构造方法,编译器会给默认的,但是如果指定的话 ,没有默认的会很危险

3:使用hibernate是 必须给domain model指定默认构造方法

4:如果hql使用的不习惯的话 ,可以使用sql :

5:hibernate 中对实体的Integer 属性和 int属性 不明确,通过hql查询出来model 的id为integer属性 但是 实体中如果id为int型则会出现非法参数异常

技巧:

1:如果项目在某一处突然跳出并且控制台没有打印错误 , 则使用try catch e.printtrace()自己查看一场信息

 

 

hibernate使用注意:
1:使用hibernate一定要记住,给model实体一个无参构造方法,除非无有参构造方法 否则必须指定一个

 

 

hibernate对实体外键查询理解:

Query query2 = session.createQuery( "select emp from Emperor as emp where emp.dynasty.dynastyID=:dynastyID order by emp.emperorID asc ");

这需要特殊指定

emp.dynasty指的是dynasty的实体, 然而我们查询过来的确实给的dynastyId这个整形 ,由于hibernate是面向对象的 所以.后面的都是对象中的例子

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics