Mybatis- - - 插入(二)

一、目录结构- - - - - - 本文代码中有注释可以看懂
这里写图片描述
mybatis-config.xml配置文件

<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE configuration PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN" 
    "http://ibatis.apache.org/dtd/ibatis-3-config.dtd">

<configuration>
    <!-- 
        标签的要按顺序来,不然会报错,最初我将typeAliases放在properties之前或者environment之后一直报错
     -->
    <properties resource="jdbc.properties"/>
    <!-- 取别名   User=model.User -->
    <typeAliases>
        <typeAlias alias="User" type="top.xuexibc.model.User"/>
    </typeAliases>
    <!-- development : 开发模式 -->
    <environments default="development">
        <environment id="development">
            <!-- JDBC事物管理 -->
            <transactionManager type="JDBC"/>
            <!-- 数据库连接池 -->
            <dataSource type="POOLED">
                <property name="driver" value="${driverClassName}"/>
                <property name="username" value="${username}"/>
                <property name="password" value="${password}"/>
                <property name="url" value="${url}"/>
            </dataSource>
        </environment>
    </environments>
    <!-- 管理映射文件-->
    <mappers>
        <mapper resource="top/xuexibc/mapper/UserMapper.xml"/>
    </mappers>
</configuration>

jdbc.properties配置文件

username=root
password=root
url=jdbc:mysql://localhost:3306/mybatis
driverClassName=com.mysql.jdbc.Driver

usermapper.xml配置文件

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

<!-- *mapper.java所在路径 -->
<mapper namespace="top.xuexibc.mapper.UserMapper">
    <!-- id是接口中的方法名      user是mybatis-config.xml中的别名    -->
    <insert id="insertUser" parameterType="User">
        insert into user(username,password) values(#{username},#{password})
    </insert>
</mapper>

util包SqlSessionUti类

package top.xuexibc.util;

import java.io.InputStream;

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

public class SqlSessionUtil {
    private static SqlSessionFactory sqlsessionFactory;
    public static SqlSession open(){
        InputStream inputStream=null;
        try {
            //读物配置文件
            inputStream=Resources.getResourceAsStream("Mybatis-Config.xml");
            sqlsessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return sqlsessionFactory.openSession();
    }
}

service包UserService类

package top.xuexibc.service;

import org.apache.ibatis.session.SqlSession;
import top.xuexibc.mapper.UserMapper;
import top.xuexibc.model.User;
import top.xuexibc.util.SqlSessionUtil;

public class UserService{
    public static void main(String[] args) {
        SqlSession sqlsession=SqlSessionUtil.open();
        UserMapper usermapper=sqlsession.getMapper(UserMapper.class);
        User user=new User("战三","123456");
        usermapper.insertUser(user);
        sqlsession.commit();
        System.out.println("插入成功!");
    }
}

记得加上提交sqlsession.commit();不然数据库查询不了插入的数据
效果图:
这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/lhb2019/article/details/80033800