
JavaEE
文章平均质量分 82
JavaEE
laizhenghua
不积跬步无以至千里。
展开
-
OpenFeign中的HttpClient替换(替换成带有连接池的)
OpenFeign中的HttpClient如果不做任何特殊的配置,默认是采用JDK自带的HttpURLConnection发送HTTP请求,由于JDK的HttpURLConnection没有连接池,性能和效率上是比较低的。原创 2024-08-11 21:29:05 · 696 阅读 · 0 评论 -
SpringSecurity6.0+Redis+JWT+MP基于token认证功能开发(源码级剖析可用于实际生产项目)
引子:最近做项目时遇到了一个特殊的需求,需要写共享接口把本系统的一些业务数据共享给各地市的自建系统,为了体现公司的专业性以及考虑到程序的扩展性(通过各地市的行政区划代码做限制),决定要把接口做的高级一些,而不是简单的传个用户名和密码对比数据库里面的,那样真的很low。于是写了基于token的认证功能,在这里分享出来供大家学习与探讨。原创 2023-06-25 14:00:35 · 6975 阅读 · 7 评论 -
Activiti7-进阶(SpringBoot 2.6版)
续接上一篇文章,在上一篇文章中,我们完成了activiti7基础的学习包括25张表、类关系图、流程符号、画流程图、部署流程、启动流程实例、任务查询等,并且使用activiti7提供的API完成了请假申请的流程流转。明白了流程引擎是如何工作的,要想完成企业级的开发,这些知识还是远远不够的,在这一篇文章,我们会深入activiti7的学习,继续探索流程引擎更高级的知识。原创 2022-12-11 11:15:35 · 895 阅读 · 0 评论 -
Activiti7-基础(SpringBoot 2.6版)
说到审批,就一定会有流程。例如 开始 -> 申请 -> 主管审批 -> 人事审批 -> 结束,就是一个简单业务审批流程,按照某种预定义的规则传递文档、信息或任务的过程,通俗的说流程就是多种业务对象在一起合作完成某件事情的步骤。而在计算机体系中为了把步骤变成计算机能理解的形式就衍生出了流程引擎!在复杂多变的业务场景下,流程引擎能保证我们业务执行的准确性,大大降低我们设计业务的成本,因此市面也出现了Osworkflow、BPM、Activiti、flowable、Camunda等功能强大的流程引擎。原创 2022-10-30 15:33:53 · 2558 阅读 · 0 评论 -
Java解析json文件,转换成JSONObject
json文件,如何进行转换,方便程序处理?原创 2022-09-02 10:14:20 · 1777 阅读 · 0 评论 -
SpringBoot 2.6 集成 swagger 3.0
为了方便在线测试API,相信很多项目都没有弃用swagger,swagger依然是在线文档生成优秀框架。如今swagger也迭代到3.0,整体ui风格相比较swagger2更加整洁,配置方面也调整了不少,非常容易踩坑~原创 2022-08-30 22:41:39 · 2889 阅读 · 0 评论 -
MultipartFile解析zip文件(解压获取每个文件的输入流和文件元数据)
以zip文件上传至服务端,如果我们需要操作文件内容,那么就不得不对文件进行解压,以获取文件元数据(文件名、创建时间等)和输入流。原创 2022-08-19 21:14:44 · 5920 阅读 · 0 评论 -
HTTP客户端请求工具RestTemplate
服务端访问HTTP服务随处可见!传统情况下我们都会使用Apache的HttpClient,不过Apache的封装的API非常复杂,还得自己做二次封装和管理资源的回收,因此在项目上非常推荐使用Spring提供的模板类RestTemplate发HTTP请求,RestTemplate封装了更加简单易用的API,能很大程度提升开发者的开发效率....................................原创 2022-07-17 14:14:25 · 2545 阅读 · 0 评论 -
聊聊Spring中的事务
事务在实际开发中,重要性不言而喻。假设没有合理的事务控制,A向B发起了100元转账,A账户减100,B账户加100,但是转账中途因网络等因素导致程序异常(B账户更新记录没有成功,A账户更新成功),这就导致A账户无缘无故损失100元。。。这就是事务的一个简单例子,何时提交事务、何时事务回滚、合理设置事务的超时时间也是程序设计非常重要的一部分。.....................................................................................原创 2022-06-25 11:44:36 · 2986 阅读 · 4 评论 -
@CacheEvict增强版@CacheBatchEvict(自定义注解+AOP实现缓存批量删除)
最近发了关于一篇关于Ehcache缓存的文章,发现评论有问到如果方法参数是一个集合,注解@CacheEvict怎么实现批量删除缓存?当时没有考虑到这种情况也就不了了之了。马上查了一下资料发现@CacheEvict只支持删除单个key,要想批量删除只能自己去实现,于是抽时间研究了下在执行方法之前通过AOP拿到参数列表,批量删除缓存后执行目标方法。完美解决了缓存批量删除,在这里分享给大家,让大家体验下AOP运用场景。原创 2022-05-24 20:44:23 · 4756 阅读 · 0 评论 -
AOP使用示例(纯注解版和XML配置实现)
AOP(Aspect Oriented Programming)的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。...............原创 2022-05-22 19:26:16 · 1255 阅读 · 0 评论 -
自定义注解+拦截器完成接口IP白名单功能
从JDK5.0开始Java就增加了对元数据(MateData)的访问支持也就是注解Annotation。就目前而言注解是一种趋势,一定程度上可以说:框架 = 注解 + 反射 + 设计模式。注解其实就是给代码做特殊标记,这些标记信息可以在编译、类加载、运行时被读取到并执行相应的处理。言外之意注解允许开发者在不改变原有的逻辑、代码的情况下,在源文件中嵌入一些补充信息,增强程序的功能。例如配置应用程序的切面信息!处理接口方法的日志、安全、缓存、事务等一系列前置逻辑。...原创 2022-05-14 22:59:02 · 2678 阅读 · 10 评论 -
Ehcache缓存的使用
缓存应该是每个系统都要考虑的架构,缓存不仅可以加速系统的访问速度还可以提升系统的性能。如我们需要经常访问的高频热点数据,如果把它缓存起来就能有效减少数据库服务器的压力。手机验证码等有一定的失效时间,我们就可以考虑使用缓存,等失效时间过了,就删掉验证码。原创 2022-05-04 13:32:05 · 5292 阅读 · 4 评论 -
超详细SpringBoot集成阿里云短信服务制作自己的验证码与通知功能
短信验证与通知多用于用户注册、登录验证、找回密码、支付认证、议会通知、物流通知、系统通知、会员服务通知、活动通知等多种场景,如今人手一部手机不受流量和通信设备的影响随时随地的发送与接收,稳定且效率高~无论是验证码还是短信通知已成为应用系统不可缺少的一部分。原创 2022-03-26 14:57:31 · 1461 阅读 · 0 评论 -
SpringCloud续篇SpringCloud Alibaba
SpringCloud Alibaba同SpringCloud一样,SpringCloud Alibaba也是一套微服务解决方案,也有完整的微服务必要的组件,并且阿里开源的组件都经历过了考验,性能强悍,设计合理,现在开源出来大家用成套的产品搭配完善的可视化界面给开发运维带来了极大的便利。原创 2022-02-25 22:16:22 · 548 阅读 · 0 评论 -
SpringCloud - 基础入门(服务网关、服务配置、服务总线篇、消息驱动)
继续接上一篇~原创 2022-02-15 21:56:19 · 1707 阅读 · 0 评论 -
SpringCoud - 基础入门(服务注册与发现、服务调用、服务降级与熔断篇)
SpringCloud:是一系列框架的有序集合,也是一套完整的微服务解决方案。利用SpringBoot的开发便利巧妙的简化了分布式系统基础设施的开发,如发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等都可以用SpringBoot的开发风格(屏蔽掉复杂的配置和实现原理)做到一键启动与部署,为开发者提供了一套简单易懂、易部署和易维护的分布式系统开发框架!— 摘自百度百科SpringCoud - 基础入门......原创 2021-12-26 22:39:34 · 2620 阅读 · 0 评论 -
经典再现,看到就是赚到。尚硅谷雷神 - SpringBoot 2.x 学习笔记 -高级与场景整合篇
SpringBoot 2.x 场景整合在上一篇核心功能篇里,我们已了解SpringBoot的配置文件、web开发、数据访问、JUnit5单元测试、生产指标监控、SpringBoot启动流程等。然而SpringBoot是一个伟大的框架,它的知识点远不止这些,我们还要学习更多的技术并整合到SpringBoot中,如虚拟化技术、安全控制、缓存技术、消息中间件、对象存储、定时调度、异步任务、分布式系统等,才能迎接微服务时代!整合示例:https://github.com/spring-projects/spri原创 2021-04-12 09:22:27 · 2139 阅读 · 0 评论 -
经典再现,看到就是赚到。尚硅谷雷神 - SpringBoot 2.x 学习笔记 - 核心功能篇
SpringBoot 2.x 时代 – 核心功能篇视频学习地址:https://www.bilibili.com/video/BV1Et411Y7tQ?p=131&spm_id_from=pageDriver在上一篇文章中我们已学会SpringBoot的基本使用,并且明白了SpringBoot的自动配置原理!接下来就是SpringBoot的核心功能,此篇文章会根据视频内容整理SpringBoot的配置文件、web开发、数据访问等一些重要知识!帮助我们快速掌握SpringBoot !1、配置文件原创 2021-03-26 11:07:55 · 2529 阅读 · 2 评论 -
经典再现,看到就是赚到。尚硅谷雷神 - SpringBoot 2.x 学习笔记 - 基础入门篇
SpringBoot 2.0视频学习地址:https://www.bilibili.com/video/BV1Et411Y7tQ?p=112&spm_id_from=pageDriver1、Spring与SpringBoot1.1、Spring是什么?Spring能做什么?Spring 被称为 J2EE 的春天,是一个开源的轻量级的 Java 开发框架, 具有控制反转(IOC)和面向切面(AOP)两大核心。Java Spring 框架通过声明式方式灵活地进行事务的管理,提高开发效率和质量。原创 2021-03-23 20:16:05 · 2751 阅读 · 2 评论 -
Hibernate 5 详解!
Hibernate1、Hibernate框架概述1.1、什么是Hibernate?1、Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。2、Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命原创 2020-12-04 09:18:51 · 2075 阅读 · 0 评论 -
SSM框架整合案例,包含完整代码与笔记。
声明:大部分内容来自b站博主《遇见狂神说》的视频!笔者也是基于视频所做的笔记,方便日后复习与查看!有不懂的地方可观看视频讲解!视频地址:https://www.bilibili.com/video/BV1aE41167Tu?p=17Spring/SpringMVC/MyBatis框架整合1、环境准备为方便测试技术,我们以简单的《书籍信息管理系统》为例!首先我们要确保我们已经熟练掌握MySQL数据库,Spring,JavaWeb,SpringMVC及MyBatis知识,简单的前端知识。1.1、数据库与原创 2020-11-21 19:54:33 · 741 阅读 · 0 评论 -
SpringMVC (笔记)
SpringMCV1、回顾MVC1.1、MVC三层架构1、MVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。2、是将业务逻辑、数据、显示分离的方法来组织代码。3、MVC主要作用是降低了视图与业务逻辑间的双向偶合。4、MVC不是一种设计模式,MVC是一种架构模式。当然不同的MVC存在差异。Model(模型):数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或 JavaBean 组件(包含数据和行为),不过现在一般都分离开来原创 2020-11-17 22:23:23 · 2797 阅读 · 1 评论 -
Sping 5 详解!
注意:大部分内容均来自B站《遇见狂神说》,笔者也是基于视频做的笔记,方便日后复习与查看,有不懂的地方可观看视频讲解!视频地址:https://www.bilibili.com/video/BV1WE411d7DvSpring框架1、Spring1.1、Spring简介Spring翻译过来就是春天,你也可以理解为给Java现代化软件开发带来了春天。Spring适用于任何Java应用!为降低软件开发的复杂性而诞生!Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,S原创 2020-11-13 21:17:46 · 731 阅读 · 0 评论 -
权威MyBatis框架详解,一文带你看尽MyBatis!
注意:所有内容均来自B站《狂神说Java系列课程》一个宝藏男孩,强烈推荐!视频地址:https://www.bilibili.com/video/BV1NE411Q7Nx笔者也是基于视频做的笔记,方便日后复习与查看。有不懂的地方可观看视频讲解。也希望大家多多支持狂神!MyBatis1、MyBatis简介1.1 什么是MyBatis?MyBatis 是一款优秀的持久层框架。它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集原创 2020-11-10 12:48:23 · 797 阅读 · 1 评论