游客tw6ko5zvddpcc_个人页

游客tw6ko5zvddpcc
个人头像照片
60
0
0

个人介绍

暂无个人介绍

擅长的技术

获得更多能力
通用技术能力:

暂时未有相关通用技术能力~

云产品技术能力:

暂时未有相关云产品技术能力~

阿里云技能认证

详细说明
暂无更多信息

2025年12月

  • 12.19 02:20:41
    发表了文章 2025-12-19 02:20:41

    common-lang3

    避免三目运算符引发Java自动拆装箱异常,当类型不一致时可能导致NPE。建议统一操作数类型或显式转换,确保基本类型与包装类混用时的安全性,提升代码稳定性与可读性。
  • 12.19 02:19:00
    发表了文章 2025-12-19 02:19:00

    定时任务概述

    定时任务是基于时间表达式周期性执行的任务,常用于定时对账、到期提醒、订单超时取消等场景。常见实现方案包括单体架构下的Timer、ScheduledExecutorService及Spring Task等技术。
  • 12.19 02:16:31
    发表了文章 2025-12-19 02:16:31

    服务暴露总结

    本文深入解析服务暴露的核心原理,涵盖本地与远程暴露机制,阐明“Service→Invoker→Exporter”的核心链路,辅以图示,为后续内容奠定基础。
  • 12.19 02:10:24
    发表了文章 2025-12-19 02:10:24

    Redis集群伸缩,转移插槽失败

    当Redis集群出现slot迁移异常时,可通过日志定位处于importing状态的slot ID。登录对应实例后,执行`cluster setslot <ID> stable`命令恢复稳定状态,解决迁移卡住问题。注意根据实际日志中的slot ID调整参数。
  • 12.19 02:06:23
    发表了文章 2025-12-19 02:06:23

    Jmeter快速入门

    Jmeter快速入门
  • 12.19 02:00:07
    发表了文章 2025-12-19 02:00:07

    安装Jmeter

    JMeter依赖JDK,需先安装并配置JDK环境变量。前往Apache JMeter官网(http://jmeter.apache.org/download_jmeter.cgi)下载最新版本,解压后即可使用,适用于性能测试与负载模拟。
  • 12.19 01:57:10
    发表了文章 2025-12-19 01:57:10

    了解@RefreshScope本身

    @RefreshScope是Spring的组合注解,核心为@Scope("refresh"),实现配置热加载。通过代理机制在每次调用时重新获取实例,结合@Target与@Retention元注解,控制作用范围与生命周期,实现Bean的动态刷新,适用于配置中心场景。
  • 12.19 01:54:09
    发表了文章 2025-12-19 01:54:09

    数据库设计三范式

    本文介绍数据库三范式:第一范式要求字段原子性,不可再分;第二范式要求消除部分依赖,表应描述单一主题;第三范式要求消除传递依赖。范式旨在减少冗余、提升数据一致性,但实际设计中需结合业务需求灵活应用,不必严格遵循。
  • 12.19 01:48:39
    发表了文章 2025-12-19 01:48:39

    虚拟机安装(CentOS7)

    准备CentOS7镜像及VMware Workstation虚拟机工具,可从百度云下载所需资源。使用VMware创建虚拟机,参考指定教程完成安装,系统默认用户名为root,密码由用户自设。确保电脑配置满足运行要求。
  • 12.19 01:43:59
    发表了文章 2025-12-19 01:43:59

    RememberMe简介及用法

    RememberMe是Web应用中常见的“记住我”功能,通过服务端生成持久化令牌(Token)并存储于Cookie,实现用户关闭浏览器后仍保持登录状态。与直接保存用户名密码不同,该机制基于安全令牌验证身份,避免重复登录。Spring Security通过`rememberMe()`配置启用此功能,但需防范令牌泄露风险,可通过数据库持久化Token并结合二次校验提升安全性。
  • 12.19 01:35:37
    发表了文章 2025-12-19 01:35:37

    SpringSecurity--过滤器链加载原理

    本节深入解析Spring Security过滤器链加载原理:通过`DelegatingFilterProxy`代理初始化`FilterChainProxy`,再由其获取`SecurityFilterChain`中定义的多个过滤器,最终形成完整的安全过滤链,揭示框架背后自动装配机制。
  • 12.19 01:28:37
    发表了文章 2025-12-19 01:28:37

    SpringBoot--常用过滤器介绍

    Spring Security通过过滤器链实现安全控制,涵盖认证、授权、CSRF防护等。如SecurityContextPersistenceFilter管理上下文,UsernamePasswordAuthenticationFilter处理登录,LogoutFilter处理退出。不同配置下过滤器数量和类型可变,灵活适配需求。(238字)
  • 12.19 01:18:52
    发表了文章 2025-12-19 01:18:52

    整合SpringSecurity

    本文介绍了Spring Security与Spring Boot的整合步骤:引入依赖、启动验证及登录测试。通过日志变化和自动跳转至login页面验证集成成功,使用默认用户名user和控制台生成的动态密码登录后,可访问受保护资源。完整代码见GitHub仓库Day01分支。
  • 12.19 01:13:03
    发表了文章 2025-12-19 01:13:03

    SpringBootSecurity--脚手架搭建

    SpringBootSecurity--脚手架搭建
  • 12.19 01:07:26
    发表了文章 2025-12-19 01:07:26

    @SpringBootConfiguration注解

    @SpringBootConfiguration是@Configuration的封装,标注主启动类,使其所在包成为组件扫描的根路径。因此主类需置于外层包,确保所有组件被扫描到,实现自动配置与组件注入。
  • 12.19 01:02:16
    发表了文章 2025-12-19 01:02:16

    SpringBoot怎么过滤不需要的组件

    Spring Boot中IOC容器确实存在,若不想某些Bean在启动时注入,可通过@ComponentScan指定扫描范围,或自定义TypeExcludeFilter排除特定类,也可在配置文件中设置过滤规则,灵活控制Bean加载。
  • 12.19 00:59:16
    发表了文章 2025-12-19 00:59:16

    AutoConfigurationExcludeFilter注解

    AutoConfigurationExcludeFilter核心为match()方法,用于判断类是否为自动配置类。其在TypeExcludeFilter基础上扩展,重点识别同时满足配置类与自动配置条件的类,实现精准排除。
  • 12.19 00:53:25
    发表了文章 2025-12-19 00:53:25

    TypeExcludeFilter注解

    TypeExcludeFilter通过match()方法扩展组件过滤机制,可向IOC容器注册自定义过滤器,在包扫描时筛选组件。其依赖Spring顶层BeanFactory接口,利用getBean、isTypeMatch等方法实现灵活的类型匹配与过滤,增强扫描控制能力,适用于复杂场景的组件管理。
  • 12.19 00:51:15
    发表了文章 2025-12-19 00:51:15

    @ComponentScan注解

    该注解原用于Spring框架的XML配置中,指定包扫描路径。在SpringBoot中,默认扫描主配置类所在包及其子包的组件,并可通过exclude排除特定类,实现自动装配与组件管理。
  • 12.19 00:49:11
    发表了文章 2025-12-19 00:49:11

    @Inherited 注解

    @Inherited使@SpringBootConfiguration、@EnableAutoConfiguration、@ComponentScan注解可被继承,SpringBoot主启动类因此具备自动配置、组件扫描等功能,简化配置。详情见:@Inherited作用说明。
  • 12.19 00:48:14
    发表了文章 2025-12-19 00:48:14

    @Documented注解

    该注解可用于生成Javadoc文档,结合@Target、@Retention等元注解,是实现自定义注解的基础。掌握其用法可提升代码可读性与开发效率。详情可参考“自定义注解”教程。
  • 12.19 00:47:00
    发表了文章 2025-12-19 00:47:00

    @Retention注解

    元注解用于修饰其他注解,其中SOURCE表示编译后不保留,CLASS为默认值,编译后保留在class文件中但不可被虚拟机读取,RUNTIME则可被虚拟机读取,支持反射机制,实现运行时处理。
  • 12.19 00:45:53
    发表了文章 2025-12-19 00:45:53

    @Target注解

    @Target注解用于指定自定义注解的作用目标,如类、接口、字段、方法、参数、构造函数、局部变量、注解类型及包,确保注解只能在指定程序元素上使用,提升代码规范性与可读性。
  • 12.19 00:44:16
    发表了文章 2025-12-19 00:44:16

    SpringBoot--自动装配机制

    SpringBoot--自动装配机制
  • 12.19 00:36:30
    发表了文章 2025-12-19 00:36:30

    SpringBoot--跨域处理

    SpringBoot--跨域处理
  • 12.19 00:25:41
    发表了文章 2025-12-19 00:25:41

    SpringBoot--不定参数入参

    本文介绍了接口入参的三种常见方式:非JSON格式直接传参、JSON格式传递单个或多个独立参数,以及通过封装对象接收JSON参数。涵盖Spring Boot下@PostMapping的典型用法,提升接口设计规范与可维护性。(238字)
  • 12.19 00:22:53
    发表了文章 2025-12-19 00:22:53

    SpringBoot--打包

    SpringBoot打包方法
  • 12.19 00:18:12
    发表了文章 2025-12-19 00:18:12

    SpringBoot--整合切面,参数拦截+过滤

    SpringBoot--整合切面,参数拦截+过滤
  • 12.18 17:53:24
    发表了文章 2025-12-18 17:53:24

    SpringBoot--整合Logback,滚动记录+多文件

    SpringBoot--整合Logback,滚动记录+多文件
  • 12.18 17:37:44
    发表了文章 2025-12-18 17:37:44

    SpringBoot--@Inherited

    @Inherited用于注解,使子类继承父类中标记该注解的元数据;但仅适用于类继承,接口继承和实现均不继承注解。
  • 12.18 17:35:21
    发表了文章 2025-12-18 17:35:21

    SpringBoot--无标题

    被@Configuration标注的类会被Spring IOC容器识别为配置类,作用等同于applicationContext.xml配置文件。通过注解方式注册Bean,结合AnnotationConfigApplicationContext可启动容器并管理Bean。示例代码展示了配置类及Bean的加载过程,输出结果显示配置类与组件均被成功注册到容器中。
  • 12.18 17:31:43
    发表了文章 2025-12-18 17:31:43

    SpringBoot--@Configuration

    被 @Configuration 标注的类视为Spring配置类,等同于XML配置文件。结合 @Bean 注册Bean,通过 AnnotationConfigApplicationContext 加载配置类,可启动IOC容器并管理Bean实例,实现基于Java的配置。
  • 12.18 17:27:29
    发表了文章 2025-12-18 17:27:29

    MaBatis--分页

    本文介绍了五种分页实现方式:MyBatis自带RowBounds内存分页、PageHelper插件分页、原生SQL分页、数组分页及拦截器分页。对比了逻辑分页与物理分页的优劣,指出大数据量下应优先选用物理分页,避免内存溢出,提升系统性能。
  • 12.18 17:21:42
    发表了文章 2025-12-18 17:21:42

    MyBatis--映射关系

    MyBatis中通过resultMap实现关联映射:一对一使用resultMap解决字段与属性不一致;一对多通过<collection>映射集合,如用户关联多个角色;多对一用<association>,如博客关联作者;多对多借助中间类,如用户与部门通过UserForDept建立双向关联。
  • 12.18 17:18:17
    发表了文章 2025-12-18 17:18:17

    MyBatis--常见配置

    MyBatis配置优先级:方法参数 > resource/url属性 > properties元素内属性。支持多环境配置,通过environments指定默认环境和数据源,结合事务管理器(JDBC/MANAGED)管理事务,常用于多数据源场景,与Spring集成时由Spring接管事务管理。
  • 12.18 17:10:11
    发表了文章 2025-12-18 17:10:11

    Java泛型类型擦除以及类型擦除带来的问题--泛型擦除引起的问题及解决方法

    Java泛型在编译时先进行类型检查再擦除,类型检查针对引用而非对象。擦除后泛型转为原始类型,通过自动强转实现安全取值。多态中因擦除可能导致重写失效,编译器生成桥方法解决。泛型不支持基本类型,静态成员不能使用类的泛型参数,但泛型方法可独立定义类型。instanceof不适用泛型类型判断。
  • 12.18 17:00:45
    发表了文章 2025-12-18 17:00:45

    Java泛型类型擦除以及类型擦除带来的问题--什么是泛型擦除后保留的原始类型

    泛型擦除后生成原始类型,类型参数被替换为其限定类型(如无则用Object)。例如`Pair<T>`变为`Pair`,成员变为`Object`;若`T extends Comparable`,则替换为`Comparable`,确保类型安全与兼容性。
  • 12.18 16:57:13
    发表了文章 2025-12-18 16:57:13

    Java泛型类型擦除以及类型擦除带来的问题--什么是泛型擦除

    Java泛型是伪泛型,编译后类型信息被擦除,仅保留原始类型。如`ArrayList<String>`与`ArrayList<Integer>`在运行时均为`ArrayList`,通过反射可绕过泛型限制添加非指定类型元素,证明泛型仅在编译期生效,JVM无法感知其存在。
  • 12.18 16:51:42
    发表了文章 2025-12-18 16:51:42

    JVM--类加载--常见加载顺序

    本示例展示了Java中各类代码块的执行顺序:静态代码块随类加载仅执行一次,优先于main函数;局部代码块在方法内按顺序执行;构造代码块每次创建对象前执行;构造器随后执行。输出结果体现其优先级与调用时机。
  • 12.18 16:47:23
    发表了文章 2025-12-18 16:47:23

    ArrayList扩容机制

    ArrayList 添加元素时,首先调用 `ensureCapacityInternal()` 确保容量足够。首次添加时,最小容量设为默认值10,触发扩容;后续添加若超出当前容量(初始10,每次扩容1.5倍),则调用 `grow()` 扩容。`grow()` 将容量增加50%,并通过 `Arrays.copyOf()` 创建新数组。注意:`length` 用于数组,`length()` 用于字符串,`size()` 用于集合。
  • 12.18 16:42:08
    发表了文章 2025-12-18 16:42:08

    Eclipse运行SSM/SSH项目教程 ——常见错误

    Eclipse运行SSM/SSH项目教程 ——常见错误
  • 12.18 16:37:32
    发表了文章 2025-12-18 16:37:32

    Eclipse运行SSM/SSH项目教程

    本文介绍了Java开发环境搭建步骤:包括下载开源Eclipse、配置JDK(常用1.8)和Tomcat(如7.0、8.0);演示了项目导入流程及Eclipse中绑定Tomcat服务器的详细操作,辅以多张图文指引,帮助开发者快速完成开发环境配置。
  • 12.18 16:25:29
    发表了文章 2025-12-18 16:25:29

    并发修改同一记录时需要加锁

    推荐根据冲突概率选择锁策略:冲突小于20%时使用乐观锁,以version控制更新,重试不少于3次;否则采用悲观锁,可在应用层、缓存或数据库层加锁,确保数据一致性。
  • 12.18 16:23:54
    发表了文章 2025-12-18 16:23:54

    SimpleDateFormat不要定义为static

    SimpleDateFormat 线程不安全,避免定义为 static,若需共享应加锁或使用 ThreadLocal。推荐使用 DateUtils 工具类。JDK8 中建议用 Instant、LocalDateTime 和 DateTimeFormatter,具有线程安全、不可变等优点,更简单高效。
  • 12.18 16:21:36
    发表了文章 2025-12-18 16:21:36

    使用 entrySet 遍历 Map 类集合 KV

    遍历Map时,keySet需两次遍历,效率较低;entrySet一次获取键值对,性能更优。JDK8推荐使用Map.forEach方法。values()返回V值List,keySet()返回K值Set,entrySet()返回K-V组合Set。
  • 12.18 16:15:17
    发表了文章 2025-12-18 16:15:17

    Arrays.asList之后不要调用修改操作

    `Arrays.asList()`返回的列表是固定大小的,底层基于原数组,不支持add/remove操作,否则抛出UnsupportedOperationException;且修改原数组会同步影响列表元素,因二者共享同一引用。
  • 12.18 16:12:59
    发表了文章 2025-12-18 16:12:59

    线程池初始化严禁使用Executors

    阿里巴巴规范禁止使用Executors创建线程池,因可能引发OOM。如newFixedThreadPool使用无界队列,任务堆积易导致内存溢出;newCachedThreadPool可创建过多线程,同样存在OOM风险。推荐通过ThreadPoolExecutor或Guava方式显式设置线程数、队列容量等,避免资源耗尽,提升系统稳定性与可追溯性。
  • 12.18 16:06:08
    发表了文章 2025-12-18 16:06:08

    One Trick Per Day

    初始化Map时,指定容量并非实际分配大小,HashMap会扩容至最近的2的幂(如1→2,3→4,9→16),易引发性能波动。建议使用Guava工具Maps.newHashMapWithExpectedSize(),按预期元素数自动计算初始容量,避免频繁扩容,提升性能稳定性。
  • 12.18 16:00:22
    发表了文章 2025-12-18 16:00:22

    生产环境发布管理

    本文介绍大型团队如何通过自动化部署平台实现多环境(dev→test→pre→prod)高效发布。涵盖各环境职责、角色分工及CI/CD流程,结合GitLab与Jenkins,实现分支创建、构建、部署一体化,支持热更新与回滚,提升发布效率与系统稳定性。
  • 12.18 15:50:25
    发表了文章 2025-12-18 15:50:25

    工程搭建

    从0到1搭建工程
  • 发表了文章 2025-12-19

    整合SpringSecurity

  • 发表了文章 2025-12-19

    RememberMe简介及用法

  • 发表了文章 2025-12-19

    TypeExcludeFilter注解

  • 发表了文章 2025-12-19

    Redis集群伸缩,转移插槽失败

  • 发表了文章 2025-12-19

    SpringSecurity--过滤器链加载原理

  • 发表了文章 2025-12-19

    @SpringBootConfiguration注解

  • 发表了文章 2025-12-19

    SpringBoot--打包

  • 发表了文章 2025-12-19

    AutoConfigurationExcludeFilter注解

  • 发表了文章 2025-12-19

    安装Jmeter

  • 发表了文章 2025-12-19

    服务暴露总结

  • 发表了文章 2025-12-19

    SpringBoot--自动装配机制

  • 发表了文章 2025-12-19

    @Retention注解

  • 发表了文章 2025-12-19

    SpringBoot--不定参数入参

  • 发表了文章 2025-12-19

    虚拟机安装(CentOS7)

  • 发表了文章 2025-12-19

    @ComponentScan注解

  • 发表了文章 2025-12-19

    SpringBoot怎么过滤不需要的组件

  • 发表了文章 2025-12-19

    定时任务概述

  • 发表了文章 2025-12-19

    了解@RefreshScope本身

  • 发表了文章 2025-12-19

    SpringBoot--常用过滤器介绍

  • 发表了文章 2025-12-19

    common-lang3

正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息
正在加载, 请稍后...
暂无更多信息