本人写了一个根据数据库id值获取某行记录的方法:static User getUser(int id) {
Session session = null;

try {
session = HibernateUtil.getSession();
User user = (User)session.get(User.class, id);
return user;
} finally {
if(null != session) {
session.close();
}
}
}
我的意思很明确, 就是根据用户传入的id值来获得某行的记录信息. 
当写完以上代码后, MyEclipse却出现了一个错误提示: 它说我的 id 应该为Serializable类型, 而不应该是int类型的.
我晕, 那我这段代码岂不是废了? 
麻烦大家帮我看看出错在什么地方, 谢谢!

解决方案 »

  1.   

    可能是JDK版本问题,你改一下最新的版本,如果不行的话,就这样写:
      User user = (User)session.get(User.class, new Integer(id));
    这样就可以了!
      

  2.   

    另外,说一下,Serializable是序列化接口,基本数据类型都实现了此接口,如:Integer,Double,String等,放入一个Serializable类型的值作为主键,这样做的好处是,无论主键是自增长型的(如:int),还是String型的都可以获取到对象!