MyBatis入门

框架:具有一些基础功能的软件

三层架构

在这里插入图片描述

MyBatis优势

在这里插入图片描述


MyBatis使用


maven框架下MyBatis实例

在这里插入图片描述

1、数据库中创建student表
2、maven的pom.xml文件中加入:

  <!-- 依赖框架 -->
  <dependencies>
  
	......
	
    <!-- mybatis框架 -->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.5.6</version>
    </dependency>

    <!-- mysql驱动 -->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.46</version>
    </dependency>

  </dependencies>

3、创建Student实体类
4、创建对应持久层接口:

package org.example.dao;

import org.example.domain.Student;
import java.util.List;

public interface StudentDAO {

    //查询表中所有数据
    List<Student> selectStudents();

}

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/example/dao/StudentDAO">
    <select id="selectStudents" resultType="org.example.domain.Student">
        select * from student order by id
    </select>

</mapper>

# 全限定名称指:copy path下的copy reference
<!--
<!DOCTYPE mapper
  PUBLIC "约束文件:指定mybatis的sql映射文件的标签要求 固定的!!!">
<mapper namespace="此sql文件对应接口的全限定名称">

  <select id="接口中方法名" resultType="返回集合中元素的数据类型的全限定名称">
    select * from Blog where id = #{id}
  </select>
  还有:
  <update>
  <insert>
  <delete>

</mapper>
-->

6、创建MyBatis主配置文件
在这里插入图片描述

<?xml version="1.0" encoding="UTF-8" ?>

<!-- mybatis主配置文件 -->

<!--约束文件-->
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">

<!--配置-->
<configuration>

	<!-- 向控制台输出mybatis日志 -->
    <settings>
        <setting name="logImpl" value="STDOUT_LOGGING"/>
    </settings>

    <!--  数据库环境配置
      default值为当前使用的数据库:
            如开发过程我们使用development标签数据库信息
            而部署服务器时我们将default改为真实数据库信息online标签数据库信息
      -->
    <environments default="development">
        <!--    数据库环境1    -->
        <environment id="development">
            <!--  事务类型   JDBC  -->
            <transactionManager type="JDBC"/>
            <!-- 数据源   pooled表示使用线程池 -->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/ssm"/>
                <property name="username" value="root"/>
                <property name="password" value="123456"/>
            </dataSource>
        </environment>

        <!--   数据库环境2     -->
        <environment id="online">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <!-- 另一个数据库信息 -->
            </dataSource>
        </environment>

    </environments>

    <!-- sql映射文件 -->
    <mappers>
        <!-- 注意用resource找文件都是在类路径下找 -->
        <mapper resource="org/example/dao/StudentDAO.xml"/>

    </mappers>
</configuration>

扩展:让maven编译不要过滤xml文件

# maven默认编译会过滤xml等文件
# 需要在maven项目的pom.xml文件中配置:
<build>

    <resources>
      <!-- 设置src/main/java下的**/*.xml文件编译时不被过滤filtering=false -->
      <resource>
        <directory>src/main/java</directory>
        <includes>
          <include>**/*.properties</include>
          <include>**/*.xml</include>
        </includes>
        <filtering>false</filtering>
      </resource>
      
      <resource>
        <directory>src/main/resources</directory>
      </resource>
      
    </resources>

 </build>

7、访问数据库:
在这里插入图片描述

主要类介绍

MyBatis默认事务不会自动提交
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值