|
20天前
|
XML JSON Java
|

什么是RESTful

RESTful是一种面向资源的API设计规范,强调使用统一的URI表示资源,通过HTTP动词(GET、POST、PUT、DELETE)操作资源,实现行为标准化。相比传统接口路径混乱、动词冗余的问题,RESTful结构清晰、易于理解与扩展,提升前后端协作效率和系统可维护性。

45 0
|
20天前
|
存储 安全 Java
|

6.鉴权

本文介绍基于Spring Security与JWT的客户端Token认证方案,涵盖实现思路、核心代码及完整流程。通过自定义过滤器与认证逻辑,结合RBAC权限模型,实现安全的Token生成、校验与访问控制,保护Spring Boot应用接口。

33 0
|
20天前
|
安全 数据库 数据安全/隐私保护
|

1.RememberMe简介及用法

RememberMe功能并非简单保存用户名密码,而是通过服务端生成令牌(Token)实现持久登录。用户勾选后,浏览器会携带该令牌自动认证,避免重复登录。为提升安全性,可将Token持久化至数据库并增加二次校验机制,防止泄露风险。

55 0
|
20天前
|
Java Maven
|

3. 打包

本文介绍Java项目打包为可执行JAR文件的两种方式:一是将所有内容打包进单一JAR,通过Maven配置spring-boot-maven-plugin实现;二是将JAR、依赖与配置文件分离。涵盖配置方法、打包命令(mvn clean package)、运行与停止指令(java -jar、kill -9 pid)等操作步骤。

59 0
|
20天前
|
SQL Java Spring
|

1. 整合Logback,滚动记录+多文件

`logback-spring.xml` 是Spring Boot项目中的日志配置文件,用于定义日志输出格式、级别、路径及滚动策略。支持按模块(如SQL、支付、任务等)分离日志,配置不同appender,并可通过`LogProxy.getLogger("XXX_LOG")`获取指定日志实例,实现精细化日志管理。

37 0
|
20天前
|
Java
|

@Inherited

@Inherited 是 Java 中的元注解,用于修饰自定义注解,使其在类继承中可被子类继承。当某注解标注了 @Inherited,且应用于父类时,子类会自动继承该注解。但此机制仅适用于类的继承,不适用于接口继承或类实现接口的情况。

32 0
|
20天前
|
安全 Java 数据安全/隐私保护
|

4.认识SpringSecurity

Spring Security 是基于过滤器链的成熟安全框架,提供认证、鉴权及防御 CSRF 等攻击的核心功能,支持多种认证方式与灵活的权限控制模型。

39 0
|
20天前
|
前端开发 程序员 开发者
|

常见注解及使用说明

本文介绍了SpringMVC中@RequestMapping注解的作用与原理,讲解其如何将前端HTTP请求映射到后端控制器方法,并列举了常用衍生注解如@GetMapping、@PostMapping等,帮助开发者理解接口路径的定义机制,实现前后端对接。

43 0
|
20天前
|
存储 安全 Java
|

认证源码分析与自定义后端认证逻辑

本文深入分析Spring Security认证流程,从UsernamePasswordAuthenticationFilter到AuthenticationManager及AbstractUserDetailsAuthenticationProvider源码,详解认证机制,并指导如何通过实现UserDetailsService完成自定义数据库认证,最终实现安全控制。

46 0
|
20天前
|
存储 缓存 Java
|

自动装配机制

本文深入解析SpringBoot自动装配机制,围绕@SpringBootApplication注解展开,剖析其组合注解中的@ComponentScan、@SpringBootConfiguration与@EnableAutoConfiguration核心原理,详解元注解作用及自动配置类如何通过spring.factories实现自动化加载与组件过滤。

47 0
|
20天前
|
JSON 数据格式
|

4. 不定参数入参

本文介绍了接口参数的两种处理方式:非JSON格式与JSON格式入参。前者支持基础类型、对象等直接传参,后者通过@RequestBody接收JSON数据,可封装为对象并结合@Valid进行校验,提升代码规范性与可维护性。

34 0
|
20天前
|
缓存 Java Nacos
|

@RefreshScope热更新原理

本文深入解析Spring Cloud中@RefreshScope注解实现配置热更新的原理。通过分析其组合注解特性,重点剖析@Scope("refresh")如何借助动态代理与缓存机制,在配置变更时触发Bean重建,结合Nacos实现配置自动刷新,从而达到无需重启应用即可生效的效果。

81 6
|
20天前
|
安全 Java 应用服务中间件
|

3.实现权限管理的技术

本文介绍了权限管理常见技术选型,对比Apache Shiro、Spring Security及自定义ACL的优缺点,涵盖配置复杂度、适用架构及安全性等方面,助你选择最适合项目的技术方案。

39 0
|
20天前
|
存储 缓存 Java
|

自定义注解

本文介绍如何在Spring框架中实现自定义注解,结合AOP与过滤器应用于日志记录、权限控制等场景。通过定义注解、使用@Target和@Retention等元注解,并配合AOP切面或拦截器,实现对方法的增强处理,提升代码可读性与复用性。

52 0
|
20天前
|
存储 负载均衡 算法
|

负载均衡算法

本文介绍多种负载均衡算法:随机、轮询、最小活跃数、源地址哈希及一致性哈希。涵盖适用场景、实现原理与代码示例,适用于服务器性能均等或加权情况,强调动态分配与请求稳定性。

66 1
|
20天前
|
Web App开发 安全 JavaScript
|

5.跨域处理

本文介绍跨域问题及其解决方案。当协议、域名、端口任一不同时即产生跨域,浏览器因同源策略限制资源访问。通过CORS(跨域资源共享)可在服务端设置Access-Control-Allow-Origin等响应头,实现安全跨域。常用方案包括@CrossOrigin注解、WebMvcConfigurer全局配置及Filter拦截器方式,灵活控制跨域权限。

50 0
|
20天前
|
SQL NoSQL 前端开发
|

大厂如何解决订单幂等问题

本文详解分布式系统中订单接口幂等性设计:通过唯一订单号与数据库主键约束防止重复下单,结合Redis标识与版本号机制解决ABA问题,确保请求重复时数据一致,适用于各类数据库场景。

51 0
|
20天前
|
安全 数据安全/隐私保护
|

1.什么是权限管理

权限管理包含认证与授权两大核心:认证确认用户身份(如登录),授权则分配资源访问权限。通过角色叠加实现菜单动态展示,保障系统安全,避免操作越权或数据泄露。

46 0
|
20天前
|
存储 缓存 安全
|

1-常用过滤器介绍

本文介绍了Spring Security核心过滤器链中15个关键过滤器的作用,涵盖安全上下文管理、认证、授权、CSRF防护、会话控制及异常处理等机制,揭示其基于AOP思想的请求拦截与处理流程,帮助理解Security底层工作原理。

46 0
|
20天前
|
SQL 缓存 Java
|

MyBatis 汇总

本文介绍了MyBatis的核心配置与使用技巧,涵盖属性加载优先级、多环境配置、事务管理、XML映射(一对一、一对多、多对多)、分页实现方式(逻辑与物理分页)及缓存机制,并简要分析了执行器类型与批量操作原理,助力高效开发。

34 0
|
20天前
|
存储 安全 小程序
|

1.认识OAuth2.0

OAuth2.0是一种开放授权标准,允许第三方应用在用户授权下安全访问资源,无需获取用户账号密码。其核心是通过令牌(token)实现有限授权,广泛用于第三方登录、服务间资源调用等场景,支持授权码、简化、密码和客户端四种模式,兼顾安全性与灵活性。

65 0
|
20天前
|
Java Shell 测试技术
|

Jmeter快速入门

本文介绍JMeter的安装与快速入门。首先需安装JDK并配置环境,从官网下载JMeter后解压,通过脚本启动。设置中文需修改配置文件language=zh_CN。随后演示创建线程组、添加HTTP取样器及监听器,完成简单性能测试。

80 3
|
20天前
|
SQL Java 关系型数据库
|

MyBatis分页

本文介绍六种分页实现方式:MyBatis自带RowBounds内存分页、PageHelper插件分页、SQL原生分页、数组分页、拦截器分页,并对比逻辑分页与物理分页的优劣。大数据量下推荐物理分页,避免内存溢出,提升性能。

48 0
|
20天前
|
XML Java 数据格式
|

SpringBoot @Configuration

`@Configuration` 注解用于标记配置类,相当于 XML 配置文件,可定义 Bean 并由 Spring IOC 容器管理。配合 `@Bean` 注解注册组件,通过注解方式启动容器即可加载配置类及其中的 Bean。

44 0
|
20天前
|
Java 数据库连接 mybatis
|

MyBatis 映射关系(1-1 1-n n-n)

本文介绍了MyBatis中四种核心映射关系:一对一、一对多、多对一、多对多。通过resultMap实现属性与字段的映射,解决命名不一致问题;一对多使用`<collection>`,多对一使用`<association>`,多对多则借助中间类实现双向关联,适用于复杂业务场景的数据封装。

34 0
|
20天前
|
安全 Java 开发工具
|

1.工程搭建与验证

本文介绍如何基于阿里云脚手架快速搭建SpringBoot工程,并整合SpringSecurity实现基础安全控制。涵盖项目创建、代码导入、Web依赖配置及登录验证流程,附完整代码仓库地址。

55 0
|
20天前
|
安全 Java Spring
|

2.过滤器链加载原理

本文深入解析Spring Security底层过滤机制,揭示十五个过滤器如何通过DelegatingFilterProxy和FilterChainProxy自动加载并执行,最终明确SecurityFilterChain才是真正的过滤器链实现。

37 0
|
20天前
|
运维 Devops 开发工具
|

生产环境缺陷管理

git-poison基于go-git实现分布式bug追踪,解决多分支开发中bug漏修、漏发问题。通过“投毒-解毒-银针”机制,自动化卡点发布流程,降低协同成本,提升发布安全性与效率,已在大型团队落地应用。

43 0
|
20天前
|
缓存 Java 数据库连接
|

MyBatis常见配置

本文介绍MyBatis核心配置,包括属性加载优先级(方法参数 > resource/url > properties元素)、常用配置项如缓存、延迟加载、执行器类型,以及多环境配置与事务管理(JDBC/MAINTAINED),适用于多数据源场景。

40 0
|
20天前
|
XML Java 数据格式
|

SpringBoot @Configuration

被 `@Configuration` 注解的类视为Spring配置类,相当于XML配置文件,用于定义Bean。通过 `@Bean` 注册组件,结合 `AnnotationConfigApplicationContext` 启动容器,可加载并管理Bean实例,实现基于Java的配置。

38 0
|
20天前
|
存储 消息中间件 开发框架
|

应用架构图

技术架构是将业务需求转化为技术实现的关键过程,涵盖分层设计、技术选型与系统集成。本文详解单体与分布式架构,包括展现层、业务层、数据层及基础层的设计原则,并阐述应用间及外部系统的调用关系与边界划分,构建清晰的技术蓝图。

62 0
|
20天前
|
存储 NoSQL 关系型数据库
|

1-MongoDB相关概念

MongoDB是一款高性能、无模式的文档型NoSQL数据库,适用于高并发、海量数据、高可用性场景。其灵活的BSON文档模型、丰富的查询支持及水平扩展能力,广泛应用于社交、游戏、物联网等领域,尤其适合非事务性、快速迭代的应用系统。

54 0
|
20天前
|
存储 缓存 算法
|

IO/线程 零拷贝

实现文件传输时,传统方法因频繁的上下文切换和内存拷贝导致性能低下。零拷贝技术通过减少系统调用和内存复制,提升传输效率,尤其适用于小文件。对于大文件,宜采用异步IO结合直接IO,避免PageCache负面影响,从而优化高并发场景下的性能表现。

54 0
|
20天前
|
运维 Kubernetes Java
|

物理部署图

物理部署图描述系统运行时的硬件配置与软件部署结构,展现节点、构件、物件及连接关系,帮助理解分布式系统的网络架构与运维部署,是实现软硬件协同运行的重要视图。

63 0
|
20天前
|
数据采集 领域建模 数据库
|

领域模型图(数据架构/ER图)

本文介绍如何通过四色原型法进行领域建模,构建数据架构中的ER图。以风控系统为例,依次解析关键流程、识别时标性原型(MI)与参与方-地点-物品原型(PPT),补充角色(Role)和描述(DESC),最终提炼出实体关系图(ER图),实现从业务到数据模型的转化。

44 0
|
20天前
|
NoSQL 关系型数据库 MongoDB
|

MongoDB

本节带你快速入门非关系型数据库MongoDB,无需过多技术基础,45分钟内掌握核心实战技能。内容涵盖概念、部署、常用命令及索引知识,附学习时长与难度分级,助力高效上手。

41 0
|
20天前
|
监控 算法 Unix
|

IO/线程 Thread.sleep(0) 到底有什么用(读完就懂)

本文深入解析Thread.Sleep的原理与应用,结合操作系统调度机制,揭示Sleep(1000)未必准时唤醒、Sleep(0)主动让出CPU等行为的本质,帮助开发者正确理解线程休眠与CPU竞争的关系。

43 0
|
20天前
|
Java 应用服务中间件 网络安全
|

Java基础 Eclipse运行SSM/SSH项目教程

本文介绍了Eclipse环境下Java Web项目的运行与配置流程,涵盖JDK、Tomcat等基础软件安装,项目导入及服务器绑定方法,并提供SSH/SSM框架案例与常见错误解决方案。

48 0
|
20天前
|
存储 Java 编译器
|

Java泛型类型擦除以及类型擦除带来的问题

Java泛型在编译时会进行类型擦除,所有泛型信息被移除,仅保留原始类型(如Object或限定类型)。例如,List<String>和List<Integer>在运行时均为List。类型检查在编译期完成,针对引用而非对象本身。擦除后通过桥方法解决多态冲突,并自动插入强制转换。静态成员不能使用类的泛型参数,基本类型需用包装类。

36 0
|
20天前
|
SQL 缓存 Java
|

MyBatis 汇总

本文介绍了MyBatis的核心配置与使用技巧,涵盖属性优先级、多环境配置、事务管理、XML映射(一对一、一对多、多对多)、分页策略(逻辑与物理分页)及缓存机制等内容,帮助开发者高效掌握MyBatis在实际项目中的应用。

39 0
|
20天前
|
Java 关系型数据库 开发工具
|

自救手册

本文档为新员工入职指南,涵盖首日工作流程:账号开通、开发环境配置(JDK、Maven、IDEA)、代码拉取与Git操作、常用中间件访问及故障排查。包含Nacos、MySQL、Redis等连接配置,Git常用命令与冲突解决,并介绍如何构建二方包和搭建Spring Boot工程,助力快速上手项目开发。

61 0
|
20天前
|
Java 测试技术 Linux
|

生产环境发布管理

本文介绍大型团队中多环境自动化发布流程,涵盖DEV、TEST、PRE、PROD各环境职责,结合CI/CD平台实现分支管理、一键部署,并通过Skywalking等工具高效排查日志,提升发布效率与系统稳定性。

40 0
|
20天前
|
开发者
|

业务架构图

本文介绍了业务架构图的核心概念与绘制方法,涵盖业务定义、架构域分类,强调业务架构是技术、应用与数据架构的基础。通过分层、分模块、分功能三步法,梳理业务逻辑,明确模块边界与信息流,提升客户理解与开发效率。

56 0
|
20天前
|
Java 大数据
|

集合:ArrayList扩容机制

本文深入分析了Java中ArrayList的add()及扩容机制。通过源码解析ensureCapacityInternal、ensureExplicitCapacity和grow()方法,揭示其动态扩容原理:首次扩容至10,之后每次扩容为原容量的1.5倍(通过位运算高效实现),并结合元素添加过程详解容量变化逻辑,帮助理解ArrayList底层实现与性能优化关键点。

53 0
|
20天前
|
SQL Java 关系型数据库
|

MyBatis 分页

本文介绍了六种分页实现方式:MyBatis自带RowBounds内存分页、PageHelper插件分页、SQL物理分页、数组分页、拦截器分页,并对比了逻辑分页与物理分页的优劣。小数据量时逻辑分页较快,但大数据易内存溢出;推荐优先使用物理分页,尤其在数据量大时性能更优、资源消耗更少。

47 0
|
20天前
|
Java
|

jvm中类加载的常见加载顺序

本示例展示了Java中各类代码块的执行顺序:静态代码块随类加载执行且仅一次,优先于主函数;局部代码块在方法内按顺序执行;构造代码块每次创建对象时执行,早于构造器。输出结果体现其执行优先级。

38 0
|
20天前
|
uml C语言
|

系统时序图

时序图(Sequence Diagram)是UML中描述对象间消息传递时间顺序的交互图。横轴为对象,纵轴为时间,通过生命线、控制焦点和消息等元素,展现系统动态协作过程,强调交互的时序性,常用于建模并发行为与方法调用流程。

37 0
|
20天前
|
NoSQL Linux Shell
|

2-MongoDB单机部署

本文介绍了MongoDB在Windows和Linux系统下的安装、配置与启动方法,包括下载地址、版本选择、解压安装、命令行及配置文件启动方式,并详细说明了如何通过Shell和图形化工具Compass连接数据库。同时提供常见问题解决方案及附件中的各环境安装包链接,便于快速部署使用。

69 0
|
20天前
|
存储 缓存 安全
|

Java基础 One Trick Per Day

初始化Map应避免直接指定大小,建议使用Guava的newHashMapWithExpectedSize或手动计算容量。禁止使用Executors创建线程池,易因队列无界或线程数过多导致OOM,推荐ThreadPoolExecutor自定义参数。Arrays.asList返回不可变列表,禁用增删操作。遍历Map优先使用entrySet或JDK8的forEach。SimpleDateFormat非线程安全,避免static共享可用ThreadLocal或DateTimeFormatter替代。并发更新记录时建议采用乐观锁(如version机制)或加锁策略,冲突概率低时优选乐观锁并设置合理重试次数

39 0
|
20天前
|
缓存 Java 数据库连接
|

MyBatis 常见配置

本文介绍了MyBatis的核心配置机制,包括属性加载优先级(方法参数 > resource/url > properties元素)、常用配置项如缓存、延迟加载、执行器类型等,并详解了多环境配置方式及事务管理(JDBC与MANAGED)。适用于需掌握MyBatis配置原理的开发者。

30 0

阿里云百炼

基于通义系列大模型和开源大模型的一站式大模型服务平台,提供「生成式大模型的全流程应用工具」和「企业大模型的全链路训练工具」。为大模型,也为小应用。 阿里云百炼官网网址:https://www.aliyun.com/product/bailian

0
今日
1479
内容
44
活动
3117
关注
你好!
登录掌握更多精彩内容

活跃用户

相关产品

  • 大模型服务平台百炼