您的位置:首页 > 其它

Hibernate5.1.0的hello word

2016-04-29 08:22 295 查看
新建一个JavaProject(不一定非要web工程)

在工程里面新建一个文件夹lib,用来存放jar包



找到Hibernate的下载文件,解压后找到required文件夹,这是需要的jar包



添加到咱们建好的lib文件夹里面

Hibernate下载地址http://hibernate.org/orm/downloads/

还需要的就是jdbc驱动包    mysql-connector-java-5.1.37-bin.jar

下载地址http://www.mysql.com/products/connector/









现在写一个Java POJO类,也就是简单的getter,setter类啦





然后在Java类所在的包新建一个XXX.hbm.xml文件(这个需要Hibernate插件的支持,关于插件我有一篇有介绍)





再在src文件夹里建一个Hibernate.cfg.xml文件,这是配置文件,包含数据库的信息之类的

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>

<!-- 配置连接数据库的基本信息 -->
<property name="connection.username">数据库用户名</property>
<property name="connection.password">数据库密码</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/数据库名</property>

<!-- 配置Hibernate基本信息 -->
<!-- Hibernate所使用得数据库方言 -->
<property name="dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>

<!-- 执行操作时是否在控制台打印sql -->
<property name="show_sql">true</property>

<!-- 是否对sql进行格式化 -->
<property name="format_sql">true</property>

<!-- 指定自动生成数据表的策略 -->
<property name="hbm2ddl.auto">update</property>

<!-- 指定关联的.hbm.xml文件 -->
<mapping resource="com/biubiu/domain/UserInfo.hbm.xml"/>
<mapping class="com.biubiu.domain.UserInfo"/>

</session-factory>
</hibernate-configuration>


最后写一个测试类,测试方法为:

  @Test
public void test() {
//1.创建一个SessionFactory对象
SessionFactory seFactory = null;
final StandardServiceRegistry registry = new StandardServiceRegistryBuilder()
.configure() // configures settings from hibernate.cfg.xml
.build();
try{
seFactory = new MetadataSources( registry ).buildMetadata()
.buildSessionFactory();
} catch(Exception e){
StandardServiceRegistryBuilder.destroy( registry );
}

//2.创建一个Session对象

Session session = seFactory.openSession();

//3.开启事务
session.beginTransaction();
//4.执行操作

session.save(new UserInfo("1234@qq.com","测试",
"icuicu","0","img","tianmao"));

/*
//!!!!写hql语句,from 类名(区分大小写)
String hql = "from UserInfo";
@SuppressWarnings("unchecked")
List<UserInfo> list = session.createQuery(hql).list();
for(UserInfo u : list){
System.out.println(u);
}
*/
//5.提交事务
session.getTransaction().commit();
//6.关闭Session
session.close();
//7.关闭SessionFactory
seFactory.close();

}


一个是存数据,另外一个是取数据,注意注释起来了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: