ORM:就是对象关系映射关系。
2 如何在eclipse里面搭建hibernate环境?
第一步:打开eclipse 选择最上方的工具栏选择 File-New-Maven project创建一个新的项目,其中中Catalog:Interal和 选择 maven-archetype-webapp 1.0. 然后写上这个项目的名称。
第二步:打开pom.xml,把里面的junit 的版本改成4.12的,然后在去Maven 依赖里面把MYSQL,Hibernate,的包都下载(在有网的情况下下载)。
第三步:把隐藏的包都显示出来,点击项目右键,找到buid Path-configure buid Path 选择Soure 把最下方的勾去掉,就可以显示隐藏的包,
第四步:在src/main/resourse 里面创建 hibernate.cfg.xml ,注意在创建的时候选择5.2,NEW一个连接数据库的地址。
第五步:在hibernate.cfg.xml里面写上<property name="show_sql">ture</property/>(显示sql语句),<property name="format_sql">ture</property/>(格式化sql语句)。<mapping resouce="实体类的hbm.xml的全限定名">
第六步:创建实体类,和实体类的hbm.xml,(里面需要改表名)在hibernate.cfg.xml 写上映射,就是实体类的hbm.xml的全限定名,
第七步:创建Temp类来测试与数据库的连接,
然后在写crud 的方法:
package com.zking.test;
import java.util.List;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import com.zking.entity.Users;
public class Text {
Configuration configuration=null;
SessionFactory sessionFactory=null;
Session session=null;
Transaction transaction=null;
@Before
public void before() {
configuration=new Configuration().configure();
sessionFactory=configuration.buildSessionFactory();
session=sessionFactory.openSession();
transaction=session.beginTransaction();
}
@After
public void after() {
//提交数据
transaction.commit();
//关闭session
session.close();
//关闭sessionFactory
sessionFactory.close();
}
//增加的方法
@Test
public void add() {
Users users=new Users();
users.setUname("WWW");
users.setUpwd("123456");
session.save(users);
}
//编辑的方法
@Test
public void edit() {
Users us=session.get(Users.class, "3b73b230-a118-11e8-8719-54e1ada2ecc3");
us.setUname("admins");
session.update(us);
}
//移除的方法
@Test
public void remove() {
Users us=session.get(Users.class, "W_18");
session.delete(us);
}
//显示所有数据的信息
@Test
public void list() {
List<Users> lu=session.createCriteria(Users.class).list();
lu.forEach(x->System.out.println(x));
}
}
运行的结果如下:
增加的方法
Hibernate:
insert
into
t_users
(uname, upwd, uid)
values
(?, ?, ?)
编辑的方法
Hibernate:
select
users0_.uid as uid1_0_0_,
users0_.uname as uname2_0_0_,
users0_.upwd as upwd3_0_0_
from
t_users users0_
where
users0_.uid=?
移除的方法
delete
from
t_users
where
uid=?
查询所有的方法
select
this_.uid as uid1_0_0_,
this_.uname as uname2_0_0_,
this_.upwd as upwd3_0_0_
from
t_users this_
Users [uid=3f143a3f-a102-11e8-90e1-54e1ada2ecc3, uname=jackon, upwd=192454]
Users [uid=3b73b230-a118-11e8-8719-54e1ada2ecc3, uname=admins, upwd=666666]
Users [uid=ff80808165a50e620165a50e64180000, uname=limt, upwd=12345]
Users [uid=ff80808165a51f270165a51f29020000, uname=limtmm, upwd=99999]
Users [uid=W_19, uname=WWW, upwd=123456]
以上就是我的一些见解,如有不足!请多多指教!