MyBatis基于配置文件实现对数据库的增删改查

持久化类

该类中声明的属性和数据库中的字段一致

package com.mybatis.po;

public class MyUser {
    private Integer uid; //主键
    private String uname;
    private String usex;

   //get、set方法

    @Override
    public String toString() {
        return "MyUser{" +
                "uid=" + uid +
                ", uname='" + uname + '\'' +
                ", usex='" + usex + '\'' +
                '}';
    }
}

映射文件

该文件中配置了对数据库操作的sql语句

<?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.mybatis.mapper.UserMapper">
    <!--根据uid查询一个用户信息-->
    <select id="selectUserById" parameterType="Integer"
            resultType="com.mybatis.po.MyUser">
        select * from user where uid=#{uid}
    </select>

    <!--查询所有用户信息-->
    <select id="selectAllUser" resultType="com.mybatis.po.MyUser">
        select * from user
    </select>

    <!--添加一个用户-->
    <insert id="addUser" parameterType="com.mybatis.po.MyUser">
        insert into user (uname,usex) values (#{uname},#{usex})
    </insert>

    <!--修改一个用户-->
    <update id="updateUser" parameterType="com.mybatis.po.MyUser">
        update user set uname=#{uname},usex=#{usex} where uid=#{uid}
    </update>

    <!--删除一个用户-->
    <delete id="deleteUser" parameterType="Integer">
        delete from user where uid=#{uid}
    </delete>
</mapper>

MyBatis配置文件

该文件里面配置了数据库环境和映射文件位置

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!--配置环境-->
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/springtest?characterEncoding=utf8"/>
                <property name="username" value="root"/>
                <property name="password" value="123456"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="com/mybatis/mapper/UserMapper.xml"/>
    </mappers>

</configuration>

测试类

public class MyBatisTest {
    public static void main(String[] args) {
        try {
            InputStream config= Resources.getResourceAsStream("com/mybatis/mybatis-config.xml");
            SqlSessionFactory ssf=new SqlSessionFactoryBuilder().build(config);
            SqlSession ss=ssf.openSession();
            //通过id查询一个用户
            MyUser mu=ss.selectOne("com.mybatis.mapper.UserMapper.selectUserById",1);
            System.out.println(mu);
            //添加一个用户
            MyUser addmu=new MyUser();
            addmu.setUname("张三");
            addmu.setUsex("男");
            int insertFlag=ss.insert("com.mybatis.mapper.UserMapper.addUser",addmu);
           
            //修改一个用户
            MyUser updatemu=new MyUser();
            updatemu.setUid(1);
            updatemu.setUname("flfjgh");
            updatemu.setUsex("女");
            int updateFlag=ss.update("com.mybatis.mapper.UserMapper.updateUser",updatemu);
            System.out.println("数据更新成功的标志:"+updateFlag);
           

            //删除一个用户
            int deleteFlag=ss.delete("com.mybatis.mapper.UserMapper.deleteUser",3);
          
            //查询所有用户
            List<MyUser> listMu=ss.selectList("com.mybatis.mapper.UserMapper.selectAllUser");
            System.out.println("查询所有用户:");
            for(MyUser myUser:listMu){
                System.out.println(myUser);
            }
            //提交事务
            ss.commit();
            ss.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

依赖

为了让idea编译src的java目录的xml文件,需要在依赖中加入:

<build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
    </build>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值