myeclipse反向生成实体类, java实体类与表字段匹配的问题
我现在oracle数据库有三张表,学校表里有老师表的外键,老师表中有学生的外键,现在我用myeclipse反向生成实体类的工具生成了三个实体对象School,Teache...
我现在oracle数据库有三张表,学校表里有老师表的外键,老师表中有学生的外键,现在我用myeclipse 反向生成实体类的工具 生成了三个实体对象School ,Teacher,Student ,三个对象的Id属性默认给的byte类型 , 表中我给的三个主键都是 id number(2) ,我手动将三个类中get/set 方法 byte类型改成了Integer 类型,改完之后我没有hbm2ddl.auto改成create ,因为表中有些数据 ,在做联合查询时 报出 LazyInitializationException:no session 的异常,是不是我还有哪些注解没有修改,望各路大神答疑解惑,小弟不胜感激!
展开
1个回答
展开全部
MyEclipse中把表反向生成实体类需要利用hibernate的逆向工程。
1、打开MyEclipse Database Explore视图
2、在空白区点击右键,新建一个数据库对象。
点击Add Jars,加入数据库的jar文件。
填写Connection Url: jdbc:mysql://localhost:3306/hibernatetab2pojo
用户名和密码:root
Driver name: com.mysql.jdbc.Driver
3、转回到Java视图,在项目上点击右键,选择MyEclipse-->add Hibernate Capabilities
4、然后下一步选中一个目录存放自动生成hibernate.cfg.xml文件,一般毫无例外的放在src根目录下,下一步选中我们第一步建立的那个数据库对象,然后下一步选中一个目录存放自动生成的HibernateSessionFactory工具类,这个hibernateSessionFactory工具类就是一个获取Session的单例,还有一些其它关闭session之类的方法。
5、转换到MyEclipse Database Explorer视图,打开我们的数据库:hibernatetab2pojo,展开表,选中所有表:
6、然后,点击右键,选择Hibernate Reverse Engineering。
7、选中:Create POJO<>,选中Create a Hibernate,选中Update Hibernate,接着下一步。
8、直接点击finish即可以生成实体类和相应的hbm.xml文件。并且hibernate.cgf.xml也会配置好。
1、打开MyEclipse Database Explore视图
2、在空白区点击右键,新建一个数据库对象。
点击Add Jars,加入数据库的jar文件。
填写Connection Url: jdbc:mysql://localhost:3306/hibernatetab2pojo
用户名和密码:root
Driver name: com.mysql.jdbc.Driver
3、转回到Java视图,在项目上点击右键,选择MyEclipse-->add Hibernate Capabilities
4、然后下一步选中一个目录存放自动生成hibernate.cfg.xml文件,一般毫无例外的放在src根目录下,下一步选中我们第一步建立的那个数据库对象,然后下一步选中一个目录存放自动生成的HibernateSessionFactory工具类,这个hibernateSessionFactory工具类就是一个获取Session的单例,还有一些其它关闭session之类的方法。
5、转换到MyEclipse Database Explorer视图,打开我们的数据库:hibernatetab2pojo,展开表,选中所有表:
6、然后,点击右键,选择Hibernate Reverse Engineering。
7、选中:Create POJO<>,选中Create a Hibernate,选中Update Hibernate,接着下一步。
8、直接点击finish即可以生成实体类和相应的hbm.xml文件。并且hibernate.cgf.xml也会配置好。
追问
谢谢, 对象我已经生成好了,但是查询是报出了异常,望大神指点迷津啊。。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询