202105-15 springboot项目整合druid数据库连接池的实现 Druid连接池是阿里巴巴开源的数据库连接池项目,后来贡献给Apache开源;Druid的作用是负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;Druid连接池内置强大的监控功能,其中的StatFilter功能,能采集非常完备的连接池执行信息,方便进行监控,而监控特性不影响性能。Druid连接池内置了一个监控页面,提供了非常完备的监控信息,可以快速诊断系统的瓶颈。SpringBoot1.x版本默... 继续阅读 >
202105-15 springboot项目整合mybatis并配置mybatis中间件的实现 记录创建springboot项目并配置mybatis中间件:资源准备及版本说明编程工具:IDEAJDK版本:1.8Maven版本:ApacheMaven3.6.3springboot版本:2.4.4mybatis版本:1.3.2mysql版本:5.1.48创建mavem项目通过IDEA创建很便捷,参考《IDEA创建SpirngBoot项目》。配置pom.xml使用mybatis需要添加依赖<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.... 继续阅读 >
202105-15 springBoot系列常用注解(小结) @PropertySource作用是:对自定义的properties文件加载使用:@PropertySource(value={"classpath:people.properties"})或者@PropertySource(value="classpath:people.properties")properties文件,获取到值乱码问题乱码解决:file->settings-->fileencoding--> 勾选Transparentnative-to-ascillconversion@ImportResource作用:可以让spring的配置文件生效使用:在启用类上加ImportResource注解,如@ImportResource(valu... 继续阅读 >
202105-09 springboot结合mysql主从来实现读写分离的方法示例 1.实现的功能 基于springboot框架,application.yml配置多个数据源,使用AOP以及AbstractRootingDataSource、ThreadLocal来实现多数据源切换,以实现读写分离。mysql的主从数据库需要进行设置数据之间的同步。2.代码实现 application.properties中的配置spring.datasource.druid.master.driver-class-name=com.mysql.jdbc.Driverspring.datasource.druid.master.url=jdbc:mysql://127.0.0.1:3... 继续阅读 >
202105-09 springboot结合mysql主从来实现读写分离的方法示例 1.实现的功能 基于springboot框架,application.yml配置多个数据源,使用AOP以及AbstractRootingDataSource、ThreadLocal来实现多数据源切换,以实现读写分离。mysql的主从数据库需要进行设置数据之间的同步。2.代码实现 application.properties中的配置spring.datasource.druid.master.driver-class-name=com.mysql.jdbc.Driverspring.datasource.druid.master.url=jdbc:mysql://127.0.0.1:3... 继续阅读 >
202105-02 SpringBoot+Shiro+LayUI权限管理系统项目源码 1.项目介绍本项目旨在打造一个基于RBAC架构模式的通用的、并不复杂但易用的权限管理系统。通过本项目可以较好的理解权限系统的常见业务同时学习掌握Springboot和Shiro等诸多技术点。2.项目源码百度网盘链接:链接:https://pan.baidu.com/s/1GGTe_uf0H7CvMQBP_NCRxg提取码:1jwr3.功能介绍部门管理对于一个公司来说,下设众多部门。此处以组织机构树形式动态扩展。角色管理包括角色信息的增删改查、权限授予、取消操作。权限管理包... 继续阅读 >
202105-02 SpringBoot+JavaMailSender实现腾讯企业邮箱配置 1.引入spring-boot-starter-mail依赖包<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency>2.在application.yml配置邮箱基本信息 spring:mail:host:smtp.exmail.qq.comport:465username:xxx@xx.compassword:xxxxprotocol:smtpproperties:mail:smtp:... 继续阅读 >
202105-02 基于注解的springboot+mybatis的多数据源组件的实现代码 通常业务开发中,我们会使用到多个数据源,比如,部分数据存在mysql实例中,部分数据是在oracle数据库中,那这时候,项目基于springboot和mybatis,其实只需要配置两个数据源即可,只需要按照dataSource-SqlSessionFactory-SqlSessionTemplate配置好就可以了。如下代码,首先我们配置一个主数据源,通过@Primary注解标识为一个默认数据源,通过配置文件中的spring.datasource作为数据源配置,生成SqlSessionFactoryBean,最终,... 继续阅读 >
202105-02 SpringBoot Admin2.0 集成Arthas的实现步骤 项目最初使用Arthas主要有两个目的:通过arthas解决实现测试环境、性能测试环境以及生产环境性能问题分析工具的问题。通过使用jad、mc、redefine功能组合实现生产环境部分节点代码热更新的能力。技术选型相关因为公司还未能建立起较为统一的生产微服务配置以及状态管理的能力,各自系统的研发运维较为独立。现在项目使用了SpringCloud以及Eureka的框架结构,和SBA的基础支撑能力较为匹配,同时,SBA已经... 继续阅读 >
202104-27 详解SpringBoot中关于%2e的Trick 分享一个SpringBoot中关于%2e的小Trick。先说结论,当SpringBoot版本在小于等于2.3.0.RELEASE的情况下,alwaysUseFullPath为默认值false,这会使得其获取ServletPath,所以在路由匹配时会对%2e进行解码,这可能导致身份验证绕过。而反过来由于高版本将alwaysUseFullPath自动配置成了true从而开启全路径,又可能导致一些安全问题。这里我们来通过一个例子看一下这个Trick,并分析它的原因。首先我们先来设置SprinBoot版本<par... 继续阅读 >
202104-27 Springboot添加支付接口 1.支付宝支付接口(沙箱实现)1.1支付宝沙箱账号获取官网此处作者已经申请了一个沙箱账号,申请过程就不再赘述如下图:此处可以自行设置账户金额1.2下载客户端(目前好像只支持Android)下载完成后根据官方提供的账号以及密码登录手机端支付宝账号如图(商家账号):1.3代码配置工具类AlipayConfigpublicclassAlipayConfig{//↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓//应用ID,您... 继续阅读 >
202104-27 @SpringBootApplication注解的使用 一、前言大部分的配置都可以用Java类+注解来代替,而在SpringBoot项目中见的最多的莫过于@SpringBootApplication注解了,它在每个SpringBoot的启动类上都有标注。这个注解对SpringBoot的启动和自动配置到底有什么样的影响呢?本文将为各位大佬解析它的源码,揭开@SpringBootApplication注解神秘的面纱。二、正文对SpringBoot工程的自动配置很感兴趣,于是学习其源码并整理了其中一些内容,如果有错误请大家指正~话不多说,直接上源... 继续阅读 >
202104-27 SpringBoot整合阿里云OSS对象存储服务实现文件上传 1.准备工作:一、首先登录阿里云OSS对象存储控制台创建一个Bucket作为你的存储空间。二、创建AccessKeyan按要求创建进行,这里的方法步骤我就不展现出来了,你们可以自行查询阿里云文档,这个获取值本身就不难。重点:记下你的AccessKeyID、AccessKeySecret以及你刚才创建的Buacket名字BucketName。2.配置:在pom里引入oss要用的依赖<dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artif... 继续阅读 >
202104-27 IDEA 中创建SpringBoot 父子模块的实现 新建父级项目父级模块添加完成!添加子模块在父级模块又击选择new==>Moudule创建方式与父级模块创建大致一致,唯一不同的是将Type改为MavenProject打开父级项目demo-parent下的pom.xml文件复制以下三行配置信息打开子项目demo-son下的pom.xml文件将parent节点下的前三行代码替换成为刚刚复制的那三行,如下显示最后,在demo-parent模块下的pom.xml文件下新建modules节点,并添加子模块<modules><module>demo-s... 继续阅读 >
202104-27 SpringBoot集成Spring security JWT实现接口权限认证 1、添加依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId></dependency><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.9.1</version></dependency>2、集成JWT工具类(JwtUtils)packagecom.dreamteam.chdapp.utils;importio.jsonwebtoken.Jwts;importio.jsonwebtoken.SignatureAlgorithm;impor... 继续阅读 >
202104-27 SpringBoot整合Swagger2的步骤详解 简介swagger是一个流行的API开发框架,这个框架以“开放API声明”(OpenAPISpecification,OAS)为基础,对整个API的开发周期都提供了相应的解决方案,是一个非常庞大的项目(包括设计、编码和测试,几乎支持所有语言)。springfox大致原理:springfox的大致原理就是,在项目启动的过种中,spring上下文在初始化的过程,框架自动跟据配置加载一些swagger相关的bean到当前的上下文中,并自动扫描系统中可能需要生成api文档那些类... 继续阅读 >