Hibernate5.1.0的hello word

新建一个JavaProject(不一定非要web工程)

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

Hibernate5.1.0的hello word

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

Hibernate5.1.0的hello word

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

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

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

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

Hibernate5.1.0的hello word

Hibernate5.1.0的hello word

Hibernate5.1.0的hello word

Hibernate5.1.0的hello word

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

Hibernate5.1.0的hello word

Hibernate5.1.0的hello word

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

Hibernate5.1.0的hello word

Hibernate5.1.0的hello word

再在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(); }

一个是存数据,另外一个是取数据,注意注释起来了

上一篇:【python数据分析实战】电影票房数据分析(二)数据可视化


下一篇:【Python项目实战】Pandas:让你像写SQL一样做数据分析(一)