使用IDEA Maven搭建mybatis环境完成单表增删改查操作测试

1.创建maven项目

File -> New -> Project,选择maven

点击next,输入groupid和项目名,然后点击next,然后点击finish

第二步:在src -> main 下创建webapp文件夹

 

添加web组件:

File -> project structure(或者快捷键 alt + shift + ctrl + s),选择modules,点击+

 然后点击创建

点击OK

第三步: 配置Tomcat,如下图:点击1保证每次添加依赖后会自动加载依赖,点击2配置Tomcat

 

在点击2后出现的页面进行如下操作: 

 

配置Tomcat路径,访问端口,服务器名称,如下图所示

配置项目访问路径(可选): 点击apply -  > ok

至此,项目创建完毕,可以在webapp下新建index.jsp,启动服务器,访问项目,测试是否创建成功

 2.搭建数据库

创建一个数据库自己命名,选择字符集

配置主键约束

3.导入jar包

在src文件下新建lib文件将jar包压缩包拖入lib里即可

 

创建bean,dao,util三个包,里面分别建立三个类:Users,UsersDao,Util

 类的代码:

Users类

package bean;
public class Users {
    private int id;
    private String name;
    private String password;

    public Users(){

    }
    public Users(String name,String password){
        this.name=name;
        this.password=password;
    }
    public int getId() {
        return id;
    }
    public void setId(int id){
        this.id=id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

 UsersDao类

package dao;
import util.Util;
import bean.Users;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class UsersDao extends Util {
    //添加记录
    public void insert(Users user) throws Exception {
        //1.获取连接对象
        conn();
        //2.获取一个可以执行sql语句的对象
        String sql="insert users(name,password) values(?,?)";
        pstm=conn.prepareStatement(sql);
        pstm.setString(1,user.getName());
        pstm.setString(2,user.getPassword());
        //3.执行一条添加的sql
        pstm.execute();
        System.out.println("添加记录");
        //4.关闭数据库
        close();
    }
    //删除记录
    public void delete(int id) throws Exception{
        //1.获取连接对象
        conn();
        //2.获取一个可以执行sql语句的对象
        String sql="delete from users where id=?";
        pstm=conn.prepareStatement(sql);
        pstm.setInt(1, id);
        //3.执行一条删除的sql
        pstm.execute();
        System.out.println("删除记录");
        //4.关闭数据库
        close();
    }
    //修改记录
    public void update(int id,Users user) throws Exception{
        //1.获取连接对象
        conn();
        //2.获取一个可以执行sql语句的对象
        String sql="update users set name=?,password=? where id=?";
        pstm=conn.prepareStatement(sql);
        pstm.setString(1, user.getName());
        pstm.setString(2,user.getPassword());
        pstm.setInt(3,id);
        //        //3.执行一条修改的sql
        pstm.executeUpdate();
        System.out.println("修改记录");
        //4.关闭数据库
        close();
    }
    //查询全部
    public List<Map> select() throws Exception{
        //1.获取连接对象
        conn();
        //2.获取一个可以执行sql语句的对象
        String sql="select * from users";
        pstm=conn.prepareStatement(sql);
        //3.执行一条修改的sql
        rs=pstm.executeQuery();
        List list=new ArrayList();
        while(rs.next()){
            int id=rs.getInt("id");
            String name=rs.getString("name");
            String password=rs.getString("password");
            Map map=new HashMap();
            map.put("id",id);
            map.put("name",name);
            map.put("password",password);
            list.add(map);
        }
        System.out.println("查询全部记录");

        //4.关闭数据库
        close();
        return list;
    }
    public static void main(String[] args) throws Exception {
        //在此处对表进行操作
        UsersDao db=new UsersDao();
        Users user=new Users("","");
        db.insert(user);
        db.delete(7);
        Users user1=new Users("","");
        db.update(1,user);
        List list=db.select();
        System.out.println(list);
    }
}

Util类

package util;
import java.sql.*;

public class Util {
    public static String url;
    public static String name;
    public static String password;
    public static Connection conn=null;//连接数据库
    public static Statement stm=null;//执行sql语句
    public static PreparedStatement pstm=null;
    public ResultSet rs=null;//结果集
    //连接数据库
    public static Connection conn() throws Exception {
        Class.forName("com.mysql.jdbc.Driver");
        url="jdbc:mysql://localhost:3306/19j06";
        name="root";
        password="x5";
        conn= DriverManager.getConnection(url,name,password);
        System.out.println("连接数据库");
        return conn;
    }
    //关闭数据库
    public static void close() throws Exception {
        if(stm!=null){
            stm.close();
        }
        if(pstm!=null){
            pstm.close();
        }
        if(conn!=null){
            conn.close();
        }

        System.out.println("关闭数据库");
    }

}

搭建完成

4.测试

package dao;
import Users;
import java. utils.Utils
import java.dao.UsersDao.
public class UserDaotest {
    @Test
    public void test1(){
        //1.获取SqlSession对象
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        //2.执行SQL
        // 方式一:getMapper
        UserDao userDao = sqlSession.getMapper(UserDao.class);
        List<User> userList = userDao.getUserList();
        for (User user : userList) {
            System.out.println(user);
        }
        //关闭sqlSession
        sqlSession.close();
    }
    @Test
    public void test2() {
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        UserDao mapper = sqlSession.getMapper(UserDao.class);
        User user  = new User(4,"张一","000");
        mapper.addUser(user);
        //增删改一定要提交事务
        sqlSession.commit();
        //关闭sqlSession
        sqlSession.close();
    }
    @Test
    public void test3() {
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        UserDao mapper = sqlSession.getMapper(UserDao.class);
        mapper.updateUser(new User(2,"465",""));
        //增删改一定要提交事务
        sqlSession.commit();
        //关闭sqlSession
        sqlSession.close();
    }
    @Test
    public void test4() {
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        UserDao mapper = sqlSession.getMapper(UserDao.class);
        mapper.deleteUser(new User(1,"123"));
        //增删改一定要提交事务
        sqlSession.commit();
        //关闭sqlSession
        sqlSession.close();
    }
}

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值