1.构建数据库连接

2.新建maven项目,利用工具生成hibernate相应的类和xml文件

新建pojo包

右击项目 点击Configure Facets 选择hibernate

选择包

选择驱动

选择jar包

3.数据库反向生成类和xml文件

pom.xml添加mysql的驱动包

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>

4.使用junit创建测试类

package com.hwua.test;

import java.io.Serializable;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.junit.Test; import com.hwua.pojo.Emps; public class Test1 {
@Test
public void save(){
//1.读取配置文件
//1.1 configure()方法,默认加载src目录下的hibernate.cfg.xml
Configuration cfg=new Configuration().configure(); //1.2如果配置文件不符合加载规则,可以使用以下两种方式加载
//Configuration cfg=new Configuration().configure(file);
//Configuration cfg=new Configuration().configure(path); //1.3可以使用Configuration对象加载映射文件(不推荐)
//cfg.addClass(Emps.class);
//推荐hibernate.cfg.xml 使用mapping属性引入配置文件(自动生成类的时候已经引入) //2.创建SessionFactroy对象
//SessionFactory 创建session的工厂
SessionFactory factory=cfg.buildSessionFactory(); //3.获取session对象
//3.1 获得一个全新的session;
Session session=factory.openSession();
//3.2 获得当前的session,本地线程绑定的session,没有session的时候创建一个新的
//Session currentSession = factory.getCurrentSession(); //4.操作数据库
Emps emp=new Emps();
emp.setEname("Tom");
emp.setAge(20);
emp.setSex("男");
emp.setDeptno(30);
emp.setSalary(10000);
session.save(emp); //5.关闭资源
session.close();
factory.close();
}
}

5.相关属性介绍

5.1主键生成策略:

http://www.cnblogs.com/flyoung2008/articles/2165759.html

5.2 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">
<!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration> <session-factory> <property name="myeclipse.connection.profile">mysql_test</property>
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<property name="connection.password">oracle</property>
<property name="connection.username">root</property>
<property name="connection.url">
jdbc:mysql://localhost:3306/test
</property>
<property name="connection.driver_class">
com.mysql.jdbc.Driver
</property> <!-- 自动生成表结构 -->
<property name="hbm2ddl.auto">update</property> <!-- 将session与线程绑定, 只有配置了该配置,才能使用currentSession-->
<property name="hibernate.connection.autocommit">thread</property>
<property name="show_sql">true</property>
<property name="format_sql">true</property> <mapping resource="com/hwua/pojo/Locs.hbm.xml" />
<mapping resource="com/hwua/pojo/Depts.hbm.xml" />
<mapping resource="com/hwua/pojo/Emps.hbm.xml" /> </session-factory> </hibernate-configuration>

hibernate在maven中自动生成的更多相关文章

  1. hibernate从数据库中自动生成

    计应134(实验班) 李佳鸿 DB Brower配置 1.依次选择window-Open Perspective-MyEclipse Explorer

  2. 在 Linux 中自动生成 Cordova/Phonegap for Android 的 APK 安装程序

    在 Linux 中自动生成 Cordova/Phonegap for Android 的 APK 安装程序 本贴首发于: http://xuekaiyuan.com/forum.php?mod=vie ...

  3. IntelliJ IDEA 中自动生成 serialVersionUID 的方法

    as, idea plugin中搜如下关键字,并安装该插件: GenerateSerialVersionUID 如上图所示,创建一个类并实现Serializable接口,然后按alt+Enter键,即 ...

  4. 在PowerDesigner中自动生成sqlserver字段备注

    在PowerDesigner中自动生成sqlserver字段备注 PowerDesigner是数据库设计人员常用的设计工具,但其自生默认生成的代码并不会生成sqlserver数据库的字段备注说明.在生 ...

  5. 二十四、详述 IntelliJ IDEA 中自动生成 serialVersionUID 的方法

    当我们用 IntelliJ IDEA 编写类并实现 Serializable(序列化)接口的时候,可能会遇到这样一个问题,那就是: 无法自动生成serialVersionUID. 而serialVer ...

  6. eclipse中自动生成注释

    eclipse中自动生成注释 包前缀设置的地方 注释模板设置的地方 Eclipse自动生成方法注释 快捷键 自动生成方法的注释格式,例如 /*** @param str* @return* @thro ...

  7. Eclipse中自动生成get/set时携带注释给get/set

    Eclipse中自动生成get/set时携带注释给get/set   编码的时候通常要用到 JavaBean ,而在我们经常把注释写在字段上面,但生成的Get/Set方法不会生成,通过修改Eclips ...

  8. 从JSON中自动生成对应的对象模型

    编程的乐趣和挑战之一,就是将体力活自动化,使效率成十倍百倍的增长. 需求 做一个项目,需要返回一个很大的 JSON 串,有很多很多很多字段,有好几层嵌套.前端同学给了一个 JSON 串,需要从这个 J ...

  9. maven intall在target文件夹中自动生成的war包部署服务器时缺斤少两

    1.问题描述,本地改动特别大或者升级系统操作,打war包部署服务器上程序时候,页面或者后台总是报错,原因就是比本地少东西. 2.问题排查解决:maven clean然后maven intall在tar ...

随机推荐

  1. HDU 5174

    题意有点不明白,因为MAX为int最大值,推测为64位,AC #include <cstdio> #include <iostream> #include <cstrin ...

  2. Cloud Foundry中DEA与warden通信完毕应用port监听

    在Cloud Foundry v2版本号中,DEA为一个用户应用执行的控制模块,而应用的真正执行都是依附于warden. 更详细的来说,是DEA接收到Cloud Controller的请求:DEA发送 ...

  3. Ralink5350开发环境搭建

    一.安装虚拟机(Oracle VM VirtualBox  或 VMware Workstation) 二.在虚拟机中安装linux操作系统(当前使用的是Ubuntu1204桌面版) 三.配置linu ...

  4. luogu1920 成功密码

    题目大意:给出x∈(0,1)以及n∈(0,1e18),求sum foreach i(1<=i<=n) (x^i/i)保留四位小数的值. 用快速幂暴力求.考虑到题目只要求保留四位小数,而随着 ...

  5. php中一个经典的!==的用法

    php中一个经典的!==的用法 <?php $str = 'Every time you bleed for reaching greatness.'; $cha = 'E'; if(strpo ...

  6. 高效管理 Elasticsearch 中基于时间的索引——本质是在利用滚动模式做数据的冷热分离,热索引可以用ssd

    高效管理 Elasticsearch 中基于时间的索引 转自:http://stormluke.me/es-managing-time-based-indices-efficiently/ 用 Ela ...

  7. 深入理解groupByKey、reduceByKey区别——本质就是一个local machine的reduce操作

    下面来看看groupByKey和reduceByKey的区别: val conf = new SparkConf().setAppName("GroupAndReduce").se ...

  8. Polyfill 与 Shim

    Polyfill 与 Shim polyfill 的概念是 Remy Sharp 在2010年提出的. polyfill,或 polyfiller ,表示为开发人员提供旧浏览器没有原生支持的较新功能的 ...

  9. BZOJ 1531 二进制优化多重背包

    思路: 讲道理我应该写单调队列优化多重背包的 但是我不会啊 但是我现在! 还不会啊 我就写了个二进制优化的.. 过了 //By SiriusRen #include <cstdio> #i ...

  10. delphi 用idhttp做web页面数据抓取 注意事项

    这里不讨论webbrowse方式了 .直接采用indy的 idhttp  Get post 可以很方便的获取网页数据. 但如果要抓取大量数据 程序稳定运行不崩溃就不那么容易了.这几年也做了不少类似工具 ...