要为项目添加Hibernate支持的话,hibernateX.jar是必须要导入的,相关的数据库驱动也要导入。然后hibernate提供的/lib下的required里面的包几乎也要导入。差一个antlr-xxx.jar没导入可以运行,不过既然都在required目录底下,还是乖乖的导入的好,免的又出啥恶心问题。Fuck一下李刚,书里写了只要导入两个包就可以(hibernate3.jar,mysql-connector-xxx.jar).这样出了一堆问题。
其次,hibernate.cfg.xml,xxx.hbm.xml要放在项目的scr目录下,别和类文件放同一个文件夹下,不然也要报错。
再次,运行项目要提供slf4j-nop-x.x.x.jar包,hibernate的lib下没有提供,要自己去下载。
这东西弄的我差点疯了,不晓得他是怎么成功的。只要导入两个包。。。,误人子弟!
附图:(一) 项目树形结构及其应用包(可见要引用多少!!!,少了一个就报异常):
(二)hibernate.cfg.xml内容
(三)POJO类的hbm映射xml文件
(四)POJO类,其中id的set方法设置成private,因为数据库里的id是自增类型主键,也不用修改。
(五)测试类
又发现一错误,插入中文的话,mysql里面是乱码.看看怎么弄先。
补充:错误已解决,MySQL配置里改成相应编码,建表的时候要设置编码。再就是项目要添加过滤器(如果是Web)的话,桌面应用的话,就写个字符过滤类,利用String.getByte()方法做相应的编码再转换。
【编辑推荐】