在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查



系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用第一章


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录



安装idea

1、打开官网:IntelliJ IDEA: The Capable & Ergonomic Java IDE by JetBrains,点击页面中的“DOWNLOAD”

在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查


2.根据自己的需要选择下载的IntelliJ IDEA版本,此处我的电脑是Windows7 64 位的,我选择的是Community

3.双击下载安装包

在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查



创建maven工程

1.建立Maven项目
点击File->new->Project

在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查

 按照图中数字顺序点击

在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查

输入组织名和项目名之后点击Next

在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查

选择maven版本和setting位置 点击Next

在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查

 至此maven项目就搭建好了 下面开始搭建mybatis框架



搭建mybatis框架



1.打开pom.xml文件,导入以下依赖,完成maven配置mybatis

  <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.3.0</version>
    </dependency>
    <!-- mysql驱动包 -->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.29</version>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter</artifactId>
      <version>RELEASE</version>
      <scope>compile</scope>
    </dependency>

2将webapp文件夹设置为web项目
点击File->Project Structre->Facets->Web

在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查

在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查

 在main文件夹下创建resources文件夹

在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查



创建时点击这个直接变成静态文件夹
在resources文件夹下创建mybatis-config.xml文件
在mybatis-config.xml文件中配置mybatis与数据库交互

代码如下(示例):

<?xml version="1.0" encoding="UTF-8" ?>

<configuration>
    <!--1. 配置环境 默认的环境id为mysql -->
    <environments default="mysql">
        <!-- 1.1.配置id为mysql的数据库环境 -->
        <environment id="mysql">
            <!-- 使用jdbc的事务管理 -->
            <transactionManager type="JDBC" />
            <!-- 使用数据库连接池 -->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver" />
                <property name="url" value="jdbc:mysql://localhost:3306" />
                <property name="username" value="root" />
                <property name="password" value="x5" />
            </dataSource>
        </environment>
    </environments>
    <!--2. 配置mapper的位置 -->
    <mappers>
        <!-- 可以配置多个mapper -->
        <mapper resource="mapper/StudentMapper.xml" />
    </mappers>
</configuration>

在po文件夹下创建实体类student

package com.lhx.po;

public class student {

    private Integer id;
    private String sname;
    private String spwd;

    public Integer getId() {
        return id;
    }

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

    public String getSname() {
        return sname;
    }

    public void setSname(String sname) {
        this.sname = sname;
    }

    public String getSpwd() {
        return spwd;
    }

    public void setSpwd(String spwd) {
        this.spwd = spwd;
    }
}

创建实体类的mapper文件
在resources文件夹下创建mapper文件

在idea中创建maven的工程,搭建mybatis框架完成单表的增删改查

 在dao文件夹下创建studentdao接口
输入以下代码

public interface StudentDao {

    public List<Student> findById(int id);
}

 在mapper文件夹下创建studentMapper.xml文件
输入以下代码

<?xml version="1.0" encoding="UTF-8"?>

<mapper namespace="com.lhx.dao.studentDao">
    <!--id ="接口中的方法名" parameterType="传入的参数类型" resultType = "返回实体类对象,使用包.类名"-->
    <select id="findById" parameterType="int" resultType="com.lhx.po.student">
      select * from tb_student where id = #{id}
    </select>
</mapper>

 编写测试类

package com.lhx.controller;

import javax.annotation.Resources;
import java.io.IOException;
import java.io.Reader;

public class Test {

    @Test
    public void StudentFindByIdTest(){
        //定义读取文件名
        String resources = "mybatis-config.xml";
        //创建流
        Reader reader=null;
        try {
            //读取mybatis-config.xml文件到reader对象中
            reader= Resources.getResourceAsReader(resources);
        } catch (IOException e) {
            e.printStackTrace();
        }
        //初始化mybatis,创建SqlSessionFactory类的实例
        SqlSessionFactory sqlMapper=new SqlSessionFactoryBuilder().build(reader);
        //创建session实例
        SqlSession session=sqlMapper.openSession();
        //传入参数查询,返回结果
        StudentDao StudentMapper=session.getMapper(StudentDao.class);
        List<Student> list=StudentMapper.findById(1);
        //输出结果
        System.out.println(list);
        //关闭session
        session.close();

    }
}

测试

public class Text {
    @Test
    public void test1(){
 
        //1.获取SqlSession对象
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        //2.执行SQL
        // 方式一:getMapper
        UserMapper userDao = sqlSession.getMapper(UserMapper.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();
 
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
 
        User user  = new User("sdfs","6765");
        mapper.addUser(user);
        //增删改一定要提交事务
        sqlSession.commit();
 
        //关闭sqlSession
        sqlSession.close();
    }
 
    @Test
    public void test3() {
        SqlSession sqlSession = MybatisUtils.getSqlSession();
 
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
 
        mapper.updateUser(new User("fvsdv","677"));
 
        //增删改一定要提交事务
        sqlSession.commit();
 
        //关闭sqlSession
        sqlSession.close();
    }
    @Test
    public void test4() {
        SqlSession sqlSession = MybatisUtils.getSqlSession();

        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
 
        mapper.deleteUser(new User("sd","575"));
 
        //增删改一定要提交事务
        sqlSession.commit();
 
        //关闭sqlSession
        sqlSession.close();
    }
 
}


上一篇:idea框架实现增删改查


下一篇:通过源码理解手写简单版本MyBatis框架(十)