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();
    }

}

猜你喜欢

转载自www.cnblogs.com/zjulanjian/p/10894458.html