MyBatis框架

配置MyBatis框架主要涉及以下几个步骤:

  1. 添加依赖 :在项目的pom.xml文件中添加MyBatis和数据库驱动的依赖。例如,对于Maven项目,可以添加如下依赖:

    xml

    复制代码
    <dependencies>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.2</version> <!-- 使用合适的版本 -->
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.28</version> <!-- 使用合适的版本 -->
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
  2. 创建MyBatis核心配置文件 :在resources目录下创建mybatis-config.xml文件,配置数据库连接和事务管理器等信息。例如:

    xml

    复制代码
    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE configuration
            PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
            "https://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:3306/mybatis?useSSL=true&amp;useUnicode=true&amp;characterEncoding=UTF-8"/>
                    <property name="username" value="root"/>
                    <property name="password" value="root"/>
                </dataSource>
            </environment>
        </environments>
    </configuration>
  3. 编写MyBatis工具类 :创建一个工具类,用于获取SqlSessionFactorySqlSession。例如:

    java

    复制代码
    import org.apache.ibatis.io.Resources;
    import org.apache.ibatis.session.SqlSession;
    import org.apache.ibatis.session.SqlSessionFactory;
    import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    import java.io.IOException;
    import java.io.InputStream;
    
    public class MybatisUtils {
        private static SqlSessionFactory sqlSessionFactory;
        static {
            try {
                String resource = "mybatis-config.xml";
                InputStream inputStream = Resources.getResourceAsStream(resource);
                sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        public static SqlSession getSqlSession(){
            return sqlSessionFactory.openSession();
        }
    }
  4. 编写实体类(POJO):创建与数据库表对应的Java对象。

    复制代码

    java

    复制代码
    public class User {
        private int id;
        private String name;
        private String pwd;
        // 省略getter和setter方法
    }
  5. 编写Mapper接口:定义与数据库操作相关的接口。

    复制代码

    java

    复制代码
    public interface UserDao {
        List<User> getUserList();
    }
  6. 编写Mapper XML文件:定义SQL语句和映射规则。

    xml

    复制代码
    <?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.example.dao.UserDao">
        <!-- 定义SQL语句 -->
    </mapper>
  7. 在核心配置文件中注册Mapper :在mybatis-config.xml中添加mappers节点,注册Mapper接口或XML文件。

    xml

    复制代码
    <mappers>
        <mapper class="com.example.dao.UserDao"/>
    </mappers>

以上步骤完成后,就可以通过SqlSession执行数据库操作了。这些步骤涵盖了MyBatis的基本配置,可以根据具体需求进行调整和扩展。

相关推荐
侠客行03175 分钟前
Mybatis入门到精通 一
java·mybatis·源码阅读
赵得C4 小时前
完整 Oracle 12c 分页 Demo(Spring Boot+MyBatis+PageHelper)
spring boot·oracle·mybatis
任子菲阳8 小时前
学Javaweb第四天——springboot入门
java·spring·mybatis
赵得C11 小时前
Spring Boot+MyBatis:用 PageHelper 实现 Oracle 12c 的 OFFSET 分页
spring boot·oracle·mybatis
Leonardo_Fibonacci13 小时前
skbbs-day5
java·开发语言·mybatis
cike_y13 小时前
Mybatis之分页的实现&日志工厂&Log4j详解
数据库·log4j·mybatis
星光一影1 天前
教育培训机构消课管理系统智慧校园艺术舞蹈美术艺术培训班扣课时教务管理系统
java·spring boot·mysql·vue·mybatis·uniapp
cike_y1 天前
Mybatis之作用域(Scope)和生命周期-解决属性名和字段名不一致的问题&ResultMap结果集映射
java·开发语言·数据库·tomcat·mybatis
柒.梧.1 天前
MyBatis一对一关联查询深度解析:大实体类、SQL99联表、分布式查询实践
分布式·mybatis
Coder_Boy_2 天前
SpringAI与LangChain4j的智能应用-(理论篇)
人工智能·spring·mybatis·springai·langchain4j