Hibernate中session.load()方法报错
- Java code
Session session = sessionFactory.openSession(); Transaction transation = session.beginTransaction(); //获取需要修改的用户Employee emp = (Employee)session.load(Employee.class, 2);
如果我只有直接写int类型,就会报错,但是如果更改为Integer类型的实例就可以,代码如下
- Java code
Session session = sessionFactory.openSession(); Transaction transation = session.beginTransaction(); //获取需要修改的用户Employee emp = (Employee)session.load(Employee.class, new Integer(2));
为什么会出现这样的情况?不是可以自动拆箱装箱的吗?我用的jdk 是1.7的
[解决办法]
把异常贴出来呗
[解决办法]
程序没有直接在eclipse里显示语法错误,那说明自动拆装箱是ok的。
但具体到在hibernate中的操作,那要看你引用的hibernate版本本身是否支持自动拆装了。
应该是你的hibernate本身不允许这么做,所以你才必须要写成对象类型才能进行查询,这和jdk已经无关了
[解决办法]
用int试了一下,好用。
LZ最后把异常贴出来
[解决办法]
[解决办法]
LZ的JDK不支持自动拆装箱
[解决办法]
当然要用Integer了。。