欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MyBatis学习笔记1-认识MyBatis

程序员文章站 2022-04-16 09:15:40
前言在工作中,看代码的时候,经常看到各种xml配置,用来持久化数据库,当时年轻不懂事,也就是看一眼就过去了,事实证明,不好好对待学习,学习有一天终会让你【泪奔~】,于是乎,痛定思痛,好好学习,天天向上,废话不说了,????一.MyBatis ?MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJ...

前言

在工作中,看代码的时候,经常看到各种xml配置,用来持久化数据库,当时年轻不懂事,也就是看一眼就过去了,事实证明,不好好对待学习,学习有一天终会让你【泪奔~】,于是乎,痛定思痛,好好学习,天天向上,废话不说了,????

 

MyBatis 

MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

重点:是一种基于持久层框架,有数据库就用到这个

 

1.使用方法(以Maven为例)

在pom文件中配置如下

<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis</artifactId>
  <version>x.x.x</version>
</dependency>

2.编写核心配置文件

在resource文件下右键新增file,命名为mybatis-config.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>
  <environments default="development">
    <environment id="development">
      <transactionManager type="JDBC"/>
      <dataSource type="POOLED">
        <property name="driver" value="${driver}"/>
        <property name="url" value="${url}"/>
        <property name="username" value="${username}"/>
        <property name="password" value="${password}"/>
      </dataSource>
    </environment>
  </environments>
  <mappers>
    <mapper resource="org/mybatis/example/BlogMapper.xml"/>
  </mappers>
</configuration>

 

3.创建SqlSessionFactory&&获取SqlSession

写个MybatisUtil类,内容如下

public class MybatisUtil {
    public static SqlSessionFactory getSqlSessionFactory(){
        String resource = "org/mybatis/example/mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        return sqlSessionFactory;
    }

    public static SqlSession getSqlSession(){
        SqlSessionFactory sqlSessionFactory=getSqlSessionFactory();
        return sqlSessionFactory.openSession();
    }
}

 

4.编写实体类(也就是数据库表中的字段)

public class Blog {
    private int id;
    private String name;
    private String pwd;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }
}

 

5.编写sql语句的映射文件

<?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="org.mybatis.example.BlogMapper">
  <select id="selectBlog" resultType="Blog">
    select * from Blog where id = #{id}
  </select>
</mapper>

resultType最好是包名+类名,namespace是全限定名

 

本文地址:https://blog.csdn.net/mumuwang1234/article/details/109313332

相关标签: mybatis 数据库