Hibernate 入门配置

开发环境搭建

  1. hibernate环境下载https://sourceforge.net/projects/hibernate/files/hibernate-orm/5.0.7.Final/hibernate-release-5.0.7.Final.zip/download
  2. 将必须的jar包导入到项目中 将目录 hibernate-release-5.0.7.Final\lib\required 下的所有jar包导入到项目中,导入log4j相关的jar包,以及数据库驱动包
  3. 编写配置文件
    a. 编写核心配置文件 hibernate.cfg.xml
    b.编写映射配置文件 实体名.hbm.xml

配置文件编写

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>
            <!-- 必须的配置 -->
            <!-- 数据库驱动文件 -->
            <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
            <!-- 数据库访问地址 -->
            <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernate</property>
            <!-- 数据库用户名 -->
            <property name="hibernate.connection.username">root</property>
            <!-- 数据库密码 -->
            <property name="hibernate.connection.password">root</property>
            <!-- 方言 操作数据库的语言 -->
            <property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>

            <!-- 非必须的配置项 -->
            <!-- 显示SQL语句 -->
            <property name="hibernate.show_sql">true</property>
            <!-- 格式化SQL -->
            <property name="hibernate.format_sql">true</property>
            <!-- 通过映射转成DDL语句 -->
            <property name="hibernate.hbm2ddl.auto">update</property>

            <!-- 把映射文件引进来 -->
            <mapping resource="cn/wcl/pojo/User.hbm.xml"/>
        </session-factory>
    </hibernate-configuration>
User.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
    <hibernate-mapping>
         <!-- 配置javabean和数据库表的映射
            class
                name:表示类的全限定名(包名+类型)
                table:表名
         -->
        <class name="cn.wcl.pojo.User" table="user">
                <!-- 配置主键
                    id 
                        name:javabean的属性名
                        column:数据库的字段名
                 -->
            <id name="uid" column="uid">
            <!-- 主键生成策略   native:采取本地数据库的一个主键生成策略  mysql:自增长    oracle:序列 sequence -->
                <generator class="native"></generator>
            </id>
            <!-- 配置普通属性 -->
            <property name="uname" column="uname"></property>
            <property name="ugender" column="ugender"></property>
            <property name="upwd" column="upwd"></property>
        </class>
    </hibernate-mapping>
    测试代码
    public class Demo_01 {

    /**
     * 增加
     */
    @Test
    public void run1(){
        //1.读取hibernate配置文件
        Configuration cfg = new Configuration();
        //读取配置文件
        cfg.configure();
        //2.获得SessionFactory工厂
        SessionFactory factory = cfg.buildSessionFactory();
        //3.获得Session对象
        Session session = factory.openSession();
        //4.开启事务
        Transaction ts = session.beginTransaction();

        User user = new User();
        user.setUname("jack");
        user.setUgender("男");
        user.setUpwd("123456");

        //保存
        Serializable id = session.save(user);
        System.out.println(id);

        //5.提交事务
        ts.commit();
        //6.释放资源
        session.close();
        factory.close();
    }

    /**
     * 查询get()/load()
     */
    @Test
    public void run2(){
        //1.读取hibernate配置文件
        Configuration cfg = new Configuration();
        //读取配置文件
        cfg.configure();
        //2.获得SessionFactory工厂
        SessionFactory factory = cfg.buildSessionFactory();
        //3.获得Session对象
        Session session = factory.openSession();
        //4.开启事务
        Transaction ts = session.beginTransaction();

        User user = session.get(User.class, 1L);
        System.out.println(user);
        //5.提交事务
        ts.commit();
        //6.释放资源
        session.close();
        factory.close();
    }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值