栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

MyBatis实现数据库增删改查

MyBatis实现数据库增删改查

1.点击左上角File--》Project--》 2.选择Maven打上对√,选择archetype-webapp,--》finish应用

2.找到pox.xml文件 导入以下依赖


  
    junit
    junit
    4.11
    test
  

  
    mysql
    mysql-connector-java
    5.1.47
  

  
    org.mybatis
    mybatis
    3.5.7
  
3. 选择main右键 New---》Directory 

 选择java和resource

 

 4.选择建的Maven文件再冲里面新建Maven 选择Maven打上对√,选择archetype-webapp,--》finish应用    1~!设置类加载:

 

package com.util;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;
import java.io.InputStream;

public class baseDaoUtil {
    private static SqlSessionFactory sessionFactory;
    //当类记载时
    static{
        String resource = "mybatis-config.xml";
        InputStream inputStream = null;
        try {
            inputStream = Resources.getResourceAsStream(resource);
            sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    //获取SqlSession对象
    public static SqlSession getSqlSession(){
        return sessionFactory.openSession();
    }
}
 2.增删改查方法

 

package com.yhzz.dao;

import com.yhzz.pojo.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;

//就是UserDao,就是换了名字
public interface UserMapper {
    //查 查询所有的用户结果集
    List queryListUser();

    User queryById(int id);

    //删 按id删除 @Param("id")多个参数必须加
    int deleteByid(@Param("id")int id);

    //增 增加一个对象
    int addUser(User user);

    //改 修改
    int updateUser(User user);
}
3. 设置有参函数
package com.yhzz.pojo;

public class User {
    private int id;
    private String userName;
    private String pwd;

    //两个参数的有参构造,测试主键自增
    public User(int id){
        this.id = id;
    }
    public User(String userName,String pwd){
        this.userName = userName;
        this.pwd = pwd;
    }
    //三个数的有参构造
    public User(int id, String userName, String pwd) {
        this.id = id;
        this.userName = userName;
        this.pwd = pwd;
    }

    public User() {
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }
}

 

4. 设置结果集

 




    
    
        select * from user where id=#{id};
    

    
    
        delete from user where id=#{id};
    

    
    
        insert into user (id,userName,pwd)
        values (#{id},#{userName},#{pwd});
    

    
    
        update user set userName=#{userName},pwd=#{pwd} where id=#{id}
    
 5.连接数据库配置




    
        
        
            
            
                
                
                
                
            
        
    
    
    
        
    
 6.test测试方法
package com.yhzz.dao;

import com.util.baseDaoUtil;
import com.yhzz.pojo.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;

import javax.sound.midi.Soundbank;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;

public class UserMapperTest {
    //查
    @Test
    public void queryListUser(){
        //连接数据库

        //执行sql
        //处理结果集

        try {
            //mybatis-com.xml配置文件路径
            String resource = "mybatis-config.xml";
            //将配置文件加载到输入流
            InputStream inputStream = Resources.getResourceAsStream(resource);
            //获取sqlSessionFactory对象
            SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
            //获取申请了Session对象,连接数据库
            SqlSession sqlSession = sessionFactory.openSession();
            //获取UserMapper对象
            UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
            //调用方法,执行sql
            List users = userMapper.queryListUser();
            //处理结果集
            for(User user:users){
                System.out.println(user.getUserName());
            }
            //关闭sqlSession
            sqlSession.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    };
    @Test
    public void queryById(){
        //获取SQLSession
        SqlSession sqlSession = baseDaoUtil.getSqlSession();
        //获取UserMapper对象
        UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
        //调用查询方法
        User user = userMapper.queryById(1);
        System.out.println(user.getUserName());
        //关闭资源
        sqlSession.close();
    };
    //删
    @Test
    public void deleteByid(){
        //获取申请了Session
        SqlSession sqlSession = baseDaoUtil.getSqlSession();
        //获取UserMapper对象
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        //调用方法执行
        int rows =  mapper.deleteByid(2);
        System.out.println("删除了"+rows+"行");
        //增删改必须手动提交事务
        sqlSession.commit();
        //关闭资源
        sqlSession.close();
    }
    //增
    @Test
    public void addUser(){
        SqlSession sqlSession = baseDaoUtil.getSqlSession();
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        int rows =  mapper.addUser(new User(6,"张三","132"));
        System.out.println("新增数量"+rows);
        //事务
        sqlSession.commit();
        //关闭数据库
        sqlSession.close();
    }
    //改
    @Test
    public void update(){
        SqlSession sqlSession = baseDaoUtil.getSqlSession();
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        User us = mapper.queryById(4);
        us.setUserName("阮六军");
        us.setPwd("ps");

        sqlSession.commit();
        sqlSession.close();
        System.out.println("修改成功:"+us.getUserName()+us.getPwd());
    }
}
 pox.xml配置文件

 




  4.0.0

  org.example
  mybatis-study
  1.0-SNAPSHOT
  
    mybatis01
    mybatis02
  
  pom

  mybatis-study Maven Webapp
  
  http://www.example.com

  
    UTF-8
    1.7
    1.7
  
  

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/308063.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号