千家信息网

hibernate环境搭建测试的示例分析

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要介绍了hibernate环境搭建测试的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。真正要掌握,还得需要自己动手,
千家信息网最后更新 2026年11月01日hibernate环境搭建测试的示例分析

这篇文章主要介绍了hibernate环境搭建测试的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

真正要掌握,还得需要自己动手,才能丰衣足食。

  1. 所需jar包

    jar包版本不同,找的地址也不同。这里用到的是 hibernate-release-5.2.10 版本的jar包


除了这些jar包,还需要数据库驱动jar,根据自己用的数据库自定,这里用到的是oracle

2.jar包导入好,看看配置,在配置之前,看下实体和表结构。

实体 Users

package com.hib.entity;public class Users {        private Integer id;        private String name;        private String pass;        private String address;        public Integer getId() {                return id;        }        public void setId(Integer id) {                this.id = id;        }        public String getName() {                return name;        }        public void setName(String name) {                this.name = name;        }        public String getPass() {                return pass;        }        public void setPass(String pass) {                this.pass = pass;        }        public String getAddress() {                return address;        }        public void setAddress(String address) {                this.address = address;        }        public Users(Integer id, String name, String pass, String address) {                super();                this.id = id;                this.name = name;                this.pass = pass;                this.address = address;        }        public Users() {                super();        }        @Override        public String toString() {                return "Users [id=" + id + ", name=" + name + ", pass=" + pass + ", address=" + address + "]";        }        }

表结构

在src下 hibernate.cfg.xml配置,如果不知道里面的配置怎么写。可以通过在下载的jar包中搜索hibernate.cfg.xml,里面有配置信息。

hibernate.cfg.xml 配置如下

            oracle.jdbc.OracleDriver        ssh        ssh        jdbc:oracle:thin:@127.0.0.1:1521:xe                        org.hibernate.dialect.Oracle10gDialect                true                true                            

3. User.hbm.xml配置

                                                                                                                                                                                

4.测试数据连接是否配置成功

package com.hib.test;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import org.junit.Test;import com.hib.entity.Users;public class TestConn {                // 获取session        public static Session getSession(){                // 加载配置                Configuration cfg = new Configuration().configure();                // 获取sessionFactory                SessionFactory factory = cfg.buildSessionFactory();                // 获取session                Session session = factory.openSession();                return session;        }                // 查询        @Test        public void query(){                Session session = getSession();                // 查询                Users users = session.get(Users.class, 1);                System.out.println(users);                //关闭资源                session.close();        }        // 在进行增删改时 ,好控制事务    ---- 插入        @Test        public void insert(){                Session session = getSession();                // 开启事务                Transaction tx = session.beginTransaction();                Users users = new Users(null, "xyz", "xyz", "china");                // 插入                session.save(users);                // 事务提交                tx.commit();                // 事务回滚                //tx.rollback();                session.close();        }        // 更新数据前   需要先查询出修改的数据        @Test        public void update(){                Session session = getSession();                Transaction tx = session.beginTransaction();                Users users = session.get(Users.class, 1);                users.setAddress("郑州");                users.setName("小李飞刀");                session.update(users);                tx.commit();                session.close();        }        // 删除  需要先出现出删除的数据        @Test        public void delete(){                Session session = getSession();                Transaction tx = session.beginTransaction();                Users users = session.get(Users.class, 1);                session.delete(users);                tx.commit();                session.close();        }        }

这里讲解下关于hibernate中主键的生成策略

  1. increment 一般用于测试,多并发环境中存在主键取值冲突,这里文章包括下面写的都是用的

这个,方便测试。实际项目中,没有人会用到。

2. sequence oralcle数据库专用

在oracle数据库中创建序列 : create sequence st_id start with 7 increment by 1;

意思是:创建序列名为 st_id 从7开始,每次增加1

hibernate中默认值是 hibernate_sequence

st_id

3. identity :适用于mysql sqlserver 相当于2

4. uuid 生成32位长度全球唯一的字符串,适用于分布式系统中

5. foreign : 专用于1:1 共享主键的从表方

6. assigned: 手动指定ID,一般不用

这里值得一提:在使用sequence时,配置文件中写

这里 name为 sequence_name,但我当时配置时候写的是sequence,出了错。搜了好久,也没有发现错误,并且别人写的也是sequence。这里我也没有去看其他版本,这里我使用是5.2版,可能是版本之间的问题。希望注意下。如果你不知道配置是sequence 还是sequence_name,可以搜当前版本的文件 sequence,会有一些文件和文件夹,找里面的配置,看里面写的是什么。

sqs_id

感谢你能够认真阅读完这篇文章,希望小编分享的"hibernate环境搭建测试的示例分析"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

配置 数据 测试 版本 事务 数据库 文件 篇文章 环境 查询 示例 分析 不同 实体 序列 结构 生成 丰衣足食 值得一提 不用 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州万易互联网科技有限公司 互联网科技未来 互联网金融与金融科技 平安科技 互联网 互联网科技集团 卓越科技互联网 招聘 广西拼得多互联网科技有限公司 深圳互联网科技怎么样 阿里巴巴算科技企业还是互联网 阿里互联网科技公司 河南猎农互联网科技有限公司 苏州铭阳互联网科技有限公司 链环科技传统企业怎么转型互联网 群盈汇互联网科技有限公司 北京市互联网新科技 中国互联网有什么科技 互联网科技实习生岗位 互联网高科技行业有哪些企业 兰石爱特工业互联网科技分公司 第三届互联网大会安防黑科技 互联网新科技 北京路客互联网科技有限公司 互联网科技公司的优势 鑫亿盛互联网科技 银川新华互联网科技学校地址 互联网科技博主是什么意思 电子商务与互联网科技的关系 广州有谷有贝互联网科技有限公司 北京品多多互联网科技有限公司 每日互联网科技新闻
0