- 博客(31)
- 资源 (13)
- 收藏
- 关注
原创 Spring Boot2.x系列教程 | 文章汇总:专栏汇总篇(持续更新中.............)
Spring Boot使用注解控制Api接口幂等性之前后端分离架构设计:https://blog.csdn.net/Thinkingcao/article/details/103578562
2019-12-30 15:50:33 2622 2
原创 SpringBoot 系列教程(七十三): Spring Boot整合Zxing生成二维码
一、前言在web开发、H5等移动端开发时,比如要使用微信支付、网页登录等,需要用到二维码的场景很多,这里分享最近学习的一个基于Spring Boot生成二维码的例子,使用的二维码SDK是google的zxing`工具类;二、生成二维码工具包开发生产二维码功能,需要用到google的zing包,不要问为什么,在可以实现相同功能、相同效果的前提下,哪种在当下最流行就使用哪种,哈哈,Spring框...
2019-12-30 16:47:18 1297 1
原创 SpringBoot 系列教程(八十七):Spring Boot全局统一异常拦截处理
一、前言在早几年项目开发过程中,对于异常处理太过于复杂和杂乱,项目代码中大量的try catch使用,通过try catch捕捉然后对异常处理,如果处理不了的则往上一层抛,由上一层接管异常的处理,其实不管是SpringBoot框架还是Spring+SpringMVC+Mybatis框架,都可以使用@ControllerAdvice和 @ExceptionHandler 对项目做一个全局的异常拦截...
2019-12-27 17:45:41 1575
转载 Mysql高性能优化规范(一):设计规范
一、数据库命令规范1. 所有数据库对象名称必须使用小写字母并用下划线分割;2. 所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来);3. 数据库对象的命名要能做到见名识意,并且最好不要超过32个字符;4. 临时库表必须以tmp_为前缀并以日期为后缀,备份表必须以bak_为前缀并以日期(时间戳)为后缀;5. 所有存储相同数据的列名和列类型必...
2019-12-27 14:32:31 265
原创 SpringBoot 系列教程(八十八):Spring Boot配置使用RedisTemplate操作Redis
Spring Boot除了对对常用的关系型数据库提供支持以外,还对非关系型数据库进行了自动化配置。使用redis结合spring cache是一个非常棒的组合,cache使用方便,但还是使用JVM内存了缓存对象,redis是独立的缓存服务器,使用单纯的内存来做缓存,所以他们结合后可以很方便的进行缓存并且不影响JVM的内存性能;本节介绍SpringBoot引入redis,以及使用RedisTemplate来操作redis数据。
2019-12-27 13:22:32 980
原创 Shiro 放行Swagger
一、前言最近在研究Shiro,遇到一个棘手的问题:SpringBoot 集成Shiro后, Swagger接口得登陆才能访问,找了一下问题,记在这里。二、Shiro放行Swagger在 Shiro 的配置文件中找到拦截器,将Swagger接口的路径放行即可 //放行Swagger2页面,需要放行这些 filterChainDefinitionMap.put("/swagger-ui...
2019-12-27 10:45:59 1992
原创 基于RedisTemplate的Redis简单增删改工具类
RedisUtils.java@Componentpublic class RedisUtils { @Resource private RedisTemplate<String, Object> redisTemplate; /** * 删除缓存 * @param key 可以传一个值 或多个 */ public...
2019-12-26 17:56:22 974
原创 SpringBoot 系列教程(八十六):Spring Boot使用AOP打印接口请求日志
一、前言AOP被称作面向切面编程,OOP面向对象编程,其实由于OOP的一些局限性,AOP是对OOP的一种补充,是两种编程模式,Spring AOP 是基于 AOP 编程模式的一个框架,它的使用有效减少了系统间的重复代码,达到了模块间的松耦合目的。使用AOP技术,可以将一些系统性相关的编程工作,独立提取出来,独立实现,然后通过切面切入进系统。从而避免了在业务逻辑的代码中混入很多的系统相关的逻辑——...
2019-12-26 17:49:18 890
原创 PostMan的轻量级版PostWoman
一、什么是PostWoman来自PostWoman的GitHub介绍,“PostWoman是API请求生成器-Postman的免费,快速,美观的替代方案,帮助您更快地创建请求,为您节省宝贵的开发时间”二、特点轻巧的❤️ 轻巧:采用简约的UI设计制作-简单的设计是最好的设计。即时的⚡️ 快速:实时发送请求和获取/复制响应-快速软件是最好的软件。PWA在您的设备上作为PWA...
2019-12-20 12:28:34 7062 9
原创 SpringBoot 系列教程(八十五):Spring Boot使用MD5加盐验签Api接口之前后端分离架构设计
一、前言在当下的Web开发,或者涉及到H5、APP、小程序等移动端开发时,务必需要后端提供Api接口供前端调用,无论H5程序、App还是小程序,都是如此,那么接口安全问题就被大家重视起来了,现在也越来越多人关注接口安全问题,尤其是一些架构师,传统的接口在传输的过程中,容易被抓包然后更改里面的参数值达到某些目的。传统的做法是用安全框架或者在代码里面做验证,但是有些系统是不需要登录的,随时可以调AP...
2019-12-18 11:23:48 7854 8
原创 Vue-Cli3版本项目构建打包部署
一、Vue cli 3 版本的和Vue cli 2 版本的区别。一、安装上区别:1.Vue cli 2 版本安装命令 :npm install -g vue-cli2.Vue cli 3 版本安装命令:npm install -g @vue/cli二、创建项目区别1.Vue cli 2 版本创建项目命令 :vue init webpack project2.Vue c...
2019-12-17 21:25:06 1962
转载 Long类型参数传到前端精度丢失的解决方案
一、前言由于公司数据库表的id是利用雪花算法生成的,所以实体类里面定义的数据类型为Long。但是这个数据传到前端时,发生了精度丢失的现象。本文记录了从java后端的角度如何解决这个精度丢失的问题,便于自己后续查阅。二、问题的描述前端通过ajax请求后端接口,返回json数据,然后将数据渲染到一个表格中。突然发现表格中id这一列出现了精度丢失的现象,这精度丢失是由前端引起的。三、解决方案...
2019-12-17 14:28:54 3445
原创 SpringBoot 系列教程(八十四):Spring Boot使用注解控制Api接口幂等性之前后端分离架构设计
一、前言在传统的web项目比如使用SSM和SSH框架开发的时候,rpc远程调用、MQ消费者幂等(保证唯一)、甚至常见的在网络产生延迟的情况下,都可能有重试机制,这时候会涉及到表单的重复提交问题,按照以前常用的做法是:第一种是在前端由前端工程师使用JS控制,这样其实是不专业的,如果更专业点,就是使用第二种``Token+Redis机制处理,这种做法在大型项目中较为流行,其简要原理是后端生成一个唯一...
2019-12-17 13:37:31 2211 4
转载 浅谈Spring中的事务回滚
使用Spring管理事务过程中,碰到过一些坑,因此也稍微总结一下,方便后续查阅。一、代码中事务控制的3种方式1. 编程式事务: 就是直接在代码里手动开启事务,手动提交,手动回滚。优点就是可以灵活控制,缺点就是太麻烦了,太多重复的代码了。2. 声明式事务: 就是使用SpringAop配置事务,这种方式大大的简化了编码。需要注意的是切入点表达式一定要写正确。3. 注解事务: 直接在Servic...
2019-12-17 11:53:29 331
原创 SpringBoot 系列教程(八十三):SpringBoot统一处理异常ErrorController
一、Springboot默认的错误处理SpringBoot源代码中有这样一个ErrorController,针对SpringMvc错误的Mapping进行处理,很多的时候我们写了一个Controller,在浏览器上访问的时候经常会出现如下情况:1. 404异常2. 500异常上述两种异常情况下出现的异常界面,是SpringBoot默认的,原因是前端发起请求给springmvc的时候,S...
2019-12-17 00:14:22 2320
原创 SpringBoot 系列教程(八十二):Intellij IDEA实现SpringBoot项目启动多个端口
一、前言在使用SpringBoot特别是学习的时候,比如在学习SpringCloud搭建Eureka注册中心集群,这时候就需要使用到多个SpringBoot项目启动,这些项目其他都一样,就端口要求不同,这时候我们可以将同一个SpringBoot项目复制多份,端口设置不同即可,在IDEA和Eclipse中都可以实现。二、实现方法开发工具: Intellij IDEA工具版本: Int...
2019-12-16 22:09:51 1626 1
原创 SpringBoot 系列教程(八十一):Spring Boot使用Token鉴权Api接口之前后端分离架构设计
一、前言最近两年项目框架一直使用的是由Spring+SpringMVC+Mybatis核心组件组合的SSM框架,SSM框架开发非常普遍了,除去那些传统老项目使用的SSH啥的外,大部分都是使用SSM了,SSM的框架其实很少有做到分离架构设计的,前后端交互服务端的用户状态大部分还是基于Session/Cookies机制来做的,在前几年我们Java工程师太苦逼了,既要写后端接口,前端页面、JS、CSS...
2019-12-16 18:01:03 4309
原创 SpringBoot 系列教程(八十):SpringBoot三种注解启动方式
SpringBoot程序启动方式有以下三种:1. 使用@EnableAutoConfiguration 注解启动(太局限了,只能扫描当前类)2. 使用@EnableAutoConfiguration+@ComponentScan扫包注解启动(太繁琐,要加扫包范围,加多个注解)3. 使用@SpringBootApplication注解启动(默认启动方式,最简单)
2019-12-12 23:07:36 763
原创 SpringBoot 系列教程(七十九):SpringBoot与SpringMVC的关系
一、什么是SpringBootSpringBoot是一个快速开发框架,能够帮助程序员在日常web开发中快速且及简单的方式整合第三方框架、其中SpringBoot内嵌入了常用的应用服务器(tomcat、jetty、undertow)、完全简化xml配置,采用全注解形式加载、初始化、读取、配置Bean等相关配置,其中设计者采用Maven依赖封装的原理快速整合第三方常用框架,也就是将需要使用的一个框架...
2019-12-12 21:19:35 692
原创 SpringBoot 系列教程(七十七):SpringBoot整合ehcache缓存
一、关于缓存SpringBoot可支持多种缓存,想更全面的了解可参考文档:SpringBoot缓存配置中文版,或者SpringBoot官网文档缓存篇在SpringBoot中常用的缓存有很多种,像Ehcache,Redis,GuavaCache,JCache等等,其中常用的就是EhCache和Redis了,Redis需要安装redis服务器,而EhCache不依赖任何第三方软件,只需引入jar即可。
2019-12-11 17:17:30 896
原创 SpringBoot 系列教程(七十六):SpringBoot整合定时任务Quartz
Quartz是一款功能强大的任务调度器框架,它完全由Java写成,并设计用于J2SE和J2EE应用中,它可以实现较为复杂的调度功能,如每月一号执行、每天凌晨执行、每周五执行等等这些复杂场景,还支持分布式调度。它提供了巨大的灵 活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如:数据库支持,集群,插件,EJB作业预构 建,JavaMail及其它,支持cron-like表达式等等。
2019-12-11 12:40:26 957 6
原创 SpringBoot使用新版本mysql的jdbc驱动时报时区问题
一、问题描述在使用SpringBoot集成Jpa时,引入了mysql的链接驱动依赖,SpringBoot的默认版本是2.2.2.RELEASE,其mysql的版本默认是8.0.18,启动项目报错,项目配置如下:其application.yml配置如下:二、启动报错**启动项目报错,原因是时间区域时差问题: **java.sql.SQLException: The server ti...
2019-12-11 12:30:20 654
原创 SpringBoot 系列教程(七十五):SpringBoot整合定时任务Scheduled
一、前言在以前的项目开发中,Spring+SpringMVC+Mybatis用来开发的居多,在这种传统的SSM框架中如果要实现定时任务,一般有两种方式可选,第一种是使用Spring框架自带的定时任务处理框架 @Scheduled ,这种适合只有个别定时任务需求的场景,直接使用一个定时任务注解 @Scheduled 即可实现,比较容易上手;另外一种就是比较注明的定时任务调度框架Quzrtz了,需要...
2019-12-11 00:14:50 600
翻译 Spring+ Shiro 整合配置部分事务失效分析及解决方案
spring + shiro 配置中部分事务失效分析及解决方案Spring Boot整合shiro后导致@Cacheable、@Transactional等注解失效的问题
2019-12-09 16:10:51 448
原创 SpringBoot各版本全网最全学习资料收集导航(欢迎收藏)
注: 以下文档为本人日常学习查阅百度、谷歌搜集,多为国内知名博客作者翻译,总结到这里,方便学习和查阅,后续会持续更新!1.SpringBoot官方文档英文版文档版本是基于SpringBoot2.1.7.RELEASE,其他版本可自行更换SpringBoot地址:https://docs.spring.io/spring-boot/docs/2.1.7.RELEASE/refere...
2019-12-09 14:04:38 893
原创 SpringBoot 系列教程(七十四):SpringBoot加载外部xml配置文件
一、前言在过去几年,做Javaweb开发以Spring+Hibernate+Struts2(简称SSH)和Spring+Mybatis+SpringMVC(简称SSM)组合的框架为主流,最开始SSH框架占领市场,后来渐渐的轻量级的框架SSM出现了,由此SSM框架占领了Java开发的主流市场,除开一些老项目还是使用SSH之外,新项目基本都是使用SSM框架,直到2016年以SpringBoot+Sp...
2019-12-06 20:51:07 1449 4
原创 Spring、SpringBoot全家桶技术栈知识点汇总(欢迎收藏)
1.下面是Sping技术栈所包含的技术框架图2.Spring Boot的一些知识点3.Spring Boot 推荐的基础 POM 文件名称 说明 spring-boot-starter 核心 POM,包含自动配置支持、日志库和对 YAML 配置文件的支持。 spring-boot-starter-amqp 通过 spring-rabbit ...
2019-12-06 14:43:50 1760
原创 SpringBoot 系列教程(七十八):SpringBoot整合Memcached
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。
2019-12-06 14:31:41 256
原创 vue-cli3.0和vue-cli2.0项目构建、运行、编译命令区别
一、安装上区别:1.Vue cli 2 版本安装命令 :npm install -g vue-cli2.Vue cli 3 版本安装命令:npm install -g @vue/cli二、创建项目区别1.Vue cli 2 版本创建项目命令 :vue init webpack project2.Vue cli 3 版本创建项目命令 :v...
2019-12-06 09:52:11 2563
原创 SpringBoot系列教程(六十七):SpringBoot自定义Fastjson为JSON消息转换器
SpringBoot 系列教程(六十七):SpringBoot自定义Fastjson作为JSON消息转换器一、关于 fastJsonfastJson为alibaba旗下的一款开源项目,从其命名可以看出,其意图是专门用来做快速操作Json的序列化与反序列化的组件,fastJson是目前JSON解析工具里面解析速度最快的工具,效率超过了传统的 jackson ,如今做Java开发,在写后端接口提...
2019-12-05 16:48:16 1107
原创 SpringBoot 系列教程(七十一):SpringBoot整合Shiro
后续补上,https://springboot.io/t/topic/1039 ,后面更新
2019-12-03 10:51:41 397
springboot-activiti_model.zip
2020-03-05
zookeeper-3.5.5(SpringBoot2.0以上对应Zk3.5及以上).zip
2020-02-24
SpringCloud概览_终稿.docx
2019-09-30
Red Hat Enterprise Linux 7.0 x86_64下安装Oracle 12c R1数据库
2016-09-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人