MyBatis 映射器

目录

1. 什么是映射器

 2. 映射器的基本结构

 3. 映射器接口示例

4. XML 映射文件示例

 5. 使用映射器

 6. 配置示例

MyBatis 是一个 Java 持久层框架,它支持定制 SQL、存储过程及先进的映射。MyBatis 的核心是它的映射器(Mapper)。

1. 什么是映射器

映射器是 MyBatis 的核心组件之一,它用来定义 SQL 语句与 Java 对象之间的映射关系。通常映射器会用 XML 文件或者注解的方式来指定。

 2. 映射器的基本结构

一个典型的 MyBatis 映射器包含以下几个部分:

(1)映射器接口:定义数据库操作的方法。

(2)XML 映射文件:相应的 XML 配置文件,包含 SQL 语句和其对应的 Java 方法。

 3. 映射器接口示例
public interface UserMapper {
    User getUserById(int id);
    List<User> getAllUsers();
    void insertUser(User user);
    void updateUser(User user);
    void deleteUser(int id);
}
4. XML 映射文件示例
<mapper namespace="com.example.mapper.UserMapper">
    <select id="getUserById" parameterType="int" resultType="com.example.model.User">
        SELECT * FROM users WHERE id = #{id}
    </select>

    <select id="getAllUsers" resultType="com.example.model.User">
        SELECT * FROM users
    </select>

    <insert id="insertUser" parameterType="com.example.model.User">
        INSERT INTO users (username, password) VALUES (#{username}, #{password})
    </insert>

    <update id="updateUser" parameterType="com.example.model.User">
        UPDATE users SET username = #{username}, password = #{password} WHERE id = #{id}
    </update>

    <delete id="deleteUser" parameterType="int">
        DELETE FROM users WHERE id = #{id}
    </delete>
</mapper>
 5. 使用映射器

在 MyBatis 中使用映射器一般需要以下几个步骤:

(1)配置 MyBatis:包括数据源和映射器的 XML 文件。
(2)获取 SqlSession:通过 SqlSessionFactory 获取 SqlSession。
(3)调用映射器方法:通过 SqlSession 获取映射器接口的实例,并调用相应的方法。

 6. 配置示例
<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:3306/mydb"/>
                <property name="username" value="root"/>
                <property name="password" value="password"/>
            </dataSource>
        </environment>
    </environments>

    <mappers>
        <mapper resource="com/example/mapper/UserMapper.xml"/>
    </mappers>
</configuration>
  • 9
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值