0


【项目实战】Spring Boot项目整合Jetty、MySQL、Redis和MongoDB

本专栏将为大家总结项目实战相关的知识! 点击即可关注本专栏,获取更多知识!

文章目录


前言

一、配置Jetty服务器

默认情况下,SpringBoot集成了Tomcat服务器,但是在高并发的WebSocket环境下,Jetty比Tomcat更加适合,所以我们需要把Tomcat替换成Jetty。

1.引入Jetty依赖库

在pom.xml文件中,添加Jetty依赖库

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

除了加入Jetty的依赖,我们还需要剔除掉SpringBoot捆绑的Tomcat服务器

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><!--这里是新加的内容--><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></exclusion></exclusions></dependency>

2.配置YML文件

默认情况下,SpringBoot项目的配置文件是properties文件,你要把这个文件改成yml文件。

server:#jetty配置jetty:threads:acceptors:4selectors:8port:8090servlet:#启动时使用路径context-path: /test
    multipart:max-request-size: 10MB
      max-file-size: 2MB

二、配置MySQL、Redis和MongoDB数据库

因为这里我们使用到Mysql,那么我们就需要为Mysql增加线程池依赖。同时我们也需要为Redis增加Jedis的依赖。

Jedis是基于java语言的redis客户端,它集成了redis的命令操作,提供了连接池管理。

这里要注意Spring Boot 1.x 的版本默认采用的连接池技术是 Jedis,我们就不需要显式的为项目添加依赖,但是Spring Boot 2.0 以上版本默认连接池是 Lettuce,这时候我们如果采用 Jedis,需要排除 Lettuce 的依赖。

1.引入连接池依赖

因为druid连接池性能比dbcp、c3p0高很多,所以我们一般使用druid连接池。

<!-- druid连接池依赖 --><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.13</version></dependency><!-- spring data redis 组件 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId><!--排除 Lettuce 的依赖--><exclusions><exclusion><groupId>io.lettuce</groupId><artifactId>lettuce-core</artifactId></exclusion></exclusions></dependency><!-- 加入jedis 依赖 --><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId></dependency>

2.引入数据库依赖

如果上面你在排除 Lettuce 的依赖的步骤中已经导入了Redis依赖,这里就不需要再次导入Redis依赖了。

<!--MySQL驱动--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><!--mongodb数据库--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId></dependency><!--redis数据库--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>

3.配置YML文件

在配置YML文件的时候特别要注意在

:

后面有一个空格!

spring:#MySQL数据库datasource:type: com.alibaba.druid.pool.DruidDataSource
    druid:driver-class-name: com.mysql.cj.jdbc.Driver
      url: jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=trueusername: 用户名
      password: 用户密码
      #初始连接数,默认0initial-size:2#最大连接数,默认8max-active:4#最小闲置数min-idle:4##获取连接的最大等待时间,单位毫秒max-wait:60000#失效连接主要通过test-while-idle保证#如果获取到了不可用的数据库连接,一般由应用处理异常。test-while-idle:true#test-on-borrow和test-on-return在生产环境一般是不开启的,主要是性能考虑。test-on-borrow:falsetest-on-return:false#redis数据库redis:database:0host: localhost
    #端口号port:6379password: 数据库密码
    #配置jedisjedis:pool:# 最大连接数,默认8max-active:1000# 最大连接阻塞等待时间,单位毫秒,默认-1msmax-wait:-1ms
        # 最大空闲连接,默认8max-idle:16# 最小空闲连接,默认0min-idle:8#mongodb数据库data:mongodb:host: localhost
      #端口号port:27017database: 数据库名
      # 登录用户所在的数据库authentication-database: admin
      username: 用户名
      password: 用户密码

结语

到这里我们Spring Boot项目对Jetty、MySQL、Redis和MongoDB的整合就完成了,我们启动Spring Boot项目如果控制台没有报错就说明你成功了!

🏳️‍🌈点击可关注本专栏,学习更多知识!

标签: spring boot jetty mysql

本文转载自: https://blog.csdn.net/apple_51673523/article/details/127657984
版权归原作者 abcccccccccccccccode 所有, 如有侵权,请联系我们删除。

“【项目实战】Spring Boot项目整合Jetty、MySQL、Redis和MongoDB”的评论:

还没有评论