SpringBoot整合Mybatis,Junit (复现之前写的一个SSM项目)

引言

如下是之前写的一个SSM项目(纯注解版),现在我们要把它改造成一个SpringBoot项目,以体现SpringBoot的方便。主要需要关注的文件已经用红框标出。

1.config文件夹里面的是Spring,SpringMvc,Mybatis的配置文件。

2.mapper文件夹里面是实体类的mapper接口,对应地,resource下的mapper文件夹里面是对应的mapper映射文件。

3.db.properties文件里面指定了有关数据库的相关配置

4.webapp文件夹里面存放我们项目的网页资源(html,css等)

5.test文件夹下的TestUser是用测试用的(用junit)

***************************************************************************************************

用SpringBoot复现SSM项目 

1.首先先创建一个SpringBoot项目

选择mybatis需要的起始依赖 

 

选择Web(因为是web项目)

创建项目成功后,在Setting中把编码改成utf-8,不然yml文件里面写中文会乱码

2.导入需要的依赖

SpringBoot已经把Spring SpringMvc相关的事情都帮我们做好了,web相关,mybatis的起始依赖我们创项目的时候已经导入 ,我们只需要导入自己项目中额外添加的依赖

        <!--        TODO 加入必要的依赖-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <!--    token-->
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>0.9.1</version>
        </dependency>

        <!--        基于java,需要引入这个-->
        <dependency>
            <groupId>com.auth0</groupId>
            <artifactId>java-jwt</artifactId>
            <version>3.4.0</version>
        </dependency>
        <!--        druid-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.16</version>
        </dependency>

实体类我用了@Data,所以要加Lombok。

会话跟踪用来jwt,导入jwt的依赖。

用了druid数据源,当然不配也可以,不配的话会使用springboot内置的数据源。

3.把SSM项目需要的文件夹拷贝过来

要拷过来的文件夹已经用红框标出

4.SpringBoot整合SSM项目

4.0 SpringBoot整合Spring ,SpringMvc

不用做,创建项目时候已经整合好了,下面解释。

4.1SpringBoot整合Mybatis

首先我们先把config文件夹删掉。

为什么我们敢把放配置的文件夹给删了呢?让我们打开pom文件 

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.2.2</version>
        </dependency>

        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-j</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

这些依赖已经帮我们完成了Spring,SpringMvc,Mybatis的配置了,只能说对SpringBoot真是相见恨晚!

 此外,SpringBoot整合Mybatis,我们唯一需要做的,只有如下两件事

4.1.1配置数据库 (前面的db.properties文件所做的事)

当然我们首先把db.properties文件删掉,感谢它前面所作出的贡献。然后打开resource文件夹下的application.yml文件(先把后缀改成yml),配置端口和数据库

这里指定了druid数据源,不配的话也没有关系,springboot有内置的默认数据源供你使用。 

注意:

1.Mysql版本大于8.0时,更推荐使用 com.mysql.cj.jdbc.Driver

SpringBoot 版本低于2.4.3(不含),Mysql驱动版本大于8.0时,需要在url连接串中配置时区。 jdbc:mysql://localhost:3306/db_name?serverTimezone=UTC ,或在MySQL数据库端配置时区解决此问题

4.1.2  在mapper接口使用@Mapper注解

把mapper文件夹里面的所有mapper接口上面的@Repository注解换成@Mapper注解,@Mapper可以让SpringBoot扫描到它,并生成它的动态代理对象。

4.2SpringBoot整合Junit

只需要在测试类上打上@SpringBootTest,测试方法上面打上@Test即可,其他什么都不用干!

@SpringBootTest
public class TestUser {
    @Autowired
    private UserMapper userMapper;

    @Test
    void test01(){
        List<User> users = userMapper.selectAll();
        System.out.println(users);
    }
}

前面已经整合好了ssm,测试一下test01

4.3网页资源处理

由于此项目前端是用Vue3实现的,因此这里并没有静态资源。

如果项目有静态网页资源的话,放在static文件夹里面就好了。

 现在我们启动springboot项目,看一下能否访问index.html

至此,我们已经成功用SpringBoot复现了一个SSM项目

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值