首页 > 其他分享 >SpringBoot 整合

SpringBoot 整合

时间:2024-08-21 11:30:39浏览次数:8  
标签:mapper 启动器 SpringBoot spring boot 整合 mybatis org

SpringBoot 整合

 

1. SpringBoot整合SpringMVC

和创建一个 SpringBoot项目相同,需要导入web 相关 的启动器,创建Controller即可

在yaml配置文件中,常用配置有:

  • server.port :指定服务器端口号

  • server.servlet.context.path:设置项目的根路径

  • spring.mvc.view.prefix 和 spring.mvc.view.suffix 配置视图解析器的前后缀

  • spring.resources.static-locations:配置静态资源的位置

    如果不配置,默认静态资源放在

    • classpath:/META-INF/resources/

    • classpath:/resources/

    • classpath:/static/

    • classpath:/public/

    如果配置了自己指定的存放位置,那么原先这些默认的就失效了

  • spring.http.encoding.charset 和 spring.http.encoding.enabled 配置http请求和响应的字符编码

 

拦截器的配置,和之前一样,创建一个自定义的拦截器类。创建一个配置类(只要放在启动类所在的包下,就能被扫描到),该配置类实现 WebMvcConfigurer,重写addInterceptors

 

2. SpringBoot 整合 MyBatis

  1. 导入依赖

    包括 mybatis相关启动器、数据库jdbc相关启动器(事务管理器)、druid相关启动器、mysql驱动类

    <dependencies>
        <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>3.0.1</version>
        </dependency>
    ​
        <!-- 数据库相关配置启动器 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
    ​
        <!-- druid启动器的依赖  -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-3-starter</artifactId>
            <version>1.2.23</version>
        </dependency>
    ​
        <!-- 驱动类-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.28</version>
        </dependency>
    ​
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.28</version>
        </dependency>
    ​
    </dependencies>
  2. 创建mapper接口和mapper的xml文件,这里不需要他们的路径相同

  3. 创建yaml 配置文件,注意之前的mybatis-config 中的内容也写在该文件中

    还有 druid 的配置

    #druid 连接池
    spring:
      datasource:
        type: com.alibaba.druid.pool.DruidDataSource
        username: root
        password: 123456
        url: jdbc:mysql://localhost:3306/mybatis-example
        driver-class-name: com.mysql.cj.jdbc.Driver
    ​
    ​
    #mybatis 配置 setting、别名 mapper等
    mybatis:
      mapper-locations: classpath:/mapper/*.xml  #指定mapper xml文件
      type-aliases-package: com.ztone.pojo  #别名配置
      configuration:
        map-underscore-to-camel-case: true  #驼峰式
        auto-mapping-behavior: full   #多层映射
        log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl  #日志
  4. 创建启动类,在启动类上使用 @MapperScan 指定mapper 接口

    @MapperScan("com.ztone.mapper")
    @SpringBootApplication
    public class Main {
        public static void main(String[] args) {
            SpringApplication.run(Main.class,args);
        }
    }

 

关于事务

在springboot 中使用事务,只需要导入 数据库jdbc相关启动器,在相关方法上使用

@Transactional 注解即可

 

关于AOP

在springboot中使用 aop,和事务一样导入 aop相关的启动器

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-aop</artifactId>
</dependency>

直接创建切面类即可

@Component
@Aspect
@Order(1)
public class LogAdvice {
​
    @Before("execution(* com.ztone.controller.*.*(..))")
    public void before(JoinPoint point){
        String name = point.getSignature().getName();
        System.out.println(name + "开始执行了");
    }
}

 

3. springboot 项目打包和运行

springboot 项目打成的包 是 jar 包,因为内置了服务器,可以直接通过 java命令启动

打包springboot项目,首先导入一个插件,否则运行时找不到入口

<!--    SpringBoot应用打包插件-->
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

然后使用 maven的打包命令或插件即可,生成了一个 jar文件

运行命令:

java -jar [选项] [参数] <jar文件名>

  • -D 设置系统属性,比如设置端口号、设置激活的配置文件

    • -Dserver.port=80

    • -Dspring.profiles.active=dev

  • -X 设置 jvm 参数、例如内存大小、垃圾回收策略

标签:mapper,启动器,SpringBoot,spring,boot,整合,mybatis,org
From: https://www.cnblogs.com/wztblogs/p/18371245

相关文章

  • 基于Java+SpringBoot+Vue的房屋租赁管理系统的设计与实现
    基于Java+SpringBoot+Vue的房屋租赁管理系统的设计与实现前言✌全网粉丝20W+,csdn特邀作者、博客专家、CSDN[新星计划]导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌......
  • 【SpringBoot实用小知识】SpringBoot在运行时更新配置信息
    SpringBoot运行时更改配置信息前言准备思路编码测试用数据库配置表基础配置抽象类测试配置实现类定义Controller接收测试最后前言对于很多项目而言都需要配置来进行一些服务的设定如果每次更改配置文件并重启那么有些太浪费时间我们可不可以通过请求修改配置......
  • springboot自动配置原理-面试题
    网络上看很多文章并没什么用,重点没说到,不知道从那里入手讲,刷到的直接按照下面这个,背出来就行了1、当启动springboot应用程序的时候,会先创建SpringApplication的对象,在对象的构造方法中会进行某些参数的初始化工作,最主要的是判断当前应用程序的类型以及初始化器和监听器,在这个......
  • 基于springboot万里学院摄影社团管理系统(源码+文档+调试+讲解)
    收藏关注不迷路!!......
  • springboot怎么配置多个yml文件
    目录方式一:多个yml文件方式二:单个yml文件方式三:在pom.xml中指定环境配置掌握方式一就够了,方式二、三可以不看以下三种方式都可以实现多环境的配置。在application.yml主配置文件中做项目通用的配置,在其他配置文件中做不同环境下的配置,以避免重复配置的情况。方式......
  • 【2025毕设热门选题】《基于SpringBoot+Vue的校园资产管理系统》功能规划和开题报告
    博主介绍:8年资深码农、211小硕,全网10万+粉丝。文科生转码,所以非常懂小白学习历程。java领域优质创作者,擅长小白基础课程教学和项目讲解辅导。专注于Java技术领域和大学生毕业项目实战讲解已经5年,服务10000+小白客户。技术范围:自己手撸SpringBoot、Vue、javaweb网站、小程......
  • SpringBoot Bean工具类 普通类环境中获取Bean
    通过实现BeanFactoryPostProcessor和ApplicationContextAware接口,可以在Spring容器启动时注入BeanFactory和ApplicationContext。importorg.springframework.aop.framework.AopContext;importorg.springframework.beans.BeansException;importorg.springframework.bean......
  • 【工具使用】【SpringBoot】【P6spy】P6spy 的使用
    1 前言今儿在看 HikariCP数据库连接池实战我主要是想看下,连接的管理、连接的获取及释放。但是看到第五章的时候,书中提到P6spy,说是能很容易监控到JDBC中执行的SQL语句。那我们平时SpringBoot微服务对数据的操作,不管是JDBCTemplate、还是Mybatis、Hibernate最后的落点......
  • 《深入探究 @SpringBootApplication 注解的内部原理》
    《深入探究@SpringBootApplication注解的内部原理》@SpringBootApplication注解涵盖了SpringBoot的包扫描原理、自动装配原理等众多重要原理。接下来,我们将对该注解展开深入且详尽的研究。而研究上述原理的关键,在于剖析@SpringBootApplication内部的构成结构,如下图:......
  • springboot投票管理系统-计算机毕业设计源码33128
    摘 要本文介绍了基于微信小程序和SpringBoot的投票管理系统的设计与实现。该系统结合了移动互联网技术和后端开发框架,旨在为各类组织或活动提供一个高效、便捷、用户友好的在线投票平台。系统采用微信小程序作为前端展示与交互界面,用户无需下载安装即可通过微信快速访问......