spring boot + mybatis + hikaricp + swagger2 + jasypt
好久没写博客了记录下写过的东西,别到时候又忘了
文章前提:前面开发项目的时候数据池一直用的阿里的druid,这个数据池吧也不能说它不好,为什么现在想改成hikaricp数据池呢,完全是实用项目需要。druid问题:
问题一:druid的问题出在它功能太多了,项目进本开发完了,然后发现这些功能根本就没用到,比如它的数据池监控界面什么的,根本就没人用过尴尬,还有它监控了很多东西,导致它拦截了很多东西,日志什么的都要拦截,实际项目开发的时候用到了很多的技术,很多次都是druid报错,就是它的拦截配置拦截的太厉害了,跟有的技术还有一些冲突,也不是不能解决,改下druidconfig的事情,但是做多了就烦了,这是最要人命的。
问题二:druid本身跟spring boot是不兼容的,需要写一个config文件注入到spring boot的配置文件中,这么写就算能用,但是在application.yml还是会报黄色警告,对于代码有强迫症的人来说有点难受,不过这都是小问题
问题三:druid的性能没有hikaricp好,尤其是在处理大量数据的时候效果跟明显,这也是小问题
总的来说hikaricp的功能正好是我们需要的,不多不少,性能还好就选上它了
demo功能简介: 就是基本的spring boot技术面向业务,mybatis跟数据库打交道,hikaricp数据池,swagger2生成在线文档,jasypt加密明文密码
这里就不一一记录了,亲测可用

然后项目开发完了以后需要关闭swagger2在线文档怎么关闭呢
步骤一:屏蔽swagger配置文件上的注解,这样就没有json数据了



这样就只剩下UI了,都没有json数据了空的UI
步骤二:屏蔽swaggerUI的包,任何整个项目swagger2就完全不能用了,就跟没有使用过swagger2一样。

配置文件明文密码加密问题:
第一步,导入一个最新版本的包:
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>1.16</version>
</dependency>
在主函数加入@EnableEncryptableProperties注解
第二步:生成加密密码
可以用jar命令生成,也可以用代码写

运行Test函数在控制台copy加密后的密码,然后加在配置文件里面
第三步,配置文件,foo那个是固定写法

jasypt的github地址:https://github.com/ulisesbocchio/jasypt-spring-boot
项目源码github地址:https://github.com/waterlufei/spring-boot,TestHirikacp项目
spring boot + mybatis + hikaricp + swagger2 + jasypt的更多相关文章
- spring boot+mybatis+swagger搭建
环境概述 使用的开发工具:idea 2018 3.4 环境:jdk1.8 数据库:MariaDB (10.2.21) 包管理:Maven 3.5 Web容器:Tomcat 8.0 开发机系统:Wind ...
- spring boot + mybatis + druid
因为在用到spring boot + mybatis的项目时候,经常发生访问接口卡,服务器项目用了几天就很卡的甚至不能访问的情况,而我们的项目和数据库都是好了,考虑到可能时数据库连接的问题,所以我打算 ...
- Spring boot Mybatis 整合(完整版)
个人开源项目 springboot+mybatis+thymeleaf+docker构建的个人站点开源项目(集成了个人主页.个人作品.个人博客) 朋友自制的springboot接口文档组件swagge ...
- Spring boot Mybatis 整合(注解版)
之前写过一篇关于springboot 与 mybatis整合的博文,使用了一段时间spring-data-jpa,发现那种方式真的是太爽了,mybatis的xml的映射配置总觉得有点麻烦.接口定义和映 ...
- Spring Boot中使用Swagger2构建强大的RESTful API文档
由于Spring Boot能够快速开发.便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API.而我们构建RESTful API的目的通常都是由于多终端的原因,这 ...
- Spring Boot中使用Swagger2构建API文档
程序员都很希望别人能写技术文档,自己却很不愿意写文档.因为接口数量繁多,并且充满业务细节,写文档需要花大量的时间去处理格式排版,代码修改后还需要同步修改文档,经常因为项目时间紧等原因导致文档滞后于代码 ...
- Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版
一.前言 什么是MyBatis?MyBatis是目前Java平台最为流行的ORM框架https://baike.baidu.com/item/MyBatis/2824918 本篇开发环境1.操作系统: ...
- spring boot + mybatis + druid配置实践
最近开始搭建spring boot工程,将自身实践分享出来,本文将讲述spring boot + mybatis + druid的配置方案. pom.xml需要引入mybatis 启动依赖: < ...
- spring boot+mybatis+quartz项目的搭建完整版
1. 利用spring boot提供的工具(http://start.spring.io/)自动生成一个标准的spring boot项目架构 2. 因为这里我们是搭建spring boot+mybat ...
随机推荐
- 聊聊java基础,int值强制类型转换成byte
聊聊java基础,int值强制类型转换成byte 知识点:byte.short.char在表达式中会自动提升为int 之前做一个应用时,打印IP地址,因为是用4个byte存储的,所以打印的时候值范围是 ...
- C++头文件的处理
C++的头文件比自己想的要复杂,不是简单地添加自己需要的头文件,这当中有一定的规律.简单归于以下几点: 1.非stadfx.h的头文件必须要有#pragma once的编译提示符,具体原因也不明白. ...
- HDU 5242 Game(三个贪心)
Game Time Limit: 3000/1500 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- 最长公共子序列Lcs(打印路径)
给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的). 比如两个串为: abcicba abdkscab ab是两个串的子序列,abc也是,abca也是,其中abca是这 ...
- Game of Connections
Game of Connections Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- javascript 之变量对象-09
变量对象 变量对象:每个执行环境(执行上下文)都有一个对应的变量对象(variable object),环境中(执行上下文中)定义的所有变量.函数都保存在这个对象中. 在上篇中说到,当执行流执行一个函 ...
- 【转载】以Java的视角来聊聊SQL注入
以Java的视角来聊聊SQL注入 原创 2017-08-08 javatiku Java面试那些事儿 在大二就接触过sql注入,之前一直在学习windows逆向技术,认为web安全以后不是自己的从业方 ...
- 全局作用域 eval
eval是在caller的作用域里运行传给它的代码: var x = 'outer'; (function() { var x = 'inner'; eval('x'); // & ...
- 修改oracle服务器端字符集
----设置字符集步聚------- conn /as sysdba; shutdown immediate; startup mount; alter system enable restricte ...
- Codeforces 862A Mahmoud and Ehab and the MEX
传送门:CF-862A A. Mahmoud and Ehab and the MEX time limit per test 2 seconds memory limit per test 256 ...