Java开发:从类与对象到业务系统

一个订单从创建到保存,涉及对象设计、集合操作、数据库访问与异常处理。沿着这样的业务流程学习Java,再深入多线程与JVM,逐步掌握后端程序的编写和排错方法。

阅读118
发布人iPython
发布时间2026-09-24
相关标签:
Java开发:从类与对象到业务系统

Spring Boot 多环境配置切换与加载优先级详解

本文介绍如何在 Spring Boot 中通过 application-{profile}.properties/yml 文件实现开发、测试、生产等多环境的配置隔离。详细解析了使用 spring.profiles.active 属性直接指定或通过 Maven 插件替换占位符 @spring.profiles.active@ 两种方法,并梳理了配置文件从外部目录到 classpath 的四级加载优先级,确保正确读取所需参数。

Spring Boot 多环境配置切换与加载优先级详解

MyBatis XML中status!=0判断失效的原因与解决

在MyBatis XML动态SQL中使用test标签判断Integer类型的status参数时,若同时包含不等于空字符串(!='')和不等于0的判断,会导致逻辑永远为假。这是因为OGNL引擎对非基础类型及包装类进行了隐式类型转换,使得0被转换为0.0并与空字符串的转换结果相等。解决方法是移除针对String类型的判空操作,仅根据实际数据类型编写判断逻辑。

MyBatis XML中status!=0判断失效的原因与解决

绿色版 SQL Server 2008 R2 常见连接问题与 JDBC 驱动适配方案

使用绿色版 SQL Server 2008 R2 常遇 Navicat 无法访问及 JDBC 连接失败问题。因 Java 8u291+ 禁用 TLS 1.0/1.1,新版 JDBC 驱动无法建立 SSL 连接。解决方法包括:降低 mssql-jdbc 至 8.2.x.jre8 版本以兼容旧协议;根据绿色版启动界面显示的自定义端口(如 8829)和实例名调整 JDBC URL。本文详解配置步骤与连接串参数设置。

绿色版 SQL Server 2008 R2 常见连接问题与 JDBC 驱动适配方案

Java中HashMap.values()转List报错的修复与正确用法

在Java开发中将HashMap.values()直接强转为List会触发ClassCastException,因为values()返回的是Collection而非List接口。本文通过源码分析指出根本原因,并提供基于ArrayList构造函数的标准修正方案及Arrays.asList替代方法,附带完整可运行代码示例,帮助开发者避免此类常见的类型转换陷阱。

Java中HashMap.values()转List报错的修复与正确用法

JavaWeb前端向后端传值方式及参数注解详解

本文总结JavaWeb中前端向后端传值的几种常见方式,包括查询字符串、表单提交、Ajax JSON请求等,并详细解析Spring MVC中接收参数的三个核心注解:@RequestParam用于普通参数,@PathVariable用于URL路径变量,@RequestBody用于接收JSON对象。通过代码示例展示不同场景下的具体用法和注意事项。

IntelliJ IDEA 中调试 Maven 插件的完整步骤

本文详细介绍如何在 IntelliJ IDEA 中调试 Maven 插件。通过执行带 debug 参数的 mvn 命令启动目标并监听端口,随后在 IDEA 中配置 Remote 调试连接对应端口,即可对插件源码进行单步跟踪和断点调试,解决插件打包异常问题。

IntelliJ IDEA 中调试 Maven 插件的完整步骤

MyBatis 主键回填返回 1 的真相与避坑指南

解决 MyBatis insert 操作返回值一直是 1(受影响行数)的问题。正确做法是使用 useGeneratedKeys 配合 keyProperty,或 selectKey 进行主键回填,使 ID 自动映射到实体对象。特别注意:若参数使用 @Param 注解包裹实体对象,将导致主键无法回填。

MyBatis 主键回填返回 1 的真相与避坑指南

C语言判断素数及输出100-200间素数实战

本文详解C语言中判断素数的两种核心方法:穷举法与优化至根号n法,并通过完整代码演示如何高效筛选100至200之间的全部素数。适合初学者掌握算法逻辑与基础语法应用。

Java对象序列化为MySQL BLOB存储与读取实现

本文将介绍如何利用Java将复杂对象序列化为二进制字节数组并存储在MySQL数据库的BLOB字段中,以及如何从数据库中读取字节数据并反序列化为原始Java对象。核心在于使用ObjectOutputStream和ObjectInputStream进行流处理,同时确保实体类实现Serializable接口并声明serialVersionUID以防止版本变更导致的反序列化异常。

Java对象序列化为MySQL BLOB存储与读取实现