• Java中mybatis的Mpper代理开发的详细使用步骤


    目录

    前言必读

    一、全图预览

    二、使用步骤 

    1.pom.xml里面添加依赖包  

    2.新建统一配置文件(俗称数据库连接文件)

    3.新建项目

     4.新建映射文件(俗称数据库对应表xml)

     5.测试

     三、文中的全部代码(去复制可用)


    前言必读

    读者手册(必读)_云边的快乐猫的博客-CSDN博客

    mybatis使用Mapper代理开发会更加的方便,一般推荐这样的方式,形式和mapper常规使用也差不多

    其他说明:还有注解的方式可以调用,不过注解的方式只能应用于简单的sql语句,复杂的语句就要用文中的xml调用方式了

    前文阅读(有必要) 

    使用配置:

    以下的安装配置的超链接,如有需要可用去查看

    IDEA:2022

    JDK:17

    项目结构:maven

    图中小鸟插件:mybatisx

    一、全图预览

     

    二、使用步骤 

    1.pom.xml里面添加依赖包  

    先在maven架构的pom.xml里面添加要使用的mybatismysql两个依赖(俗称jar包)

    1. <dependencies>
    2. <dependency>
    3. <groupId>org.mybatisgroupId>
    4. <artifactId>mybatisartifactId>
    5. <version>3.5.11version>
    6. dependency>
    7. <dependency>
    8. <groupId>mysqlgroupId>
    9. <artifactId>mysql-connector-javaartifactId>
    10. <version>8.0.30version>
    11. dependency>
    12. dependencies>

     如图所示:

    2.新建统一配置文件(俗称数据库连接文件)

    (1)在resources下--新建--文件(选择第2个)---mybatis-config.xml

    ps:这里面是用来连接数据库的统一配置文件 

    (2)把这个配置信息添加到这个新建的配置文件里面

     ps:这个配置文件在mybatis官网的入门那里有 

    1. "1.0" encoding="UTF-8" ?>
    2. configuration
    3. PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
    4. "https://mybatis.org/dtd/mybatis-3-config.dtd">
    5. <configuration>
    6. <environments default="development">
    7. <environment id="development">
    8. <transactionManager type="JDBC"/>
    9. <dataSource type="POOLED">
    10. <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
    11. <property name="url" value="jdbc:mysql://localhost:3306/javafx"/>
    12. <property name="username" value="root"/>
    13. <property name="password" value="123456"/>
    14. dataSource>
    15. environment>
    16. environments>
    17. <mappers>
    18. <mapper resource="com/project/Mapper/boyMapper.xml"/>
    19. mappers>
    20. configuration>

     如图所示:

    3.新建项目

    (1)要在java的项目下面建立2个包,一个是接口包Mapper,一个是封装包pojo

     com.project:项目名

    Mapper:接口包

    pojo:实现类包

    (2)

    封装包pojo里面建立一个和数据库对应的封装类--Boy

    接口包Mapper下建立一个接口--boyMapper

    ps:数据库图(这个是为了方便对应参考,知道那些类名是怎么来的)

     Boy里面是封装属性。然后快捷键生成的set和get、构造方法、toString)

    boyMapper(接口起这个名字是为了和接下来的resources里面的xml映射文件名一样)

    ps:并在接口里面定义一个查询全部的集合方法-

     4.新建映射文件(俗称数据库对应表xml)

    (1)在resources下--新建--目录包---com/project/Mapper

    格式:

    新建一个目录包和接口包一样的名称就好了。建立输入时候注意:小点那个要用/代替才能建立成功

    ps:这样做的目的就是为了xml文件和接口包在同一个文件下

    如图所示 

    (2)在resources下新建好的包下建立一个boyMapper.xml文件,并在里面写上对应的映射方法

    格式

    数据库要操作对应的表名Mapper.xml,以后数据库的操作语句都在这个映射文件里面写就好了

     添加进去的映射方法 

    1. "1.0" encoding="UTF-8" ?>
    2. mapper
    3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
    4. "https://mybatis.org/dtd/mybatis-3-mapper.dtd">
    5. <mapper namespace="com.project.Mapper.boyMapper">
    6. <select id="selectAll" resultType="com.project.pojo.Boy">
    7. select * from boy;
    8. select>
    9. mapper>

    如图所示

     5.测试

     编写一个测试类,放哪里测试都可以(我在pojo里面建立)

    1. package com.project.pojo;
    2. import com.project.Mapper.boyMapper;
    3. import org.apache.ibatis.io.Resources;
    4. import org.apache.ibatis.session.SqlSession;
    5. import org.apache.ibatis.session.SqlSessionFactory;
    6. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    7. import java.io.IOException;
    8. import java.io.InputStream;
    9. import java.util.List;
    10. public class BoyTest {
    11. public static void main(String[] args) throws IOException {
    12. //1.加载mybatis连接文件(核心配置文件)
    13. String resource = "mybatis-config.xml";//这是连接数据库的统一配置xml文件
    14. InputStream inputStream = Resources.getResourceAsStream(resource);//固定写法
    15. SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);//固定写法
    16. //2.获取SqlSessionFactory对象--固定写法
    17. SqlSession sqlSession = sqlSessionFactory.openSession();
    18. //3.执行sql语句
    19. //接口 自定义接口名 = sqlSession.getMapper(接口.class);
    20. boyMapper boyMapper = sqlSession.getMapper(boyMapper.class);
    21. //接口里面的方法
    22. List boyAll = boyMapper.selectAll();
    23. //4.打印语句
    24. System.out.println(boyAll);
    25. //5.释放资源--固定写法
    26. sqlSession.close();
    27. }
    28. }

    运行结果:

    [boy{id=1, name='小明', age=18}, boy{id=2, name='小美', age=19}] 

     三、文中的全部代码(去复制可用)

    超链接 

  • 相关阅读:
    CSS_关于文档流的问题
    idea快速生成当前时间的设置方法
    数据库性能测试实践:慢查询统计分析
    C++ Primer Plus第三章编程练习答案
    RabbitMQ学习笔记(二)SpringAMQP的使用、消息转换器
    安科瑞EMS能效管理平台降低铜电解单耗的应用-Susie 周
    天软特色因子看板 (2023.11 第12期)
    算法训练——单调栈专题
    盲盒电商深度解析,盲盒电商怎么玩?
    数云融合丨知识图谱在烟草零售数字化转型中的应用
  • 原文地址:https://blog.csdn.net/m0_52861000/article/details/128039296