
Java
文章平均质量分 75
程序员buddha2080
八零後程序员,技术过硬,诚信专业服务。主营:定制各类网站、app、小程序等企业信息化软件。联系微信:buddha2080
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SpringBoot3整合MybatisPlus
2、项目目录结构3、核心依赖(pom.xml)4、数据源配置(application.yml)二、核心代码实现1、实体类(User.java)2、Mapper接口(UserMapper.java)3、Service接口层(UserService.java)4、Service实现层(UserServiceImpl.java)5、controller示例(UserController.java)三、MyBatis-Plus 核心方法详解MyBatis-Plus 在其核心接口原创 2025-08-06 14:51:18 · 467 阅读 · 0 评论 -
Jasypt加解密库在SpringBoot中的使用
SpringBoot使用Jasypt加解密库保护敏感配置 摘要:本文介绍了如何在SpringBoot项目中集成Jasypt加解密库,用于保护配置文件中的敏感信息。主要内容包括:1)Jasypt的基本概念;2)项目配置(pom.xml依赖和YAML配置);3)核心实现部分:封装JasyptUtil工具类提供加解密方法,开发SecretController接口实现加解密功能;4)配置文件中敏感信息的ENC()加密格式。通过这种方式,开发者可以安全地存储数据库密码等敏感配置,同时保持应用程序的正常读取和使用。文中原创 2025-07-08 11:02:32 · 400 阅读 · 0 评论 -
Win11切换JDK版本批处理脚本
摘要:为解决新旧项目使用不同JDK版本(1.8和21)的问题,作者创建了switch_jdk.bat脚本实现快速切换。该脚本以管理员权限运行,提供1-4选项对应不同JDK版本,修改系统JAVA_HOME变量并提示重启终端生效。使用前提是Win11已配置JAVA_HOME环境变量且Path中包含%JAVA_HOME%。脚本成功实现中文显示和版本切换,无需额外工具。原创 2025-05-30 15:09:38 · 224 阅读 · 0 评论 -
定时任务调度平台XXL-JOB
想象你有一个需要每天凌晨3点自动执行的任务(比如数据统计),传统做法是写个定时任务。多台服务器同时运行任务任务失败自动重试实时查看任务执行日志动态调整执行时间XXL-JOB 就是为解决这些问题而生的任务调度平台。调度中心(管理后台):负责定时触发任务,像指挥中心执行器(你的程序):实际干活的代码,像工人。原创 2025-05-25 21:03:58 · 1412 阅读 · 0 评论 -
SpringBoot多环境配置文件切换
Spring Boot多环境配置管理方案:通过application.yml、application-dev.yml和application-prod.yml实现环境隔离。在pom.xml中定义dev和prod两个profile,利用spring.profiles.active=${package.environment}动态激活对应配置。开发时通过Maven面板选择profile(dev/prod),执行clean-install后启动应用即可自动加载相应环境的数据库等配置。测试接口/test可验证当前生原创 2025-05-24 21:09:17 · 635 阅读 · 0 评论 -
SpringBoot的pom.xml文件中设置多环境配置信息
Java项目开发中会用到多种中间件,比如MySQL、Redis、RocketMQ等,每个项目又存在开发环境、测试环境、验收环境、生产环境等。有种方案是把这些配置信息放到pom.xml文件中,方便Jenkins进行打包,也方便开发。访问http://localhost:8080/test后,配置信息就在接口控制台按照预期给显示出来。如果想测试另外的一套配置信息,maven这边勾选另外的配置即可。启动后,target/classes下的application.yml文件内容就被替换过来了。原创 2025-05-24 20:21:01 · 686 阅读 · 0 评论 -
日志敏感信息脱敏处理
在维护的项目中,日志输出包含敏感信息,公司要求对其进行脱敏处理。为最小化改动,采用日志框架的自定义布局(Layout)方案,通过正则表达式匹配并替换敏感字段。具体实现包括新增一个脱敏类SensitiveDataPatternLayout.java,并修改日志配置文件logback.xml。脱敏类通过正则表达式对手机号、身份证、邮箱和银行卡号等敏感信息进行脱敏处理,确保日志输出时敏感信息被替换为星号。最终,日志输出格式保持不变,但敏感信息已得到有效保护。原创 2025-05-16 10:41:26 · 995 阅读 · 0 评论 -
Spring & Spring Boot 常用注解整理
Spring 和 Spring Boot 中的注解是简化开发的重要工具,通过注解可以告诉框架如何处理类、方法或变量。核心概念是注解类似于“便利贴”,用于标记代码的特殊用途,让框架自动处理对象的创建、依赖注入等任务。在 IOC(控制反转)和 DI(依赖注入)中,常用注解包括 @Component、@Service、@Repository、@Controller 等,用于标记不同类型的组件,并由 Spring 容器管理。@Autowired 用于自动注入依赖,@Qualifier 用于指定注入的 Bean 名称原创 2025-05-13 09:26:29 · 1717 阅读 · 0 评论 -
SpringBoot+Dubbo+Zookeeper实现分布式系统步骤
SpringBoot+Dubbo+Zookeeper实现分布式系统步骤,在使用Spring Boot、Dubbo和Zookeeper构建微服务架构时,你需要整合这三个组件来创建分布式服务。下面我将详细介绍如何通过Spring Boot集成Dubbo和Zookeeper,以实现服务的注册与发现。原创 2025-05-08 21:28:41 · 2561 阅读 · 0 评论 -
【Spring Boot】Spring Boot + Thymeleaf搭建mvc项目
ComponentScan(自动扫描当前包及其子包下的组件(如 @Controller, @Service, @Repository。Spring Boot 的启动类(Main Class)是整个应用程序的入口点,负责初始化 Spring 上下文并启动应用。@EnableAutoConfiguration(启用 Spring Boot 的自动配置机制);@SpringBootConfiguration(标记当前类为 Spring Boot。下新建一个Java类。下新建一个Java类。原创 2025-05-05 13:18:45 · 1352 阅读 · 0 评论 -
使用 IDEA + Maven 搭建传统 Spring MVC + Thymeleaf 项目的详细步骤
【代码】使用 IDEA + Maven 搭建传统 Spring MVC + Thymeleaf 项目的详细步骤。原创 2025-05-05 10:13:40 · 1669 阅读 · 0 评论 -
使用 IDEA + Maven 搭建传统 Spring MVC 项目的详细步骤(非Spring Boot)
Application Context:设置上下文路径(如 /myapp,默认可能为 Artifact 名)1、点击 Run/Debug Configurations 下拉框 → 选择配置好的 Tomcat 配置。URL:访问路径可以是http://localhost:8080/项目名/,这里没有配置项目名。4、访问 http://localhost:8080/你的上下文路径 测试。Application Server:选择已配置的 Tomcat。JRE:这里采用系统配置好的,如果没有配置的,这里配置下。原创 2025-05-04 13:08:02 · 1470 阅读 · 0 评论 -
Spring AOP 典型应用场景
应用场景核心注解通知类型关键实现技术日志记录@Loggable@AroundSlf4j + 方法元数据获取权限校验@Before权限上下文 + 条件判断性能监控无(使用execution)@Around时间计算 + 方法过滤缓存处理@Cacheable@Around本地缓存(ConcurrentHashMap)重试机制@Retry@Around循环控制 + 异常捕获事务管理@Around事务管理器模拟接口限流@RateLimit@Around。原创 2025-05-04 11:34:04 · 642 阅读 · 0 评论 -
【Spring】idea+maven从零搭建注解日志示例代码
第3步:创建项目结构第4步:创建自定义注解第5步:创建AOP切面第6步:创建服务类第7步:配置Spring第8步:配置日志第9步:测试运行创建测试类第10步:运行结果执行MainApp后,控制台会显示类似以下日志:关键点解释:@EnableAspectJAutoProxy:启用Spring的AOP代理功能@Around注解:环绕通知可以控制方法执行前后行为ProceedingJoinPoint:可以获取方法签名、参数等信息SLF4J+Logback:主流的日志解决原创 2025-05-04 01:08:26 · 717 阅读 · 0 评论 -
用Maven定位和解决依赖冲突
通过系统化的依赖管理和冲突解决策略,可以显著提升项目的稳定性和可维护性。建议在大型项目中建立定期的依赖审查机制,并使用自动化工具持续监控依赖健康状况。原创 2025-05-03 23:22:53 · 1354 阅读 · 0 评论 -
【Spring】Spring中8种常见依赖注入使用示例
构造器注入:推荐用于强制依赖,确保对象不可变。Setter/字段注入:适合可选依赖或需要灵活性的场景。集合注入:处理多实现类的统一管理。条件注入:通过@Qualifier@Primary或@Profile解决歧义。循环依赖:优先通过设计避免,或改用 Setter 注入。外部化配置:结合@Value动态注入属性值。条件化 Bean:根据环境或业务规则动态装配。具体选择取决于项目需求,Spring Boot 进一步简化了配置(如自动配置、原创 2025-05-03 11:35:31 · 522 阅读 · 0 评论 -
【Spring】依赖注入
依赖注入,英文单词是Dependency Injection,简写为:DI。Spring的依赖注入主要有两种方式:基于XML配置和基于注解的配置。原创 2025-05-03 04:22:39 · 405 阅读 · 0 评论 -
【Spring】idea + maven 从零创建Spring IoC容器示例
idea编辑器jdk1.8+maven① 打开IDEA → New Project → Maven → Next② 填写项目信息:Groupld:vip.buddhaArtifactId: spring-ioc-demoVersion: 1.0.0③ 点击Finish,项目结构如下:3. 添加依赖手动添加完毕依赖,点击idea右侧maven面板的刷新按钮,下载依赖4.2 实现接口UserServiceImpl5. 配置Spring IoC容器在src/main/resources原创 2025-05-03 03:31:49 · 669 阅读 · 0 评论 -
低代码开发直聘管理系统
低代码 + DeepSeek 组合的方式开发直聘管理系统,兼职是开挂的存在。整个管理后台系统 + 小程序端接口的输出,只花了两个星期不到。原创 2025-03-07 15:50:44 · 532 阅读 · 1 评论 -
若依前后端分离版项目电子证书查询系统部署到Linux生产环境
项目背景:这个项目之前是PHP语言开发的,采用MVC混编的,前端用Layui框架+后端用ThinkPHP8.0框架。客户要求给改成Java语言的,就选用了若依前后端分离低代码版。本地开发调试没有问题,就记录下整个项目上线过程。服务器背景:安装了宝塔,LNMP+Java+Redis环境安装好了。原创 2024-09-22 10:51:49 · 753 阅读 · 0 评论 -
用户端是小程序,后台管理系统是PC端的CMS系统
【代码】用户端是小程序,后台管理系统是PC端的CMS系统。原创 2024-08-12 00:10:43 · 261 阅读 · 0 评论 -
Java编程语言使用SpringBoot框架,整合Mybatis框架访问数据库,掌握这篇博客,基本就入门了
SpringBoot框架整合Mybatis,实现访问MySQL数据库,MyBatis查询条件是不等式,MyBatis参数如何传递,看完这篇博客基本够用了原创 2022-12-27 18:46:41 · 898 阅读 · 0 评论 -
SpringBoot框架整合日志系统,看完这个教程,基本就学会了
Java编程语言的SpringBoot框架整合日志系统,在开发中日志级别分别有error、warn、info、debug、trace等级别原创 2022-12-27 12:03:02 · 1347 阅读 · 2 评论 -
Java开发,解决商业运算上丢失精度的问题
BigDecimal加减乘除的使用,以及BigDecimal链式编程实现表达式的业务实现原创 2022-12-11 23:33:55 · 294 阅读 · 0 评论 -
Java编程语言SpringBoot框架整合Redis,根据博客步骤操作就可以了
springboot整合redis,实现java从数据库中查询的数据缓存到redis里的目的。同时封装了java操作redis多种数据类型的工具类。原创 2022-12-03 16:20:17 · 155 阅读 · 0 评论 -
SpringCloud分布式微服务,整合动态服务发现、配置和服务管理平台、熔断降级、分布式事务、网关、远程调用和负载均衡、MybatisPlus访问数据库一整套解决方案
SpringCloud Alibaba微服务整合Nacos、Sentinel、Seata、Gateway、OpenFeign、MybatisPlus等技术,实现服务注册与发现,配置中心,熔断限流,分布式事务,路由网关,远程调用,数据库访问等功能。原创 2022-09-22 23:40:15 · 852 阅读 · 3 评论 -
SpringBoot2.x整合kafka消息队列中间件
SpringBoot整合kafka、SpringBoot2.x整合kafka消息队列中间件原创 2022-04-03 14:09:10 · 2575 阅读 · 0 评论 -
SpringBoot整合Dubbo3.0+Zookeeper
SpringBoot整合Dubbo3.0+Zookeeper,实现一个系统对另外一个系统的RPC远程调用。consumer程序员无感知用了哪个provider服务,就像调用本地服务一样调用远程服务。原创 2022-03-28 11:27:13 · 2913 阅读 · 0 评论 -
大视频大文件上传实现逻辑
先实现PHP语言里分割视频再合成视频逻辑1 把大视频或大文件根据固定大小分割成多块// 分割的块编号$i = 0;// 要分割的文件$fp = fopen("upload.mp4", "rb");// 记录分割后文件信息$file = fopen("upload.txt", "a");while (!feof($fp)) { $handle = fopen("video/upload.{$i}.mp4", "wb"); // 切割文件块设置为5M fwrite($ha原创 2021-08-30 11:17:10 · 355 阅读 · 0 评论 -
MyBatis从未入门到放弃
1. 前戏本地创建ssm数据库创建student表CREATE TABLE `student` ( `id` int(11) NOT NULL, `name` varchar(255) DEFAULT NULL, `email` varchar(255) DEFAULT NULL, `age` int(11) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;插入两条数据INSE原创 2020-12-15 15:20:34 · 166 阅读 · 0 评论 -
Maven从入门到放弃
1. maven安装和配置1.1 http://maven.apache.org/download.cgi下载apache-maven-3.6.3-bin.zip1.2 解压安装包至无中文目录E:\work\maven_work\1.3 系统的环境变量中,指定一个M2_HOME的名称,内容E:\work\maven_work\apache-maven-3.6.31.4 再把M2_HOME加到path中,在所有路径之前加入%M2_HOME%\bin1.5 命令mvn -v检验是否安装成功2. ma原创 2020-12-11 15:23:16 · 151 阅读 · 1 评论 -
Java的集合
1. 集合类体系结构2. Collection集合概述和使用2.1 Collection集合概述是单列集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素JDk不提供此接口的任何直接实现,它提供更具体的子接口实现2.2 创建Collection集合的对象多态的方式具体的实现类ArrayList2.3 Collection集合常用方法方法名说明对象名.add()添加元素对象名.remove()从集合中移除指定的元素对象名.cl原创 2020-11-26 15:11:38 · 191 阅读 · 0 评论 -
Java的异常
异常:程序出现了不正常的情况。Throwable分Error和Exception。Exception又分为RuntimeException和非RuntimeExceptionError:严重问题,不需要处理Exception:成为异常类,它表示程序本身可以处理的问题RuntimeException:在编译期是不检查的,出现问题后,需要我们回来修改代码非RuntimeException:编译期就必须处理的,否则程序不能通过编译,就更不能正常运行了如果程序出现了问题,我们没有做任何处理原创 2020-11-24 10:31:11 · 136 阅读 · 0 评论 -
Java内部类
将一个类定义在另外一个类里面或者方法里面,那么这个类就称为内部类。1. 成员内部类特点:成员内部类可以无条件访问外部类的所有成员属性和成员方法(包括private成员和静态成员)public class Student { private String name = "buddha"; class Course { public void study() { System.out.println(name + "上语文课"); }原创 2020-11-21 11:17:20 · 128 阅读 · 0 评论 -
Java特殊参数和特殊返回值
1. 类名作为方法的形参和返回值1.1 作为方法的形参public class Student { public void study() { System.out.println("学生在学习"); }}public class Teacher { public void show(Student s) { s.study(); }}public class Demo { public static void main原创 2020-11-21 10:31:48 · 267 阅读 · 0 评论 -
Java的ArrayList类
ArrayList类是一个特殊的数组,动态数组。其优点:支持自动改变大小;可以灵活的插入元素;可以灵活的删除元素。其缺点:比一般的数组速度慢一点1. ArrayList集合常用方法// 创建空的集合对象ArrayList<Object> list = new ArrayList<>();// 对象名称.add() 在集合尾插入list.add("a");System.out.println(list); // [a]list.add("b");System.out原创 2020-11-20 18:20:57 · 135 阅读 · 0 评论 -
Java的StringBuilder类
StringBuilder是一个可变的字符串类,我们可以把它看成是一个容器,这里的可变指的是StringBuilder对象中的内容是可变的1. StringBuilder常用方法StringBuilder sb = new StringBuilder();// 对象名.length() 序列长度System.out.println(sb.length()); // 0// 对象名.append() 追加到序列sb.append("hello");System.out.println(sb);原创 2020-11-20 17:55:39 · 30443 阅读 · 3 评论 -
Java类和对象
1 类的定义一类具有共同属性和行为的抽象。类的组成是属性和行为。属性,在类中通过成员变量来体现(类中方法外的变量)。行为,在类中通过成员方法来体现。2 类定义的格式[标识符] class 类名 { // 成员变量 // 成员方法} // 范例public class Person { String name; int age; public void show() { System.out.println(name + " " + age);原创 2020-11-20 16:26:58 · 177 阅读 · 0 评论 -
Java方法知识点
1. 方法的定义方法是一个面向对象的概念,它依赖于对象,而函数不是。修饰词 返回值类型 方法名(参数列表) { 方法体}public static getMax(int a, int b) { return a > b ? a : b;}2. 方法注意事项方法不能嵌套返回值类型如果是void则无返回值,可以省略return,也可以添加return,后面不加数据3. 方法重载一个类中多个方法,满足以下条件则定义为重载多个方法在同一个类中多个方法具有相同的原创 2020-11-18 14:43:57 · 231 阅读 · 0 评论 -
Java一维数组和二维数组的定义和使用
/* 一维数组定义格式:dataType[] variable = new dataType[number] 例如:int[] i = new int[3]*/ int[] i1 = new int[3];/* 一维数组定义格式:dataType[] variable = new dataType[]{value1, value2, value3} 例如:int[] i = new int[]{1, 2, 3}*/ int[] i2 = new int[] {1,原创 2020-11-17 10:20:20 · 330 阅读 · 0 评论