Mybatis使用步骤

本文详细介绍了Mybatis的使用步骤,从创建configuration文件开始,包括mapper的编写,然后是如何创建SqlSessionFactory,以及如何进行增删改查操作。重点讲述了mapper的namespace和id如何与Java代码中的方法对应,以及parameterType的设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先创建configuration文件,xml格式

<?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.cj.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://localhost/ex3"/>
        <property name="username" value="root"/>
        <property name="password" value=""/>
      </dataSource>
    </environment>
  </environments>
  <mappers>
    <mapper resource="User.xml"/>
  </mappers>
</configuration>

这里的 mapper 标签是用来表示使用哪个哪些mapper的,mapper是用来表示操作表格的封装文件
有四种属性。我忘了。resource表示mapper路径

写一个mapper

放到resources文件夹里

<?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="User">

    <resultMap id="result" type="org.example.User">
        <result property="id" column="id"/>
        <result property="username" column="username"/>
        <result property="email" column="email"/>
        <result property="password" column="password"/>
    </resultMap>

    <insert id="insert" parameterType="org.example.User">
       INSERT INTO User (username, email, password)
       VALUES (#{username}, #{email}, #{password});
    </insert>

</mapper>

resultmap是select出来的格式
parameterType是在Java文件中使用时的参数类型,这里选择自建的User类,路径为compile之后的 以target/classes为准的相对路径,也就是compile之前的以src/main/java文件夹为准的相对路径

准备工作结束

写个Java程序

创建一个SqlSessionFactory

Reader reader = Resources.getResourceAsReader(resource);
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader); //创建factory
SqlSession sqlSession = factory.openSession();//创建session

这个session就是可以执行增删改查了

增删改查

User user = new User("1133", "1133@qq.com", "1133");
int insert = sqlSession.insert("User.insert", user);

这里的User.insert是因为configuration.xml文件里的mapper里有个User.xml 而在User.xml里的mappernamespace又是User,所以这样子找到了User, 然后mapper里的id又有个insert,就找到了User.insert
insert接收的参数parameterType又是User,所以参数为User

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值