Spring家族
文章平均质量分 92
Spring/SpringBoot/SpringSecurity......
氷泠
这个作者很懒,什么都没留下…
展开
-
Spring Boot demo系列(十二):ShardingSphereJDBC + MyBatisPlus 分库分表 + 读写分离
1 概述之前笔者写过两篇文章:ShardingSphere 读写分离ShardingSphere 分库分表这里将两者结合起来,实现读写分离+分库分表的功能。关于环境的配置本文将进行简化叙述,详细可以参考前两篇文章。2 环境MySQL 8.0.25(Docker)MyBatis Plus 3.4.3.1MyBatis Plus Generator 3.5.0Druid 1.2.6ShardingSphere 4.1.1Yitter 1.0.6(一个雪花id生成器)3 数据库环境原创 2021-07-07 14:48:43 · 894 阅读 · 1 评论 -
Spring Boot demo系列(十一):ShardingSphereJDBC + MyBatisPlus 分库分表
1 概述本文主要讲述了如何使用ShardingSphere(其中的Sharding-JDBC)和MyBatisPlus进行分库分表,具体步骤包括:准备数据库环境准备依赖编写配置文件测试2 准备数据库环境2.1 两库六表准备好两个库:test0test1在两个库中分别建立三个字段一样的表:user0user1user2字段如下:这样就准备了两个库以及其中的六个表了。2.2 (可选)MyBatis Plus Generator代码生成表因为MyBatis Pl原创 2021-07-06 16:24:49 · 2302 阅读 · 0 评论 -
Spring Boot demo系列(十):ShardingSphereJDBC + MyBatisPlus 读写分离 + 主从复制
1 概述本文讲述了如何使用MyBatisPlus+ShardingSphere进行读写分离,以及利用MySQL进行一主一从的主从复制。具体步骤包括:MySQL主从复制环境准备(Docker)搭建ShardingShpere+MyBatisPlus+Druid环境测试2 环境OpenJDK 11.0.11Spring Boot 2.5.1MyBatis Plus 3.4.3.1MyBatis Plus Generator 3.5.0Druid 1.2.6ShardingSpher原创 2021-06-25 17:58:51 · 3616 阅读 · 3 评论 -
Spring Boot demo系列(九):MyBatis Plus Generator代码生成
1 前言MyBatis Plus starter最近更新了3.4.3.1版本,而MyBatis Plug Generator更新到了3.5.0版本,但是官方文档还没有更新生成器的代码,另外在之前的文章里介绍过MyBatis Plus的使用,因此这里补上一篇文章结合Spring Boot介绍代码生成器的使用。2 为什么需要代码生成器使用代码生成器可以生成一些固定模板的代码,比如:Controller层代码Service层代码mapper实体类比如一个User类可以生成如下代码:3 环境原创 2021-06-25 00:39:55 · 633 阅读 · 1 评论 -
SpringBoot+Gradle构建多模块项目
1 概述Gradle由于构建速度比Maven快,且比Maven灵活,因此很多后端的应用都使用了Gradle进行构建,但一个问题是,Gradle的多模块项目比较难构建,再加上Gradle的更新非常快,这就给构建一个多模块Gradle项目造成了不少的困难。基于此出发点,本文提供了两种形式的使用Gradle构建的Spring Boot多模块项目:Java + GradleKotlin + Gradle + Kotlin DSL为了减少出现各种错误的概率,步骤做得非常详细(多图预警),文末也附上了源码原创 2021-03-02 20:38:04 · 10255 阅读 · 3 评论 -
Spring Boot demo系列(八):Redis缓存
1 概述本文演示了如何在Spring Boot中将Redis作为缓存使用,具体的内容包括:环境搭建项目搭建测试2 环境RedisMySQLMyBatis Plus3 Redis安装Redis安装非常简单,以笔者的Manjaro为例,直接paru安装:paru -S redisUbuntu、CentOS之类的都提供了软件包安装:sudo apt install redissudo yum install redis如果想从源码编译安装:wget http://dow原创 2021-02-24 01:41:45 · 605 阅读 · 0 评论 -
后端Spring Boot+前端Android交互+MySQL增删查改(Java+Kotlin实现)
1 前言&概述这篇文章是基于这篇文章的更新,主要是更新了一些技术栈以及开发工具的版本,还有修复了一些Bug。本文是SpringBoot+Android+MySQL的增删查改的简单实现,用到的技术包括Jackson、OkHttp、bouncycastle、Spring Data JPA。2 环境Android 4.1.2IDEA 2020.3.1Spring Boot 2.4.2MySQL 8.0.23OpenJDK 11环境准备就略过了,需要的可以参考这里。3 后端3.1原创 2021-01-27 09:55:20 · 5259 阅读 · 15 评论 -
Spring Boot demo系列(七):Jasypt
1 概述Jasypt是一个加密库,Github上有一个集成了Jasypt的Spring Boot库,叫jasypt-spring-boot,本文演示了如何使用该库对配置文件进行加密。2 依赖首先添加依赖:<dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId>jasypt-spring-boot-starter</artifactId>原创 2020-09-24 18:28:25 · 1376 阅读 · 1 评论 -
Spring Boot demo系列(六):Swagger
1 概述Swagger主要用于生成API文档,本文演示了如何使用目前最新的OpenAPI3以及Swagger来进行接口文档的生成。2 依赖<dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-ui</artifactId> <version>1.4.7</version></dependen原创 2020-09-23 23:37:56 · 453 阅读 · 0 评论 -
Spring Boot demo系列(五):邮件服务
1 概述Spring Boot整合邮件服务,包括发送普通的文本邮件以及带附件的邮件。2 邮箱选择这里选择的是QQ邮箱作为发送的邮箱,当然也可以选择其他的邮箱,只是具体的配置不一样。使用QQ邮箱的话,需要在个人设置中开启SMTP服务:发送短信后完成验证:3 具体实现3.1 依赖提供了starter:<dependency> <groupId>org.springframework.boot</groupId> <artifactI原创 2020-09-18 22:58:03 · 605 阅读 · 0 评论 -
Spring Boot demo系列(四):Docker部署
1 概述本文讲述了如何使用Docker部署Spring Boot应用,环境如下:服务器:aarch64 CentOS8JDK:OpenJDK 11Docker Server:18.09.1TODO2 Docker安装由于大部分的教程都是针对x86架构的服务器的,这里笔者的服务器为aarch64架构,因此在处理JDK等的软件时需要注意使用aarch64。Docker安装方法主要有两种,一种是通过官网的脚本自动安装,一种是通过yum手动安装。2.1 自动安装curl -fsSL http原创 2020-09-15 00:47:40 · 427 阅读 · 0 评论 -
Spring Boot demo系列(三):Spring Web+Validation
文章目录1 概述2 校验3 `Hibernate Validator`4 基本使用5 异常处理6 快速失败模式7 `@Valid`与`@Validated`7.1 分组7.2 组序列8 自定义注解9 来点`AOP`9.1 依赖9.2 验证注解9.3 字段验证9.4 定义验证器10 参考源码1 概述本文主要讲述了如何使用Hibernate Validator以及@Valid/@Validate注解。2 校验对于一个普通的Spring Boot应用,经常可以在业务层看到以下类似的操作:if(id ==原创 2020-09-09 22:56:29 · 535 阅读 · 0 评论 -
Spring Boot demo系列(二):Spring Web+MyBatis Plus
文章目录1 概述2 `dao`层2.1 `BaseMapper`2.2 `IService`3 `Controller`层4 其他4.1 实体类4.2 配置类4.3 配置文件4.4 数据库5 测试6 源码1 概述Spring Web+MyBatis Plus的一个Demo,内容和上一篇类似,因此重点放在MyBatis Plus这里。2 dao层MyBatis Plus相比起MyBaits可以简化不少配置,能够使用代码生成器快速生成Entity、Mapper等各个模块的代码。另外,对于普通的CRUD提原创 2020-09-07 21:47:18 · 406 阅读 · 0 评论 -
Spring Boot demo系列(一):Hello World
文章目录1 新建工程2 Hello World3 源码1 新建工程打开IDEA选择新建工程并选择Spring Initializer:可以在Project JDK处选择JDK版本,下一步是选择包名,语言,构建工具以及打包工具等,这里选择的是Java+Maven+Jar:再下一步是选择依赖,一般来说Spring Boot应用都需要以下四个基础依赖:最后一步是填上工程名以及路径:这样一个Demo就完成了,项目结构如下:2 Hello World在启动类输入即可:然后在可以点上面的绿原创 2020-09-05 14:45:53 · 331 阅读 · 0 评论 -
SpringBoot-如何设计优秀的后端接口?
1 概述2 新建工程打开熟悉的IDEA,选择依赖如下:首先创建如下文件:TestController.java:@RestController@RequestMapping("/")@CrossOrigin(value = "http://localhost:3000")@RequiredArgsConstructor(onConstructor = @__(@Autowired))public class TestController { private final Test原创 2020-08-13 12:00:53 · 1217 阅读 · 0 评论 -
JavaFX+SpringBoot+验证码功能的小型薪酬管理系统
1 概述2 前端部分2.1 前端概述前端部分主要分成5个部分实现:视图模块,控制模块,日志模块,网络模块,工具类模块.其中,视图模块用于展示UI控件,控制模块主要负责视图中的事件处理,日志模块部分使用了log4j2框架,再加上自己实现的一些工具类日志函数(主要是控制输出格式与种类),网络模块包括两大部分,一部分是关于OkHttp框架的,用于发送数据到后端,另一部分为验证码部分,这部分不需要后...原创 2020-06-06 16:22:42 · 3443 阅读 · 4 评论 -
@Scheduled注解
1 概述@Scheduled注解是spring boot提供的用于定时任务控制的注解,主要用于控制任务在某个指定时间执行,或者每隔一段时间执行,或者原创 2020-01-25 21:45:33 · 1594 阅读 · 1 评论 -
Spring Boot+MySQL+Spring Data JPA一个Web的Demo
2022.01.06 更新1 概述一个简单的Web项目配合MySQL+Hibernate+Tomcat的简单示例demo,很容易在此基础上扩展成自己的项目。2 创建工程笔者IDE为IntelliJ IDEA,新建一个工程,选择Spring Initalizer:war/jar均可,这里选择war。选择Spring Web+Spring Data JPA+MySQL Driver。然后完成即可,首次运行的话配置依赖需要一点时间,请耐心等待。3 配置数据源配置数据源分为两部分,一部分原创 2019-11-26 00:40:32 · 5143 阅读 · 2 评论 -
Spring学习笔记(七):MyBatis映射器+动态SQL
1 概述本文主要讲述了如何使用MyBatis中的映射器以及动态SQL的配置。2 MyBatis配置文件概览MyBatis配置文件主要属性如下:<settings>:相关设置,键值对形式<typeAliases>:类型别名<typeHandlers>:类型处理器<objectFactory>:对象工厂<plugins>:插件,包含若干个<plugin><environments>:环境配置,包含若干个<原创 2020-10-30 22:25:45 · 651 阅读 · 0 评论 -
Spring学习笔记(六):MyBatis集成
1 概述2 MyBatis简介MyBatis本来是Apache的一个开源项目——iBatis,2010年由Apaceh Software Foundation迁移到了Google Code,并改名为MyBatis。MyBatis是一个基于Java的持久层框架,提供的持久层框架包括SQL Maps和Data Access Objects,使用简单的XML或者注解用于配置映射,将接口和POJO映射成数据库中的记录,是一个小巧、方便、高效、简单、直接、半自动化的持久层框架。3 工作原理上图:读取配置原创 2020-09-29 19:39:36 · 569 阅读 · 0 评论 -
Spring学习笔记(五):JDBCTemplate+事务管理
1 概述2 Spring JDBC TemplateSpring提供了JDBC模板模式,即JDBC Template,首先介绍JDBC的配置以及使用方法。2.1 配置主要配置一下原创 2020-09-27 18:28:00 · 4522 阅读 · 0 评论 -
Spring 学习笔记(四):Spring AOP
1 概述2 AOP3 AOP实现方式4 动态代理实现4.1 JDK实现4.2 CGLIB实现5 Spring AOP实现5.1 代理类实现5.2 XML配置的AspectJ实现5.3 注解配置的AspectJ实现6 源码Java版:Github码云CODE.CHINAKotlin版:Github码云CODE.CHINA...原创 2020-09-16 03:16:22 · 146 阅读 · 0 评论 -
Spring 学习笔记(三):Spring Bean
1 Bean配置Spring可以看做是一个管理Bean的工厂,开发者需要将Bean配置在XML或者Properties配置文件中。实际开发中常使用XML的格式,其中<bean>中的属性或子元素如下:id:Bean在BeanFactory中的唯一标识,在代码中通过BeanFactory获取Bean的实例时候需要以此作为索引class:Bean的具体实体类,使用包名+类名的形式指定scope:指定Bean实例的作用域<constructor-arg>:使用构造方法注入,指定构原创 2020-09-09 16:21:10 · 196 阅读 · 0 评论 -
Spring 学习笔记(二):SpringIoC
文章目录1 `IoC`与`DI`2 `Spring IoC`容器2.1 `BeanFactory`2.2 `ApplicationContext`2.2.1 `ClassPathXmlApplicationContext`2.2.2 `FileSystemXmlApplicationContext`2.2.3 `Web`服务器实例化3 `DI`的两种方法3.1 构造方法注入3.2 通过`setter`注入1 IoC与DIIoC是Inversion of Control的简称,也就是控制反转。通常来说,创原创 2020-09-08 13:16:29 · 159 阅读 · 0 评论 -
Spring 学习笔记(一):Spring 入门
文章目录1 `Spring`简介2 `Spring`体系结构2.1 核心容器2.2 `AOP`和`Instrumentation`2.3 消息2.4 数据访问/集成2.5 `Web`2.6 测试3 环境4 入门`Demo`(`Java`版)4.1 新建`Maven`工程4.2 引入依赖4.3 新建文件4.4 `applicationContext.xml`4.5 `TestInterface`4.6 `TestImpl`4.7 `Main`4.8 `Tests`4.9 运行4.9.1 测试4.9.2 `Ma原创 2020-09-08 00:45:34 · 238 阅读 · 0 评论