The method load(Class, Serializable) in the type Session is not applicable for the arguments (Class<

    Transaction transaction = session.beginTransaction(); 
//load是通过主键属性,获取对象的实例
Employee employee  =(Employee) session.load(Employee.class, 1);
         employee.setName("demo");
         transaction.commit();
         session.close();

报错The method load(Class, Serializable) in the type Session is not applicable for the arguments (Class<T>, int)

myeclipse明显的报错,这说明在myeclipse中jdk的自动拆装箱没有自动完成,但我的jdk用的是java8的。

使用

    Transaction transaction = session.beginTransaction(); 
//load是通过主键属性,获取对象的实例
 Employee employee  =(Employee) session.load(Employee.class, new Integer(1));
         employee.setName("demo");
         transaction.commit();
         session.close();

就行了,网上找了下,发现这应该是hibernate版本的问题,在hibernate中的操作,要看你引用的hibernate版本本身是否支持自动拆装。

应该是hibernate本身不允许这么做,所以才必须要写成对象类型才能进行查询,这和jdk已经无关了。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。