请大侠帮我理解一下Hibernate误区--初学者,万分感谢
我想在java-web工程下,应用Hibernate,我数据库里没有表。
实例:
我建了个注册页面,输入用户名,密码,性别。点击提交,想通过hibernate存进表里。
问题来了,我是先创建一个表吗?
我点击提交--到一个类里
类中执行hibernate 建表,存储代码吗?那也不能每次提交都建表啊?
我类里的思路
Session session=null;
User user=new User();
user.setname(name);
...
user.setsex(sex);
session=Hibernate.getSession();//Hibernate是我自己建的类,返回 factory.openSession();
Hibernate.creattable();//我是在这里把表建上吗?还是在编写程序前,先建表啊?
session.beginTransaction();
session.save(registrationForm);
session.getTransaction().commit();
------解决方案--------------------hibernate建表 是在配置文件里面有个hibernate.hbm2ddl.auto配置的
比如hibernate.hbm2ddl.auto=create 每次都重建
hibernate.hbm2ddl.auto=update 只重建更新的或新增的
一般用update就可以了
如果hibernate单用的话,你加载hibernate的配置文件的时候就建表了
如果是和spring整合了,是你spring容器开启了 就会加载hibernate的配置文件,也就会建表了
------解决方案--------------------