[MES]数据库改造H2到MySQL(☆☆)
本文介绍如何运行并改造一个SpringBoot项目,包括从Gitee克隆代码、环境配置(JDK/Maven)、数据库从H2切换至MySQL等步骤,强调新人如何应对技术栈不熟、环境配置难等问题,并引导思考如何高效请教同事、快速融入团队开发。
重载与重写的区别
重载是方法名相同但参数列表不同,由编译器在编译时确定;重写是父子类中方法名和参数列表均相同,由运行时解释器根据对象实际类型决定调用哪个方法,可用@Override检查。
Java线程池实现架构
Java中线程池相关类主要包括Executor、ExecutorService、ScheduledExecutorService及其具体实现ThreadPoolExecutor和ScheduledThreadPoolExecutor。Executors为工厂类,用于创建不同类型的线程池。Executor是顶层接口,仅支持执行无返回值任务;ExecutorService扩展其功能,支持有返回值任务及线程管理;ScheduledExecutorService进一步增加定时调度能力。
ArrayList扩容机制
本文深入分析了Java中ArrayList的add及扩容机制。通过源码解析,详解ensureCapacityInternal、ensureExplicitCapacity和grow方法的工作流程,揭示其首次扩容默认至10,之后每次扩容为原容量1.5倍的核心逻辑,并区分length、length()与size()的用法差异。
1-常用过滤器介绍
本文介绍了Spring Security中的核心过滤器链,详细解析了15个关键过滤器的作用,如SecurityContextPersistenceFilter、CsrfFilter、UsernamePasswordAuthenticationFilter等,涵盖认证、授权、会话管理及异常处理机制,揭示其基于AOP思想的请求拦截与安全控制原理。
认识OAuth2.0
OAuth2.0是一种开放授权协议,允许第三方应用在用户授权下获取资源访问权限,而无需获取用户账号密码。其核心是通过令牌(token)实现安全授权,广泛应用于第三方登录、服务间资源调用等场景,支持授权码、简化、密码和客户端四种模式,兼顾安全性与灵活性。
SpringCloud概述
Spring Cloud是Spring推出的微服务一站式解决方案,弥补了分散技术栈的整合难题。它具备约定大于配置、组件丰富、开箱即用等特点,完美支持云原生架构。版本以伦敦地铁站命名,如Hoxton.SR12,避免与子项目版本冲突,便于统一管理。
什么是跨域
CORS需浏览器与服务器共同支持,所有现代浏览器均已兼容。通信过程由浏览器自动完成,开发者无需特殊处理。关键在于服务器实现CORS接口。请求分为简单和非简单两类,区别在于请求方法和头信息是否超出限定范围,浏览器对此有不同处理机制。
实现权限管理的技术
权限管理技术选型需综合考量。常见方案包括Apache Shiro(轻量易用,但安全性弱)、Spring Security(功能强大、防护全面,但配置复杂)及自定义ACL(契合业务但维护成本高)。多数框架基于ACL或RBAC模型封装,应根据项目规模与架构合理选择。