学习MyBatis Day1

一、什么是MyBatis?

        MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。
        MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
      

二、 Mybatis的特点

  • 简单易学:本身就很小且简单。没有任何第三方依赖,最简单安装只要两个jar文件+配置几个sql映射文件易于学习,易于使用,通过文档和源代码,可以比较完全的掌握它的设计思路和实现。
  • 灵活:mybatis不会对应用程序或者数据库的现有设计强加任何影响。
  • sql写在xml里,便于统一管理和优化。通过sql语句可以满足操作数据库的所有需求。
  • 解除sql与程序代码的耦合:通过提供DAO层,将业务逻辑和数据访问逻辑分离,使系统的设计更清晰,更易维护,更易单元测试。sql和代码的分离,提高了可维护性。
  • 提供映射标签,支持对象与数据库的orm字段关系映射 提供对象关系映射标签,支持对象关系组建维护 提供xml标签,支持编写动态sql。

三、ORM是什么?

        ORM (Object Relational Mapping),对象关系映射,是一种为了解决关系型数据库数据与简单Java对象(FOJO)的映射关系的技术。简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系型数据库中。

四、持久化和ORM

(1) 持久化是程序数据在瞬时状态和持久化转换的过程。
(2)ORM (Object Relational Mapping)
  • 编写程序的时候,已面向对象的方式处理数据
  • 保存数据的时候,却以关系型数据库的方式存储
(3)ORM解决方案包含下面四个部分
  1. 在持久化对象上执行基本的增、删、改、查操作
  2. 对持久化对象提供一种查询语句或者API
  3. 对象关系映射工具
  4. 提供与事务对象交互、执行检查、延迟加载以及其他优化功能

五、搭建MyBatis开发环境

MyBatis的安装和配置步骤如下:
(1)引入MyBatis依赖:在项目的构建文件(如pom.xml)中添加MyBatis的依赖项。你可以通过Maven或Gradle等构建工具管理依赖。下面是一个使用Maven的例子:
<dependencies>
    <!-- MyBatis -->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>XXX</version>
    </dependency>
    
    <!-- 数据库驱动,根据你使用的数据库选择对应的依赖 -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>XXX</version>
    </dependency>
</dependencies>
(2)配置数据源:在应用的配置文件中配置数据库连接信息,包括数据库驱动、连接URL、用户名和密码等。可以使用XML配置文件(如mybatis-config.xml)或者注解方式进行配置。以下是一个使用XML配置文件的示例:
<!-- mybatis-config.xml -->
<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/mydatabase"/>
                <property name="username" value="root"/>
                <property name="password" value="mypassword"/>
            </dataSource>
        </environment>
    </environments>
</configuration>
(3)创建Mapper接口:创建一个Java接口,用于定义数据库操作的方法。每个方法对应一条SQL语句。例如:
public interface UserMapper {
    User getUserById(int id);
    void insertUser(User user);
    void updateUser(User user);
    void deleteUser(int id);
}
(4)编写映射文件:为Mapper接口编写对应的XML映射文件,其中定义了具体的SQL语句和结果映射规则。XML映射文件通常与Mapper接口放在同一个包下,且文件名与接口名相同,只是后缀为".xml"。例如:
<!-- UserMapper.xml -->
<mapper namespace="com.example.mapper.UserMapper">
    <!-- 查询 -->
    <select id="getUserById" resultType="com.example.model.User">
        SELECT * FROM users WHERE id = #{id}
    </select>
    
    <!-- 插入 -->
    <insert id="insertUser">
        INSERT INTO users (name, age) VALUES (#{name}, #{age})
    </insert>
    
    <!-- 更新 -->
    <update id="updateUser">
        UPDATE users SET name = #{name}, age = #{age} WHERE id = #{id}
    </update>
    
    <!-- 删除 -->
    <delete id="deleteUser">
        DELETE FROM users WHERE id = #{id}
    </delete>
</mapper>
(5)配置MyBatis:在应用的配置文件中配置MyBatis框架,指定映射文件的位置、别名设置等。可以使用XML配置或者Java代码配置。以下是一个使用XML配置的示例:
<!-- mybatis-config.xml -->
<configuration>
    <mappers>
        <mapper resource="com/example/mapper/UserMapper.xml"/>
    </mappers>
    
    <!-- 别名设置 -->
    <typeAliases>
        <package name="com.example.model"/>
    </typeAliases>
</configuration>
(6)使用Mapper接口:在应用的业务逻辑中使用Mapper接口的方法进行数据库操作。通过依赖注入或直接获取Mapper对象,然后调用方法执行操作。例如:
@Autowired
private UserMapper userMapper;

public User getUserById(int id) {
    return userMapper.getUserById(id);
}

public void insertUser(User user) {
    userMapper.insertUser(user);
}

// 其他操作类似...
以上是MyBatis的简单安装和配置步骤。根据具体的需求和项目结构,可能会有一些特殊的配置和操作。你可以根据自己的项目情况进行相应的调整和扩展。

六、总结

 

七、关系图

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值