MyBatis之快速入门

news/2024/5/18 23:27:25 标签: mybatis, mysql, java, jdbc, 数据库

MyBatis入门——如何搭建MyBatis框架

构建MyBatis框架

  1. 新键一个maven项目

  2. pom.xml文件中配置依赖

    示例:

    <dependencies>
    		<!--mybatis包-->
            <dependency>
                <groupId>org.mybatis</groupId>
                <artifactId>mybatis</artifactId>
                <version>3.4.6</version>
            </dependency>
            <!--驱动包-->
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.40</version>
            </dependency>
        </dependencies>
    
  3. resources文件夹下创建mybatis.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>
        <!--使用什么环境,default就是对应环境的id-->
        <environments default="jdbc">
            <!--jdbc连接数据库的环境-->
            <environment id="jdbc">
                <!--事务管理器-->
                <transactionManager type="JDBC"/>
                <!--数据源,type是连接池的方式进行连接-->
                <dataSource type="POOLED">
                    <!--key值是固定的-->
                    <property name="driver" value="com.mysql.jdbc.Driver"/>
                    <property name="url" value="jdbc:mysql://localhost/数据库"/>
                    <property name="username" value="用户名"/>
                    <property name="password" value="密码"/>
                </dataSource>
            </environment>
        </environments>
        <!-- 导入mapper.xml配置文件,里面配置了SQL语句和DAO接口的映射关系-->
        <mappers>
            <mapper resource="mapper.xml"/>
        </mappers>
    </configuration>
    
  4. resources文件夹下创建mapper.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">
    
    
    <!--SQL语句配置文件,需要在mybatis配置文件中进行加载-->
    
    
    <!--mapper标签用于做SQL语句和方法之间的映射-->
    <!--一个mapper对应一个类,namespace里面写的是dao接口的完整路径-->
    <mapper namespace="com.xzk.dao.UserDao">
        <!--select的id是方法名-->
        <!--resultType是查询的结果的一种映射,User类的属性与列名完全一致(bean类),所以查询的结果会转换成User类-->
        <select id="getAll" resultType="User类的完整路径:包名.类名">
            /*具体的sql语句*/
            select * from usertest
        </select>
    </mapper>
    
  5. 测试

    • bean类:

      java">public class User {
          private String uname;
          private String upsw;
      
          public User() {
          }
      
          public User(String uname, String upsw) {
              this.uname = uname;
              this.upsw = upsw;
          }
      
          public String getUname() {
              return uname;
          }
      
          public void setUname(String uname) {
              this.uname = uname;
          }
      
          public String getUpsw() {
              return upsw;
          }
      
          public void setUpsw(String upsw) {
              this.upsw = upsw;
          }
      
          @Override
          public String toString() {
              return "User{" +
                      "uname='" + uname + '\'' +
                      ", upsw='" + upsw + '\'' +
                      '}';
          }
      }
      
      
    • 测试类:

      java">public class Test1 {
          public static void main(String[] args) throws IOException {
              //加载配置文件
              Reader reader = Resources.getResourceAsReader("mybatis.xml");
              //得到sqlSessionFactoryBuilder
              SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
              SqlSessionFactory build = builder.build(reader);
      
              //得到sqlSession
              SqlSession sqlSession = build.openSession();
              //操作sql  传入参数:类名.方法名
              List<User> list = sqlSession.selectList("com.xzk.dao.UserDao.getAll");
              //遍历
              for (User u : list){
                  System.out.println(u);
              }
      
              //关闭资源
              sqlSession.close();
              reader.close();
          }
      }
      


http://www.niftyadmin.cn/n/625886.html

相关文章

手写选择排序--Java

精选30云产品&#xff0c;助力企业轻松上云&#xff01;>>> /***选择排序* 逻辑是这样的:* 1. 先定义变量,用于记录某个值的索引,默认为最小值&#xff0c;从每次遍历的值开始拿* 2. 第二层循环i1开始&#xff0c;从默认最小值索引后面开始遍历,判断新的值是…

MyBatis超详细入门篇

一、构建MyBatis框架 新键一个maven项目 pom.xml文件中配置依赖 示例&#xff1a; <dependencies><!--mybatis包--><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.6</version…

学SpringMVC前必须要知道的事

SpringMVC必备知识点 一、前端控制器 首先我们先来大致了解一下它的基本结构和处理流程 前端控制器主要是负责与前端进行交互的&#xff0c;由上面的图我们不难看出流程&#xff1a; 浏览器端发送请求给前端控制器&#xff08;Front controller&#xff09;前端控制器把请求代…

初学Redis(一)--介绍

精选30云产品&#xff0c;助力企业轻松上云&#xff01;>>> 1. 什么是NoSql NoSQL&#xff08;Not Only SQL&#xff09;&#xff1a;不仅仅是SQLNoSQL是一项全新的数据库理念NoSQL属于非关系型的数据库&#xff0c;没有表的概念&#xff0c;目的只是存储数据。2. 为…

初学Redis(二)--安装Redis

精选30云产品&#xff0c;助力企业轻松上云&#xff01;>>> 1. 下载 redis官网支持Linux版本&#xff0c;微软维护windows版本 redis官网&#xff0c;可以下载linux版本 https://redis.io/windows版本 https://github.com/MicrosoftArchive/redis/releases百度网盘有…

tk mybatis中使用其自动生成的方法的时候出错的解决办法

tk mybatis中使用其自动生成的方法的时候出错的解决办法 查阅了网上各种资料之后&#xff0c;总结了一下&#xff0c;现在大体上有三种解决思路&#xff1a; 1、jar包 错误示例&#xff1a;存在两种tk mybatis的包&#xff0c;因为无法确定找哪个包而报类似于xx找不到的错误 …

初学Redis(三)--ReidsDesktopManager图形化工具安装

精选30云产品&#xff0c;助力企业轻松上云&#xff01;>>> 1.介绍 使用redis-cli客户端工具,必须使用命令进行操作,效率比较低。将使用图形化工具对redis数据库中的数据进行管理。0.9.4之后开始收费 redis-desktop-manager-0.9.3.8172.安装 安装包 百度网盘有已经下…

SpringBoot请求的日期参数发送异常

SpringBoot请求的日期参数发送异常&#xff08;org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [java.util.Date] for value ‘xxxx-xx-xx’;&#xff09; 错误原因 springMVC没有对日期格式进行转换的…