好久没写博客了记录下写过的东西,别到时候又忘了

文章前提:前面开发项目的时候数据池一直用的阿里的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的更多相关文章

  1. spring boot+mybatis+swagger搭建

    环境概述 使用的开发工具:idea 2018 3.4 环境:jdk1.8 数据库:MariaDB (10.2.21) 包管理:Maven 3.5 Web容器:Tomcat 8.0 开发机系统:Wind ...

  2. spring boot + mybatis + druid

    因为在用到spring boot + mybatis的项目时候,经常发生访问接口卡,服务器项目用了几天就很卡的甚至不能访问的情况,而我们的项目和数据库都是好了,考虑到可能时数据库连接的问题,所以我打算 ...

  3. Spring boot Mybatis 整合(完整版)

    个人开源项目 springboot+mybatis+thymeleaf+docker构建的个人站点开源项目(集成了个人主页.个人作品.个人博客) 朋友自制的springboot接口文档组件swagge ...

  4. Spring boot Mybatis 整合(注解版)

    之前写过一篇关于springboot 与 mybatis整合的博文,使用了一段时间spring-data-jpa,发现那种方式真的是太爽了,mybatis的xml的映射配置总觉得有点麻烦.接口定义和映 ...

  5. Spring Boot中使用Swagger2构建强大的RESTful API文档

    由于Spring Boot能够快速开发.便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API.而我们构建RESTful API的目的通常都是由于多终端的原因,这 ...

  6. Spring Boot中使用Swagger2构建API文档

    程序员都很希望别人能写技术文档,自己却很不愿意写文档.因为接口数量繁多,并且充满业务细节,写文档需要花大量的时间去处理格式排版,代码修改后还需要同步修改文档,经常因为项目时间紧等原因导致文档滞后于代码 ...

  7. Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版

    一.前言 什么是MyBatis?MyBatis是目前Java平台最为流行的ORM框架https://baike.baidu.com/item/MyBatis/2824918 本篇开发环境1.操作系统: ...

  8. spring boot + mybatis + druid配置实践

    最近开始搭建spring boot工程,将自身实践分享出来,本文将讲述spring boot + mybatis + druid的配置方案. pom.xml需要引入mybatis 启动依赖: < ...

  9. spring boot+mybatis+quartz项目的搭建完整版

    1. 利用spring boot提供的工具(http://start.spring.io/)自动生成一个标准的spring boot项目架构 2. 因为这里我们是搭建spring boot+mybat ...

随机推荐

  1. 对es6中Promise和async的理解

    Promise var promise = new Promise((resolve,reject)=>{ resolve(value); //reject(value) }); //promi ...

  2. 性能优化之-------少用iframe

     1.DOM开销高 使用iframe的开销是很高的,在主页面中加载同等数量的div和iframe(标签内容都是空),iframe的耗时会比div的高1~2个数量级. 2.阻塞onload事件 在典型方 ...

  3. 浅析is和as两个关键词在类型转换时的使用

    is检查对象是否兼容与指定类型,返回Boolean值true或者false,值得注意的是,在使用is进行类型转换的时候是永远不会抛出异常的,例如: object o=new Object(); Boo ...

  4. linux系统下解决getch()输入数值不回显示

    在linux系统下开发C 程序却会遇到系统不支持conio.h头文件,无法使用getch()不回显函数.下面就演示如何构建函数实现数值输入不回显. #include <stdio.h> # ...

  5. JAVA的免费天气api接口调用示例

    step1:选择本文所示例的接口"免费天气api" url:https://www.juhe.cn/docs/api/id/39/aid/87 step2:每个接口都需要传入一个参 ...

  6. C# Ioc容器Unity,简单实用

    开头先吐槽一下博客园超级不好用,添加图片后就写不动字了,难道是bug 好进入正题,先来说下依赖注入,简单来说就是定义好接口,上层代码调用接口,具体实现通过配置文件方式去指定具体实现类. 首先我们需要通 ...

  7. javaWeb内置对象

    jsp内置对象是web容器创建的一组对象. jsp内置对象的名称是jsp的保留字. jsp内置对象是可以直接在jsp页面使用的对象,无需使用new获取实例. jsp九大内置对象 1.request 2 ...

  8. Golang源码探索(三) GC的实现原理

    Golang从1.5开始引入了三色GC, 经过多次改进, 当前的1.9版本的GC停顿时间已经可以做到极短. 停顿时间的减少意味着"最大响应时间"的缩短, 这也让go更适合编写网络服 ...

  9. 利用可变参数模拟Printf()函数实现一个my_print()函数和调用可变参数注意的陷阱!

    可变参数函数的实现与函数调用的栈结构密切相关,正常情况下C的函数参数入栈规则为__stdcall, 它是从右到左的,即函数中的最右边的参数最先入栈. 例如,对于函数: void test(char a ...

  10. cocos2dx3.0导出自定义类到lua的方法详细步骤

    我写了一个用3.0的工具导出类到lua,自动生成代码的方法. 以前要导出c++类到lua,就得手动维护pkg文件,那简直就是噩梦,3.0以后就会感觉生活很轻松了. 下面我就在说下具体做法.1.安装必要 ...