在eclipse中创建JavaWeb项目,并集成Hibernate框架的基本步骤:
首先在eclipse中需要安装相应的插件,这里使用的是JBoos插件:JBoss-Tools,具体的安装方法参照:http://jingyan.baidu.com/article/a24b33cd695bbe19fe002bd7.html
总结一下安装步骤:打开插件搜索界面,输入插件名称,选择合适的插件进行安装。
这里使用maven创建项目,对于初学者来说在学习编程语言的同时应该学会编辑工具的使用,在学习完Hibernate会拿出专门的时间来学习编辑工具的使用(在此提醒自己,不要忘了)。maven插件(可以到官网进行下载安装):apache-maven-3.0.5 百度云盘http://pan.baidu.com/s/1c1lcTEC 密码:qzez;
接下来就可以创建项目了,右键New>other>maven project>next>maven-archetype-webapp>next,创建之后的项目结构如图:
报错:
Description Resource Path Location Type
The superclass"javax.servlet.http.HttpServlet" was not found on the Java Build Path index.jsp /hibernateDemo/src/main/webapp line 1 JSPProblem
在我的项目里错误的原因是JRE版本不一致,更换一个就可以了。
测试web项目是否创建成功开启服务器,本地使用的是jetty服务器,浏览器输入http://localhost:8080/index.jsp,出现helloworld页面,项目创建成功。
接下来就是要在项目中集成Hibernate。只需要在pom.xml中加入依赖包就可以了,首先需要的是Hibernate的jar包,需要连接数据库,所以还需要数据库的jar包,本地使用的是MySQL数据库。需要进行的操作就是将下面的代码贴入文件中:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.28</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.2.21.Final</version>
</dependency>
可能需要更改版本,个人需要的版本依赖代码可以在https://repository.jboss.org/nexus/index.html#welcome 中搜索,需要一个账户,可以自己进行申请。
然后右键>maven>update Project之后就可以在项目中看到数据库和Hibernate的jar包了:
项目右键>new>hibernate>
点击next,选择好项目的根目录(一般不需要更改的)填写好方言,驱动,url,username,password等信息之后finish就可以看到Hibernate的配置文件已经生成好了
由于是学习用,在配置文件中加入显示sql语句的配置:
<property name="show_sql">true</property>
<property name="format_sql">true</property>
这个时候该项目中就已经成功的集成了Hibernate框架,新建实体类、生成映射文件,数据库中创建对应的数据库,以及表之后进行测试
在Hibernate主配置文件中加入实体类映射文件<mapping resource="hibernate/models/Test.hbm.xml"/>
创建测试类:
public class HibernateTest {
public static void main(String[] args) {
Test t = new Test();
t.setName("测试");
saveTest(t);
}
public static String saveTest(Test test){
Session session = null;
Transaction tx = null;
Object obj = null;
try {
session = HibernateUtil.getSession();
tx = session.beginTransaction();
obj = session.save(test);
} catch (Exception e) {
if (tx != null){
tx.rollback();
}
} finally {
tx.commit();
session.close();
}
return obj.toString();
}
}
运行测试方法,可以在控制台看到打印出来的sql语句,此时集成了Hibernate的JavaWeb就创建好了。
在实体类的创建和映射文件的创建时可以使用反向工程来替代手写。步骤如下:、
删除刚才新建的实体类及配置文件以及在Hibernate主配置文件中添加的<mapping>标签。
在eclipse中创建数据库连接:
window-->show View-->Data Source Explorer,然后在Database Connections右键> New>MySQL
点击测试连接出现ping success字样数据库连接创建成功,可以在数据库连接视图中看到一个连接:
在该连接中可以看到数据库中的表(此时数据库和eclipse编辑器就关联起来了,eclipse中有了数据库的数据之后就能在编辑器中使用这些数据,自动的生成实体类、映射文件,甚至是将映射文件配置到hibernate.cfg.xml中<这个功能需要其它的插件支持>)
根据表生实体类以及配置文件:
window-->Open Perspective-->other-->Hibernate;配置Hibernate Code Generation Configurations;新建一个Hibernate Code Configutaion
或是直接双击Hibernate Code Generation也会出现新建页面,填写好必要的信息后点击run看到实体类和映射文件已经生成好了。