• Hibernate入门代码


    1.下载Hibernate的开发包

        网址:http://hibernate.org/orm/downloads/

    2.创建web project 环境

     实体类和数据库表

       

    3.对象关系映射表

       在实体所在的目录下导入映射文件xxx.hbm.xml(一般都会和实体名字一致)

       

    4.配置连接数据库基本属性

       在src下导入hbiernate.cfg.xml(也就是hibernate配置文件)

       

    5.编写测试类代码

    public class testDemo {
    
        // 插入一条数据
        @Test
        public void insertTest() {
            // 1、创建一个SessionFactory对象
            SessionFactory sessionFactory = null;
            // 1.1创建Configuration对象
            Configuration configure = new Configuration().configure();
            // 创建一个ServiceRegistry对象 需要在该对象当中注册hibernate的任何配置和服务才能有效
            ServiceRegistry serviceRegistry = new ServiceRegistryBuilder()
                    .applySettings(configure.getProperties())
                    .buildServiceRegistry();
    
            // 当前写法属于之前的写法 删除线表示该方法已经过时 但可以继续使用
            // sessionFactory = configure.buildSessionFactory();
            sessionFactory = configure.buildSessionFactory(serviceRegistry);
    
            // 2、创建一个Session对象
            Session session = sessionFactory.openSession();
    
            // 3、开启事务
            Transaction transaction = session.beginTransaction();
    
            // 4、执行插入操作
            Customer customer = new Customer();
            customer.setPhone("123123123");
            customer.setUsername("测试2");
            session.save(customer);
    
            // 5、提交事务
            transaction.commit();
    
            // 6、关闭session
            session.close();
    
            // 7、关闭SessionFactory
            sessionFactory.close();
    
        }
        
        // 修改一条数据
        @Test
        public void updateTest() {
            // 1、创建一个SessionFactory对象
            SessionFactory sessionFactory = null;
            // 1.1创建Configuration对象
            Configuration configure = new Configuration().configure();
            // 创建一个ServiceRegistry对象 需要在该对象当中注册hibernate的任何配置和服务才能有效
            ServiceRegistry serviceRegistry = new ServiceRegistryBuilder()
                    .applySettings(configure.getProperties())
                    .buildServiceRegistry();
    
            // 当前写法属于之前的写法 删除线表示该方法已经过时 但可以继续使用
            // sessionFactory = configure.buildSessionFactory();
            sessionFactory = configure.buildSessionFactory(serviceRegistry);
    
            // 2、创建一个Session对象
            Session session = sessionFactory.openSession();
    
            // 3、开启事务
            Transaction transaction = session.beginTransaction();
    
            // 4、执行插入操作
            Customer customer = new Customer();
            customer.setId(7);
            customer.setUsername("测试3");
            session.update(customer);
    
            // 5、提交事务
            transaction.commit();
    
            // 6、关闭session
            session.close();
    
            // 7、关闭SessionFactory
            sessionFactory.close();
    
        }
        
        // 删除一条数据
        @Test
        public void deleteTest() {
            // 1、创建一个SessionFactory对象
            SessionFactory sessionFactory = null;
            // 1.1创建Configuration对象
            Configuration configure = new Configuration().configure();
            // 创建一个ServiceRegistry对象 需要在该对象当中注册hibernate的任何配置和服务才能有效
            ServiceRegistry serviceRegistry = new ServiceRegistryBuilder()
                    .applySettings(configure.getProperties())
                    .buildServiceRegistry();
    
            // 当前写法属于之前的写法 删除线表示该方法已经过时 但可以继续使用
            // sessionFactory = configure.buildSessionFactory();
            sessionFactory = configure.buildSessionFactory(serviceRegistry);
    
            // 2、创建一个Session对象
            Session session = sessionFactory.openSession();
    
            // 3、开启事务
            Transaction transaction = session.beginTransaction();
    
            // 4、执行插入操作
            Customer customer = new Customer();
            customer.setId(7);
            session.delete(customer);
    
            // 5、提交事务
            transaction.commit();
    
            // 6、关闭session
            session.close();
    
            // 7、关闭SessionFactory
            sessionFactory.close();
    
        }
        
        // 根据id进行查询
        @Test
        public void findByIdTest() {
            // 1、创建一个SessionFactory对象
            SessionFactory sessionFactory = null;
            // 1.1创建Configuration对象
            Configuration configure = new Configuration().configure();
            // 创建一个ServiceRegistry对象 需要在该对象当中注册hibernate的任何配置和服务才能有效
            ServiceRegistry serviceRegistry = new ServiceRegistryBuilder()
                    .applySettings(configure.getProperties())
                    .buildServiceRegistry();
    
            // 当前写法属于之前的写法 删除线表示该方法已经过时 但可以继续使用
            // sessionFactory = configure.buildSessionFactory();
            sessionFactory = configure.buildSessionFactory(serviceRegistry);
    
            // 2、创建一个Session对象
            Session session = sessionFactory.openSession();
    
            // 3、开启事务
            Transaction transaction = session.beginTransaction();
    
            // 4、根据主键进行查询
            Customer customer = (Customer) session.get(Customer.class, 6);
            System.out.println(customer);
    
            // 5、提交事务
            transaction.commit();
    
            // 6、关闭session
            session.close();
    
            // 7、关闭SessionFactory
            sessionFactory.close();
    
        }
        
        /* 
         *     Hibernate框架查询数据可以通过Query对象完成
         *         Session对象提供了两个方法可以获得Query对象
         *                 
         * 
         * 查询全部数据
         *     session.createQuery
         *     
         *     session.createSQLQuery
         */
        @Test
        public void findAllTest() {
            // 1、创建一个SessionFactory对象
            SessionFactory sessionFactory = null;
            // 1.1创建Configuration对象
            Configuration configure = new Configuration().configure();
            // 创建一个ServiceRegistry对象 需要在该对象当中注册hibernate的任何配置和服务才能有效
            ServiceRegistry serviceRegistry = new ServiceRegistryBuilder()
                    .applySettings(configure.getProperties())
                    .buildServiceRegistry();
    
            // 当前写法属于之前的写法 删除线表示该方法已经过时 但可以继续使用
            // sessionFactory = configure.buildSessionFactory();
            sessionFactory = configure.buildSessionFactory(serviceRegistry);
    
            // 2、创建一个Session对象
            Session session = sessionFactory.openSession();
    
            // 3、开启事务
            Transaction transaction = session.beginTransaction();
    
            // 4、查询全部数据   HQL语句:from Customer
            Query query = session.createQuery("from Customer");
            List<Customer> list = query.list();
            System.out.println(list);
            
            // 5、提交事务
            transaction.commit();
    
            // 6、关闭session
            session.close();
    
            // 7、关闭SessionFactory
            sessionFactory.close();
    
        }
        
        @Test
        public void findAll2Test() {
            // 1、创建一个SessionFactory对象
            SessionFactory sessionFactory = null;
            // 1.1创建Configuration对象
            Configuration configure = new Configuration().configure();
            // 创建一个ServiceRegistry对象 需要在该对象当中注册hibernate的任何配置和服务才能有效
            ServiceRegistry serviceRegistry = new ServiceRegistryBuilder()
                    .applySettings(configure.getProperties())
                    .buildServiceRegistry();
    
            // 当前写法属于之前的写法 删除线表示该方法已经过时 但可以继续使用
            // sessionFactory = configure.buildSessionFactory();
            sessionFactory = configure.buildSessionFactory(serviceRegistry);
    
            // 2、创建一个Session对象
            Session session = sessionFactory.openSession();
    
            // 3、开启事务
            Transaction transaction = session.beginTransaction();
    
            // 4、查询全部数据   HQL语句:from Customer
            Query query = session.createSQLQuery("select * from customer");
            List<Customer> list = query.list();
            System.out.println(list);
            
            // 5、提交事务
            transaction.commit();
    
            // 6、关闭session
            session.close();
    
            // 7、关闭SessionFactory
            sessionFactory.close();
    
        }
    
    }
  • 相关阅读:
    使用 Selenium
    Senium 简介
    第8章 动态渲染页面爬取
    Ajax 结果提取
    Ajax 分析方法
    WINDOW 2008多人访问设置
    Windows 2012设置允许单个用户连接多个会话的方法
    Windows Server 2012开启多人远程
    BOM 表
    修复材料工单分配材料订单重复占料问题的开发
  • 原文地址:https://www.cnblogs.com/yz-bky/p/12545212.html
Copyright © 2020-2023  润新知