hibernate 简介
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
——-来自百度百科
使用 hibernate 连接数据库的过程
下面我们以建立一个 User 类和数据库表 user (userId, userName, userPwd) 为例介绍构建过程
新建数据库表
1 2 3 4 5 6 7 8
| create database test; use test; create table user( userId int not null auto_increment, userName char(30), userPwd char(30), primary key(userId) );
|
新建 Java 项目
假设 Java 项目的名字为 Test.


Myeclipse连接mysql数据库
打开数据库透视图


新建并打开连接



新建 hibernate 连接





建立映射文件





此时 Myeclipse 会自动建立相应的可持久化类。

最后写个测试类,测试一下效果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| package test; import java.util.List; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.Transaction; import model.User; import util.HibernateSessionFactory;
public class Test { public static void main(String[] args){ Session session = HibernateSessionFactory.getSession(); Transaction ts = session.beginTransaction(); User user = new User(); user.setUserName("DATASOURCE"); user.setUserPwd("123456"); session.save(user); ts.commit(); System.out.println("success"); String sql = "from User as u where u.userName = ?"; Query query = session.createQuery(sql); query.setString(0, "DATASOURCE"); List list=query.list(); User user1 = (User)list.get(0); System.out.println(user1.getUserName()); HibernateSessionFactory.closeSession(); } }
|