• Hibernate修改操作 删除操作 查询操作 增加操作 增删改查 Hibernate增删查改语句


    我用的数据库是MySQL,实体类叫User

    public class User {
        private Integer uid;
        private String username;
        private String password;
        private Integer age;
        private String gender;
        private String phoneNumber;
    }

     1.Hibernate添加数据操作

           // 操作流程:
            // 1.通过session启动事务
            Transaction transaction = session.beginTransaction();
            // 2.执行添加操作
            User user = new User("艾格尼丝","女","18977783654");
            Serializable save = session.save(user);
            System.out.println("save: " + save);
            // 3.提交或回滚事务
            transaction.commit();

     2.Hibernate删除数据操作

            Transaction transaction = session.beginTransaction();
            // 1.先从数据库查出来需要删除的对象
            User user = session.get(User.class,3);
            // 2.再进行删除
            session.delete(user);
            transaction.commit();

    3.Hibernate修改数据操作

            Transaction transaction = session.beginTransaction();
            // 1.从数据库中获取需要修改的对象
            User user =session.get(User.class, 3);
            // 2.对该对象中的数据进行修改
            user.setUsername("李小龙");
            // 3.将修改后的对象更新到数据库中
            session.update(user);
            transaction.commit();

    4.Hibernate查询数据操作

            Transaction transaction = session.beginTransaction();
            //根据用户编号进行查询
            User user = session.get(User.class, 3);
            System.out.println(user.getUsername());
            transaction.commit();

    5.Hibernate增删改查全部的代码文件

    package com.bj186.test;
    
    import com.bj186.entity.User;
    import com.bj186.util.HibernateUtil;
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.Transaction;
    import org.hibernate.cfg.Configuration;
    import org.junit.Before;
    import org.junit.Test;
    import java.io.Serializable;
    
    
    public class TestUser {
    
        private Session session = null;
       
        @Before
        public void init() {
            //1. 声明配置对象,加载配置文件
            Configuration configuration = new Configuration();
            configuration.configure("hibernate.cfg.xml");
            //2. 将配置文件告诉session工厂
            SessionFactory sessionFactory =     configuration.buildSessionFactory();
            //3. 通过session Factory来获取session
            session = sessionFactory.openSession();
        }
    
        /**
         * 向数据库中添加一条记录
         */
        @Test
        public void testAdd() {
            // 操作流程:
            // 1.通过session启动事务
            Transaction transaction = session.beginTransaction();
            // 2.执行持久化操作
            User user = new User("艾格尼丝","女","18977783654");
            Serializable save = session.save(user);
            System.out.println("save: " + save);
            // 3.提交或回滚事务
            transaction.commit();
        }
    
        /**
         * 从数据库中删除一条记录
         */
        @Test
        public void testDelete() {
            Transaction transaction = session.beginTransaction();
    //        String sql = "delete from User where uid = :uid"; //第二种删除方式
    //        Query query = session.createQuery(sql);
    //        query.setParameter("uid",1);
    //        query.executeUpdate();
            //先从数据库查出来对象
            User user = session.get(User.class,3);
            //再进行删除
            session.delete(user);
            transaction.commit();
        }
    
        /**
         * 测试修改数据
         */
        @Test
        public void testUpdate() {
            Transaction transaction = session.beginTransaction();
            // 1.从数据库中获取需要修改的对象
            User user =session.get(User.class, 3);
            // 2.对该对象中的数据进行修改
            user.setUsername("李小龙");
            // 3.将修改后的对象更新到数据库中
            session.update(user);
            transaction.commit();
        }
    
        /**
         * 测试查询数据
         */
        @Test
        public void testQuery() {
            Transaction transaction = session.beginTransaction();
            //根据用户编号进行查询
            User user = session.get(User.class, 3);
            System.out.println(user.getUsername());
            transaction.commit();
        }
    
    }
  • 相关阅读:
    Moebius实现Sqlserver集群~介绍篇
    知方可补不足~SQL数据库用户的克隆,SQL集群的用户同步问题
    从零开始学C++之动态创建对象
    [置顶] 某大型银行深化系统技术方案之二十五:性能设计之主要数量指标
    POJ 1300 Door Man
    解决SQL查询总是超时已过期
    hdu 1728 逃离迷宫(BFS)
    Nginx 负载均衡-加权轮询策略剖析
    ios 6 横竖屏转换
    firefox同步数据时无响应问题
  • 原文地址:https://www.cnblogs.com/zjulanjian/p/10894458.html
Copyright © 2020-2023  润新知