作业01.Mybatis的添加用户

一、搭建环境

1.导入架包

    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.4.5</version>
    </dependency>
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.32</version>
    </dependency>
  1. mybatis日志依赖log4j,需要配置log4j.properties
# Global logging configuration
log4j.rootLogger=DEBUG, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
  1. 配置Mybatis核心配置文件SqlMapConfig.xml
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<!--dtd是对xml配置标签与属性的约束-->
<configuration>
    <typeAliases>
        <package name="com.lg.pojo"/>
    </typeAliases>
    <!--    environments环境  开发环境,生产环境-->
    <environments default="development">
        <environment id="development">
            <!--    使用jdbc的事务管理  -->
            <transactionManager type="JDBC"/>
            <!--    dataSource Mybatis自带数据源连接池-->
            <dataSource type="POOLED">
                <!--    四大信息 -->
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/school?characterEncoding=utf-8"/>
                <property name="username" value="root"/>
                <property name="password" value=""/>
            </dataSource>
        </environment>
    </environments>
    <!-- 配置多个映射文件-->
    <mappers>
        <mapper resource="com/lg/mapper/UserMapper.xml"></mapper>
    </mappers>
</configuration>

二、配置运行条件

  1. pojo:User类
public class User {
    
    
    private int id;
    private String username;
    private String password;
//get set方法
}
  1. 数据库表:
    在这里插入图片描述

UserMapper接口

public interface UserMapper {
    
    
    //根据id查找用户
    public User findById(int id);
    //根据用户名模糊查询
    List<User> findByKeyWord (String key);
    //根据id删除数据
    void deleteById(int id);
    //插入数据
    public void saveUser(User user);
}

UserMapper.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.lg.mapper.UserMapper">
	<select id="findById" parameterType="int" resultType="user">
        select * from users where id = #{
    
    id}
    </select>

    <select id="findByKeyWord" parameterType="string" resultType="user">
        select * from users where username like '${value}'
    </select>

    <delete id="deleteById" parameterType="int">
        delete from users where id = #{
    
    id}
    </delete>

    <insert id="saveUser" parameterType="user">
        insert into users(id,username,password) values (#{
    
    id},#{
    
    username},#{
    
    password})
    </insert>
</mapper>

两者的结构目录
在这里插入图片描述
4. 生成SqlSession的工具类

public class MySessionUtils {
    
    
    private static SqlSessionFactory sessionFactory;
    static{
    
    
        SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
        InputStream inputStream = MySessionUtils.class.getClassLoader().getResourceAsStream("SqlMapConfig.xml");
        sessionFactory = sqlSessionFactoryBuilder.build(inputStream);
    }
    public static SqlSession getSession() {
    
    
        SqlSession sqlSession = sessionFactory.openSession();
        return sqlSession;
    }
}

三、添加用户

@Test
    public void saveUser(){
    
    
        SqlSession sqlSession = MySessionUtils.getSession();
        UserMapper dao = sqlSession.getMapper(UserMapper.class);
        User user = new User();
        user.setId(1);
        user.setUsername("zhangsan");
        user.setPassword("123456");
        dao.saveUser(user);
        sqlSession.close();
    }

效果截图:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/lglglglglgui/article/details/108795408