1 下载hibernate-3.6.0 Final.zip到任意目录,解压缩后得到hibernate目录

2 下载slf4j-1.7.13.zip到任意目录,解压缩后得到slf4j-1.7.13

3 在test库中创建student表

msql -localhost -u root –p

use test

create table student(NO char(20),name varchar(20),primarykey(NO));

4 创建一个名为HibernateDemo的JavaProject

5 添加包

添加hibernate\jar中的所有包

添加slf4j-1.7.13中的slf4j-nop-1.7.13.jar

添加MySQL的驱动程序mysql-connector-Java-5.1.38-bin.jar

6添加两个配置文件和两个类

Hibernate.cfg.xml

Student.java

Student.hbm.xml

Test.java

(1)在src目录下添加目录下添加hibernate.cfg.xml

  1. <!DOCTYPE hibernate-configuration PUBLIC
  2. "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
  3. "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
  4. <hibernate-configuration>
  5. <session-factory>
  6. <!--程序执行的时候是否显示真正的sql语句-->
  7. <property name="show_sql">true</property>
  8. <!--使用的SQL对应的“方言”,此处是Oracle11的“方言”-->
  9. <property name="dialect">org.hibernate.dialect.MySQLInnoDBDialect
  10. </property>
  11. <!--连接数据库的Driver-->
  12. <property name="connection.driver_class">
  13. com.mysql.jdbc.Driver
  14. </property>
  15. <!--数据库连接url-->
  16. <property name="connection.url">
  17. jdbc:mysql://localhost:3306/test
  18. </property>
  19. <!--用户名-->
  20. <property name="connection.username">root</property>
  21. <!--密码-->
  22. <property name="connection.password">123456</property>
  23. <mapping resource="Student.hbm.xml"/>
  24. </session-factory>
  25. </hibernate-configuration>

(2)在src目录下的com.abc包中添加Student.java

  1. package com.abc;
  2. public class Student {
  3. private String NO;
  4. private String name;
  5. public String getNO() {
  6. return NO;
  7. }
  8. public void setNO(String NO) {
  9. this.NO = NO;
  10. }
  11. public String getName() {
  12. return name;
  13. }
  14. public void setName(String name) {
  15. this.name = name;
  16. }
  17. }

(3)在src目录下添加Student.hbm.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!DOCTYPE hibernate-mapping
  3. PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
  4. "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
  5. <hibernate-mapping package="com.abc">
  6. <class name="Student" table="Student">
  7. <id name="NO">
  8. <generator class="assigned" />
  9. </id>
  10. <property name="name" column="name" type="java.lang.String" />
  11. </class>
  12. </hibernate-mapping>

(4)Test.java

  1. package com.abc;
  2. import org.hibernate.*;
  3. import org.hibernate.cfg.*;
  4. public class Test {
  5. public static void main(String[] args) {
  6. try {
  7. //通过Configuration获得一个SessionFactory对象
  8. SessionFactory sf = new Configuration().configure().buildSessionFactory();
  9. //打开一个Session
  10. Session session = sf.openSession();
  11. //开始一个事务
  12. Transaction tx = session.beginTransaction();
  13. //创建一个Student对象
  14. Student stu = new Student();
  15. //通过session的save()方法将Student对象保存到数据库中
  16. stu.setNO("2016003");
  17. stu.setName("Zhang San");
  18. session.save(stu);
  19. //提交事务
  20. tx.commit();
  21. //关闭会话
  22. session.close();
  23. } catch(Exception e) {
  24. e.printStackTrace();
  25. }
  26. }
  27. }

7 验证

(1)运行Test.java,结果为

Hibernate: insert into Student (name, NO)values (?, ?)

(2)从MySQL中查询数据

Hibernate连接MySQL的更多相关文章

  1. Hibernate连接mysql数据库并自动创建表

    天才第一步,雀氏纸尿裤,Hibernate第一步,连接数据库. Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个 ...

  2. Hibernate 连接MySQL/SQLServer/Oracle数据库的hibernate.cfg.xml文件

    用Hibernate配置连接数据库可以方便我们对POJO的操作,节省了很多时间和代码.下面就分别说明连接不同数据库需要在hibernate.cfg.xml做的配置. 需要数据库驱动包可以点击这里下载: ...

  3. SpringBoot 整合 hibernate 连接 Mysql 数据库

    前一篇搭建了一个简易的 SpringBoot Web 项目,最重要的一步连接数据库执行增删改查命令! 经过了一天的摸爬滚打,终于成功返回数据! 因为原来项目使用的 SpringMVC + Hibern ...

  4. Hibernate连接mysql数据库的配置

    <?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hi ...

  5. Hibernate连接MySQL数据库乱码相关问题

    1.查看MySQL字符编码 >show variables like 'character%'; #执行编码显示 其中character_set_client,character_set_res ...

  6. Java采用Hibernate连接MySQL

    现有环境: Java JDK1.8 MySQL5.7 [ps]本文是很早前的基于隐马尔科夫模型进行中文词性标注的后续升级完善版,任务就是将之前的写入文件的模型参数写入MySQL 下载Hibernate ...

  7. hibernate连接mysql,查询条件中有中文时,查询结果没有记录,而数据库有符合条件的记录(解决方法)

    今天在另一台服务器上重新部署了网站,结果出现了以下问题: ——用hibernate做mysql的数据库连接时,当查询条件中有中文的时候,查询结果没有记录,而数据库中是存在符合条件的记录的. 测试了以下 ...

  8. hibernate连接MySQL配置hibernate.cfg.xml

    今天刚学完hibernate所以急着做一个hibernate的项目,有不足的请帮我改正一下.谢谢大家 <hibernate-configuration> <session-facto ...

  9. 关于Hibernate 连接mysql不能自动建表的问题

    最近看旧书,李刚那本<轻量级J2EE>在讲解hibernate的时候遇到一个问题,就是与mysql连接后,明明配置了自动建表,却老是建不了表,上网查了发现是方言的原因,到底什么是方言?这里 ...

  10. 解决利用hibernate连接mysql时无法插入汉字的问题

    1.先修改mysql数据库的配置文件my.ini,此文件放在mysql安装文件的根目录下.找到default-character-set属性,并将其值更改为utf8(不是utf-8),将default ...

随机推荐

  1. 如何把Android Studio项目转换成Eclipse的项目

    1. 找到这个目录:项目名称\app\src\main,并把它导入到Eclipse里 2. 把项目名称\app\libs文件夹拷贝到新生成的项目下,并删除掉.DS_Store文件 3. 这时再看还有什 ...

  2. javascript大神修炼记(5)——OOP思想(封装)

    读者朋友们好,前面我们已经讲解了有关javascript的基础,从今天的内容开始,我们就要开始讲有关封装的内容了,这里,我们就一点一点地接触到OOP(面向对象编程)了,如果作为一门语言使用的程序员连O ...

  3. Centos7使用squid实现正向代理

    正向代理:代理服务器帮助客户端(浏览器)实现互联网的访问 (1)代理服务器配置 1.安装squid yum install squid -y 2.编辑squid配置文件 #vim /etc/squid ...

  4. Luogu P4148 简单题(K-D Tree)

    题面 题解 因为强制在线,所以我们不能$cdq$分治,所以考虑用$KDT$,$KDT$维护一个矩阵,然后询问的时候如果当前矩形在询问区间内,直接记贡献,否则判断当前点是否在矩阵内,然后左右分别递归下去 ...

  5. 四川oi 萌萌哒 (分层并查集)

    萌萌哒 时间限制: 1 Sec  内存限制: 256 MB提交: 12  解决: 2[提交][状态][讨论版] 题目描述 一个长度为 n 的大数,用 S1S2S3...Sn表示,其中 Si表示数的第 ...

  6. 德州扑克AI

    德州扑克: 1:outs数,就是所听的牌的数量. 例子: 1:听顺子 4567 outs数就是8,能够成顺子的牌为3和8. 5689 outs数就是4,能够成顺子的牌只有7. 2:听同花     35 ...

  7. 【BZOJ 3530】【SDOI 2014】数数

    http://www.lydsy.com/JudgeOnline/problem.php?id=3530 上午gty的测试题,爆0了qwq 类似文本生成器那道题,把AC自动机的转移建出来,准确地说建出 ...

  8. [Codeforces #174] Tutorial

    Link: Codeforces #174 传送门 A: 求原根的个数,有一条性质是原根个数为$\phi(\phi(n))$,多了一个不会证的性质 如果要确定哪些是原根的话还是要枚举,不过对于每个数不 ...

  9. Luogu P3362 Cool loves shaxian 生成函数

    题意: 定义f(i)=∑ k∣i k^d(i≤n),给出q个询问,每个询问询问区间[l,r]的f(i)的和. n<=1e7 d<=1e18 q<=5e4 可以发现f(i)是个积性函数 ...

  10. 【计算几何】【凸包】【极角排序】【二分】Gym - 101128J - Saint John Festival

    平面上n个红点,m个黑点,问你多少个黑点至少在一个红三角形内. 对红点求凸包后,转化为询问有多少个黑点在凸包内. 点在凸多边形内部判定,选定一个凸包上的点作原点,对凸包三角剖分,将其他的点极角排序之后 ...