自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 资源 (5)
  • 收藏
  • 关注

原创 JApiDocs-接口文档神器工具

JApiDocs是一个用于生成Java接口文档的工具,比起swagger,它不需要开发人员额外添加注解,是非侵入式的工具。先来看看它的效果:页面很简洁。

2023-07-03 23:05:29 522

原创 @validated的自定义注解校验&编程式校验

/ 可以用来修饰注解,是注解的注解,称为元注解,其他信息可参考:https://blog.csdn.net/qq_30326609/article/details/112360631// 指定自定义的校验规则处理器String message() default "日期校验失败";Class

2023-07-01 23:11:50 1106

原创 @Validated和@Valid的进阶使用

首先,我们自定义一个注解,作为分组接口(也可以使用现有接口)@Data@NotNull(message = "不能为空")@Length(min = 1, max = 10, message = "长度在1到10之间", groups = {GroupA.class})@Min(value = 1, message = "最小是1", groups = {GroupB.class})

2023-06-30 00:37:38 349

原创 @Validated 和 @Valid校验提示信息的双语化

对于国际性应用来说,提示信息的双语化是必须的,那么@Validated 和 @Valid校验提示信息怎么来进行双语化呢,下面我们一起学习一下。

2023-06-27 00:15:00 602

原创 认识@Validated 和 @Valid

@Validated 和 @Valid 的区别

2023-06-26 02:15:00 427

原创 Spring数据库事务处理

在 Spring 中,事务管理器的顶层接口为PlatformTransactionManager,Spring 还为此定义了一系列的接口和类,它们之间的关系如图所示:当我们引入其它框架时,还会有其它的事务管理器的类,比方说我们引入 Hibernate ,那么 Spring还会提供HibernateTransactionManager 与之对应并给我们使用。

2023-06-03 03:00:00 469

原创 Spring Boot访问数据库

*** 设置非空性别参数*/@Override/*** 根据列名读取性别*/@Override/*** 根据下标读取性别*/@Override/*** 根据存储过程读取性别*/@Override在mybatis中,对于typeHandler的要求是需要实现TypeHandler接口,而抽象类BaseTypeHandler也是实现了TypeHandler接口,并且还扩展了其他功能,所以这里我们直接继承抽象类BaseTypeHandler即可。

2023-05-10 03:45:00 4828

原创 Spring AOP续--织入

上篇讲到SpringAOP的一些用法以及概念,这里我们单独讲一下AOP中的“织入”。我们知道,SpringAOP是基于动态代理实现的技术,而对于通知,上篇文章中都是采用接口+实现类的方式,这也是Spring推荐的方式,但并不是强制的,动态代理的实现方式也是有很多种的,目前主流的就是JDK、CGLIB、Javassist、ASM等。首先我们来看看JDK、CGLIB动态代理的区别。

2023-05-06 23:49:19 690

原创 Spring AOP

Aspect@Component@Slf4j这里我们定义了com.zzm.service.impl.UserServiceImpl.printUser方法作为切点。“execution ”表示在执行的时候,拦截里面的正则表达式匹配的方法;“*”表示任意返回类型的方法;“com.zzm.service.impl.UserServiceImpl”指定目标对象的全限定名称;“printUser”指定目标对象的方法;“(…)”表示任意参数进行匹配;

2023-05-06 00:18:44 455

原创 全注解下的SpringIoc 续8-使用Spring EL表达式

当然了,如果Spring EL表达式仅限于此,那也不会专门用一个篇幅来介绍它了,上面的例子只是它最基本的用法,下面让我们来一起看看另外的用法。好了,今天就先到这里了,眼过千遍不如手过一遍,赶紧去自己尝试一下吧。而这里的“${user.id}”,便是Spring EL表达式。

2023-05-03 20:59:50 118

原创 全注解下的SpringIoc 续7-引入XML配置bean

之前说过,Spring Boot推荐使用注解,那为什么这里还需要介绍通过xml来配置bean的方法呢,因为一些第三方的组件是基于spring的xml配置来进行开发的,比如阿里巴巴的dubbo框架,所以如果要使用这些框架,那便只能使用xml的方式来配置对应的bean了。使用@ImportResource注解,Spring Boot便可以使用xml配置bean了,下面让我们一起来看看。

2023-05-03 20:44:46 95

原创 全注解下的SpringIoc 续6-多环境配置

我们都知道,在企业开发过程中,一个项目往往都会有开发、测试、仿真、生产等环境配置,除了使用配置中心(比如Apollo等)之外,Spring Boot也提供了不同环境之间切换的机制,下面让我们来一起看看。

2023-05-03 20:05:25 626

原创 全注解下的SpringIoc 续5-Bean的作用域

可以看到sessionBean的值都是一样的,因为两次访问属于同一个会话,requestBean的值不一样,因为我们发起了两次请求。另外application的作用域也完全可以用singleton作用域来代替,所以这里也不对其过多介绍了。所以,我们主要看看singleton、prototype、session、request这四种作用域。默认情况下,Spring Boot加载的bean都是单例,也就是singleton。好了,今天就先到这里了,眼过千遍不如手过一遍,赶紧去自己尝试一下吧。

2023-05-03 15:47:22 787

原创 全注解下的SpringIoc 续4-条件装配bean

Spring Boot默认启动时会加载bean,如果加载失败,则应用就会启动失败。但是部分场景下,我们希望某个bean只有满足一定的条件下,才允许Spring Boot加载,所以,这里就需要使用@Conditional注解来协助我们达到这样的目的。

2023-05-03 15:17:49 766

原创 全注解下的SpringIoc 续3-属性文件的使用

Data@Slf4j@Component@Slf4jlog.warn("............Application启动成功.............");启动应用,即可看到如下日志:好了,今天就先到这里了,眼过千遍不如手过一遍,赶紧去自己尝试一下吧。。。。拜拜。

2023-05-03 14:57:26 694

原创 全注解下的SpringIoc 续2-bean的生命周期

开始资源定位(通过@ComponentScan注解定义的扫描规则去寻找被@Component、@Controller、@Service......等注解标记的类)资源解析、并且将定义的信息保存起来定义发布:将bean的定义信息发布到ioc容器中bean的初始化结束默认情况下,spring会在启动时完成对bean的定义、发布以及初始化,但是,有时候我们并不想让spring在启动时就完成bean的初始化,更想的是在我们用到它时,才去完成初始化的动作,最常见的就是循环依赖的场景了。

2023-04-22 22:56:17 558

原创 全注解下的SpringIoc 续1-依赖注入

上篇文章介绍了ioc的基本用法和@ComponentScan注解的使用,这篇文章我们来看看依赖注入的部分。提起依赖注入,想必大家肯定会想到@Autowired注解,的确,它是我们用的最多的一个。还记得容器的顶级接口BeanFactory 吗,它定义了获取bean的几个方法,主要是基于类型和基于名称来获取bean,而这里即将要介绍的@Autowired注解便是首先基于类型来获取bean的。

2023-04-20 23:31:30 159

原创 全注解下的SpringIoc

主要介绍spring boot中基于注解的容器的使用

2023-04-18 23:13:26 408

原创 SpringBoot2.X环境搭建

最简单的Spring Boot MVC项目搭建

2023-04-03 22:58:48 601

原创 第二章 容器的基本实现-之容器基本用法

第二章 容器的基本实现-之容器基本用法

2022-06-13 19:32:08 105

原创 第一章 Spring整体架构介绍

Spring整体架构介绍可以看到,Spring整体可大致分为5个部分,分别是Data Access/Integration、Web、AOP、Core Container、Test。下面分别对这5个部分进行简单的介绍;该层封装了Spring的数据访问模块,包含了JDBC、ORM、OXM、JMS、Transaction等模块;JDBC模块提供了一个JDBC的抽象层,使得用Spring连接数据库时,开发人员避免书写冗长的jdbc获取连接、结果集解析等操作代码。该模块主要提供流行的对象-关系映射的API,比如J

2022-06-07 23:25:19 329

原创 idea开发Java项目推荐插件

CodeGlance 编辑区缩略图CodeGlance是一款代码编辑区缩略图插件,可以快速定位代码,使用起来比拖动滚动条方便多了效果图:Rainbow Brackets 括号彩虹括号彩虹,可以将配对的括号采用同一个颜色显示。ctrl+鼠标右键点击 所在区域高亮alt+鼠标右键点击 非所选区域外不高亮效果图:...

2021-09-03 21:13:23 101

原创 IDEA插件安装

File–>setting

2021-09-03 21:08:38 65

原创 idea自定义文件模板样式

自定义文件创建模板(以Java文件为例):File–>setting然后选中以下红框选中的:效果展示:

2021-09-03 21:07:27 186

原创 idea设置字体

1.调整编辑器字体大小:打开idea:File–>settingSize调整大小,Line height调整行间距,Font设置字体;设置完后点击Apply即可;2.调整菜单字体大小打开idea:File–>setting

2021-09-03 21:05:14 484

原创 windows10系统安装IDEA

下载链接:https://www.jetbrains.com/idea/download/#section=windows下载完点击安装:选择安装路径:(建议不要安装到系统盘)勾选相应设置:点击安装

2021-09-03 21:01:58 81

原创 安装maven工具

maven下载链接:http://maven.apache.org/download.cgi红框中随便挑一个,点击下载,如果没有oracle账户可以用电子邮箱创建一个;下载后解压:配置maven环境变量:右击此电脑选择属性:搜索环境变量:选择编辑系统环境变量:在打开的环境变量对话框后,单击下方【系统变量】下的【新建】按钮;然后输入MAVEN_HOME,对应的变量值为你maven安装的目录。然后在系统变量中找到名为“Path”的变量并双击,新建变量为 %MAVEN_HOME%\

2021-08-29 10:53:12 61

原创 windows10系统安装Java环境jdk

Jdk1.8下载链接:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html点击下载:下拉选择windows版本(这里以64位系统举例):如果没有oracle账户可以用自己的邮箱创建一个;下载下来后准备两个文件夹,jdk和jre;点击安装,jdk和jre安装目录分别选刚才新建的两个文件夹即可,一路默认安装;配置Java环境变量:右击此电脑选择属性:搜索环境变量:选择编辑系统环境变量:

2021-08-29 10:08:49 96

原创 windows安装git和TortoiseGit

Git下载链接:https://github.com/git-for-windows/git/releases/download/v2.33.0.windows.2/Git-2.33.0.2-64-bit.exe点击下载的安装程序,除了安装位置之外,其他设置选择默认的就可以了;小乌龟TortoiseGit下载链接:https://tortoisegit.org/download/点击安装程序进行安装:一路默认选项即可;问题1:在已克隆的仓库下面拉资料时出现如下问题:原因:TortoiseG

2021-08-29 09:28:41 278

原创 windows安装文本编辑器--notepad++

下载地址:https://notepad-plus.en.softonic.com/下载到本地后点击安装,傻瓜式安装即可;安装好后打开如下:作为一名合格的码农,优雅酷黑的风格当然是要设置的啦:首先打开语言格式设置:选择主题如下:勾选全局背景色:如果出现中文方向不对,如下所示,是因为字体格式选错了,不要选@开头的字体;小伙伴们有什么问题了欢迎留言哈。。。...

2021-08-28 19:25:57 526 1

原创 Windows10系统安装好用的截图软件--snipaste

snipaste截图软件,下载地址:https://zh.snipaste.com/下载到本地解压:启动即可:注意:启动后默认是后台运行,可以在如下位置查看软件状态:右击打开首选项,点击控制选项卡进行快捷键设置:推荐点击常规选项卡勾选开机启动;...

2021-08-28 18:59:22 1007

转载 同事写了一个update,误用一个双引号,生产数据全变0了!

https://mp.weixin.qq.com/s/6mCBltYOQeZcl-d6IpvvkA

2021-02-17 17:52:57 89

转载 图解 ElasticSearch 原理

https://mp.weixin.qq.com/s/5uCyRoW1T2pL1PAcINpS8Q

2021-02-17 17:51:22 65

转载 36 张图梳理 Intellij IDEA 常用设置

https://mp.weixin.qq.com/s/_6KJ6pOfV2TKLTYM4FpC_w

2021-02-17 17:49:27 73

转载 为什么牛逼的程序员都不用 “ ! = null “ 做判空?

问题(内容收集于网络)为了避免空指针调用,我们经常会看到这样的语句…if (someobject != null) { someobject.doCalc();}…最终,项目中会存在大量判空代码,多么丑陋繁冗!如何避免这种情况?我们是否滥用了判空呢?精华回答这是初、中级程序猿经常会遇到的问题。他们总喜欢在方法中返回null,因此,在调用这些方法时,也不得不去判空。另外,也许受此习惯影响,他们总潜意识地认为,所有的返回都是不可信任的,为了保护自己程序,就加了大量的判空。吐槽完毕,回到这个题目

2021-02-17 17:47:11 65

转载 总结零散的 MySQL 基础知识

前言在日常开发中,一些不常用且又比较基础的知识,过了一段时间之后,总是容易忘记或者变得有点模棱两可。本篇主要记录一些关于MySQL数据库比较基础的知识,以便日后快速查看。SQL命令SQL命令分可以分为四组:DDL、DML、DCL和TCL。四组中包含的命令分别如下图片DDLDDL是数据定义语言(Data Definition Language)的简称,它处理数据库schemas和描述数据应如何驻留在数据库中。CREATE:创建数据库及其对象(如表,索引,视图,存储过程,函数和触发器)ALTER:

2021-02-17 17:40:57 50

转载 前端开发不可错过的实用工具

给大家整理了 25 个前端相关的学习网站和一些靠谱的小工具,包括一些小游戏、教程、社区网站和博客,以及一些资源网站,希望可以帮助到大家!▍CSS 相关● 1CSS Battle - 在线比拼 CSShttps://cssbattle.dev在线比拼 CSS ,一个挺有趣的竞争性游戏,一共有12个级别,需要你用 HTML和 CSS 100%还原它给出的页面,然后再尽量减少代码,你也可以查看全球的排行榜,看解决方案。图片● 2Learn CSS layout - 学习 CSS 布局http:/

2021-02-17 17:37:47 106

转载 SpringBoot 的@Value注解,高级特性,真心强大!

一、前言在日常开发中,经常会遇到需要在配置文件中,存储 List 或是 Map 这种类型的数据。Spring 原生是支持这种数据类型的,以配置 List 类型为例,对于 .yml 文件配置如下:test:list:- aaa- bbb- ccc对于 .properties 文件配置如下所示:test.list[0]=aaatest.list[1]=bbbtest.list[2]=ccc当我们想要在程序中使用时候,想当然的使用 @Value 注解去读取这个值,就像下面这种写法一样:@

2021-02-17 17:31:47 106

转载 推荐一个基于 SpringBoot2 + MybatisPlus 的商城管理系统

项目简介SpringBoot2+MybatisPlus+SpringSecurity+jwt+redis+Vue 的前后端分离的商城系统, 包含商城、拼团、砍价、商户管理、 秒杀、优惠券、积分、分销、会员、充值、多门店等功能,更适合企业或个人二次开发。商城功能商品模块:商品添加、规格设置,商品上下架等订单模块:下单、购物车、支付,发货、收货、评价、退款等营销模块:积分、优惠券、分销、砍价、拼团、秒杀、多门店等微信模块:自定义菜单、自动回复、微信授权、图文管理、模板消息推送配置模块:各种配置用

2021-02-17 17:29:27 246

转载 52条SQL语句性能优化策略,建议收藏

本文会提到 52 条 SQL 语句性能优化策略。1、对查询进行优化,应尽量避免全表扫描,首先应考虑在 WHERE 及 ORDER BY 涉及的列上建立索引。2、应尽量避免在 WHERE 子句中对字段进行 NULL 值判断,创建表时 NULL 是默认值,但大多数时候应该使用 NOT NULL,或者使用一个特殊的值,如 0,-1 作为默认值。3、应尽量避免在 WHERE 子句中使用 != 或 <> 操作符。MySQL 只有对以下操作符才使用索引:<,<=,=,>,>=,

2021-02-17 17:26:22 97

WH工具包WH工具包WH工具包WH工具包

整洁桌面,高效工具

2023-12-21

validated和valid校验注解用法示例代码

validated和valid校验注解用法示例代码

2023-07-01

SpringBoot 最简单的MVC项目源码

SpringBoot 最简单的MVC项目源码

2023-04-03

workhelper.jar

用于将特定格式的字符串转换为类的属性代码或者mybatis的mapper.xml文件中result标签代码

2021-09-09

program.tar

springcloud中的zuul+sidecar+eureka连接Java接口和nodejs接口小例子

2019-08-07

第二章 JVM内存简介.wps

该文档简单介绍了Java虚拟机的内存划分以及一些常见的内存溢出,此资料参考于《深入理解Java虚拟机书籍》

2019-07-23

linux设置mysql数据库使其让外网访问流程.docx

该文档简单地介绍了一下怎么用外网访问自己在远端Linux服务器中的MySQL数据库

2019-07-23

ecs-linux云服务器安装mysql数据库流程.doc

该文档主要简单介绍了一下在阿里云地Linux EC服务器上安装mysql数据库地步骤..........

2019-07-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除