Java教程

Spring+Mybatis+Mysql

本文主要是介绍Spring+Mybatis+Mysql,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

项目搭建

新建项目Spring Initializr

 

 

Spring Initializr项目配置

指定Java版本为8

 

选择依赖

 选择启动服务url除了官网之外,可选择https://start.aliyun.com/

项目名称和位置

自定义项目名称和位置

 

 

点击确定,项目构建成功

依赖jar包管理

在pom.xml文件中找到<dependencies>标签,该标签包裹的就是当前所有依赖对应的jar包

 

 可在标签内添加想要的依赖,例如,添加单元测试和mybatis所需要的依赖

方法一:输入junit,自动弹出提示,回车

 

 方法二:访问https://mvnrepository.com/artifact/mysql/mysql-connector-java/8.0.12,在搜索栏中直接搜索

 

 

选择第一个搜索结果,选择对应的版本,(以3.4.6版本为例)

 

 复制内容,粘贴到pom.xml文件中的<dependencies>标签内

一些问题的解决办法

pom.xml文件version报错

 

 解决办法一:版本号过高,降低版本号(一般会自动匹配jdk生成对应版版本号)

 

 解决办法二:在IDEA中的Maven中配置错误

点击文件->设置

 

 在构建、执行、部署工具->Maven中更改maven主路径

搭建MyBatis开发环境

添加依赖

在pom.xml中添加mybatis和mysql相关依赖

 

 

 

核心配置文件

 添加mybatis-config.xml核心配置文件

 在src/main/resource下新建添加mybatis-config.xml

 

 

 

 在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">

添加db资源包

在src/main/resource下新建->资源包,指定包名为db

 

 

 在新建的db资源包内写入mysql数据库链接信息

下面的代码有五行(包括注释)每行后面不能有空格,每个字母之间也不能有空格

#mysql数据库链接信息
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
username=root
password=root

 在mybatis-config.xml文件<configuration>标签中添加链接数据库相关代码

<!--    读取外部的数据源配置信息-->
    <properties resource="db.properties"></properties>

    <!--    指定类别名所在的包路径-->
    <typeAliases>
        <package name="com.example.demo"/>
    </typeAliases>

    <environments default="demo">
        <environment id="demo">
<!--            使用JDBC的事务管理器-->
            <transactionManager type="JDBC"></transactionManager>
<!--            以连接池方式连接mydql数据库-->
            <dataSource type="POOLED">
                <property name="driver" value="${driver}"/>
                <property name="url" value="${url}"/>
                <property name="username" value="${username}"/>
                <property name="password" value="${password}"/>
            </dataSource>

 添加SQL映射文件

在src/main/resources下新建一个mapper目录,在该目录下新建GradeMapper.xml文件

在GradeMapper.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>标签,并继续往<mapper>标签内添加数据库操作相关语句,例如

<!--com.example.demo.Dept.queryCount-->
<mapper namespace="com.example.demo.Dept"><!-- 名字空间自己随便,一般指定所用的类的位置 -->
    <select id="queryCount" resultType="Long">
        select count(1) from tb_dept
    </select>
</mapper>

 在mybatis-config.xml的dependencies标签下添加mapper文件的映射

<!--    mapper映射文件 -->
    <mappers>
        <mapper resource="mapper/GradeMapper.xml"></mapper>
    </mappers>

 添加实体类

新建一个java类用作数据库实体映射的实体类,添加属性和get/set以及toString方法,例如:

 

 

 构建myBatis的核心对象

新建一个MybatisTest用来测试

public class MybatisTest {

    public static void main(String[] args) {
        InputStream inputStream = null;
        SqlSessionFactoryBuilder builder = null;
        SqlSessionFactory sessionFactory = null;
        SqlSession session = null;

        try {
            // 读取mybatis-config.xml文件
            inputStream = Resources.getResourceAsStream("mybatis-config.xml");
            // 创建工厂构建器
            builder = new SqlSessionFactoryBuilder();
            // 创建会话工厂
            sessionFactory = builder.build(inputStream);
            // 创建会话
            session = sessionFactory.openSession();
          // 通过映射文件中的namespace.id的形式找到相对应的方法
          //此处添加查询、插入、更改、删除等数据库操作代码


        }
        catch (Exception e) {
            session.rollback();//插入、删除等commit()修改数据库的操作要写回滚函数
            e.printStackTrace();
        }
        finally {
            // 关闭会话
            session.close();
        }
    }
}            

 注意:此时导入的方法必须都是与mybatis有关的

 

 单元测试

添加依赖

在pom.xml的<dependencies>标签中添加Junit相关依赖

<!--        junit单元测试-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
        </dependency>

 添加测试类

在src/test目录下添加要测试的类的同名+Test新建类,如:关于Class的测试ClassTest
并在要测试的方法前使用@Test
在测试类中,添加要构造函数,例如:Example example=new Example();

public class ExampleTest {
    Example example=new Example();
    @Test
    public void add(){
        int s=example.add(10,20);
        System.out.println("s="+s);
    }
    @Test
    public void sum(){
        int sum =example.sum();
        System.out.println("sum="+sum);
    }
}

 数据库的简单操作

这篇关于Spring+Mybatis+Mysql的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!