自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 收藏
  • 关注

原创 问题解决:BigDecimal累加遇null必报错?一招解决实战坑

摘要: 开发CRM回款功能时,BigDecimal累加报NullPointerException,排查发现是回款金额字段存在null值导致。解决方法是在Stream累加前用Optional.ofNullable处理null值,将其替换为BigDecimal.ZERO。经验教训:数据库字段可能为null时,BigDecimal运算需做空值防护,排查NPE应优先检查数据本身而非新增字段。关键代码:.map(x -> Optional.ofNullable(x.getMoney()).orElse(BigD

2025-12-30 13:14:35 885

原创 实践开发:老系统新增字段我是如何用枚举优雅兼容历史数据的

摘要:文章讨论了CRM系统升级中新增"发票方向"字段的设计过程。作者最初采用金额正负值配合前端颜色区分红冲发票的方案(仅需2行代码),但被要求必须增加字段明确区分。面对历史数据处理难题,最终采用枚举+兜底处理的方案:通过枚举集中管理业务规则,对老数据根据金额自动推导方向。虽然作者认为原方案在当下业务场景已足够,但升级方案确保了系统稳定性和可维护性,为后续开发减少了隐患。该方案平衡了业务需求与技术实现,展示了系统迭代中处理历史数据的有效方法。

2025-12-22 10:18:27 781

原创 ES 为啥还说 No mapping found?原因

摘要:Elasticsearch报错"Nomappingfoundfor[repaymentRatio]"是因为缺少该字段的映射定义。解决方法:1)先检查现有mapping确认字段缺失;2)使用PUT请求为wk_single_receivables索引添加repaymentRatio字段映射,类型设为scaled_float并指定scaling_factor为100。该方法适用于ES6.8版本,可在不删除重建索引的情况下补充新字段映射,避免影响现有数据。(150字)

2025-12-17 14:42:35 112

原创 Vue 报错:TypeError: list.reduce is not a function —— 原因分析与解决方案

摘要:本文分析了Vue父子组件通信中因数据结构不一致导致的reduce报错问题。当子组件通过$emit发送对象{list:[...]}时,父组件误将其当作数组直接调用reduce方法,引发TypeError。解决方案包括:1)子组件直接发送数组;2)父组件正确解构接收的对象数据。该问题常见于组件拆分场景,核心在于确保通信双方数据结构一致。本文通过典型案例说明了类型匹配在Vue开发中的重要性。(149字) 注:摘要严格控制在150字内,完整包含问题现象(报错)、原因分析(数据结构不一致)、解决方案(双向调整)

2025-11-26 09:31:30 374

原创 npm 安装 canvas 报错 node-gyp ERR! 的解决方法(Windows 系统)

摘要: 在Windows环境下使用npm install安装依赖(如canvas模块)时,常因缺少C++编译环境报错node-gyp失败。提供两种解决方案: 简易方案(Node.js v16及以下适用):以管理员身份运行npm install --global windows-build-tools自动安装Python和C++工具。 推荐方案(通用稳定):手动安装Visual Studio Build Tools,勾选“C++桌面开发”组件(含MSVC编译器和Windows SDK),重启后重试安装。后者兼

2025-10-24 15:57:00 1036

原创 NVM(Node Version Manager)详解:多版本 Node 管理神器

本文介绍了Node版本管理工具NVM的核心功能和实用场景。NVM能够实现多Node版本共存、快速切换版本、项目环境隔离等功能,解决开发中常见的版本冲突问题。文章详细说明了Windows系统下NVM的安装步骤和常见问题处理,并提供了常用命令,如安装/切换/查看版本等。通过NVM,开发者可以灵活管理不同项目所需的Node版本,提高开发效率,避免因版本问题导致的构建失败。

2025-10-17 18:38:29 759

原创 使用 EasyExcel 封装通用 Excel 导出工具类

本文分享了如何封装EasyExcel通用导出工具类ExcelExportUtil。针对企业应用中Excel导出的重复代码问题,工具类通过泛型支持任意实体类导出,提供单个Sheet和多Sheet导出功能。核心设计包括:1)封装响应头和流操作;2)支持泛型类导出;3)多Sheet数据封装。使用示例显示控制器代码量减少80%,只需关注业务数据处理。该方案提高了代码复用性和可维护性,特别适合需要导出复杂报表的业务场景。

2025-10-15 15:09:27 383

原创 Vue + Spring Boot 实现 Excel 导出实例

本文介绍了前后端实现Excel导出的完整方案。前端使用Vue+ElementUI,通过Axios请求后端接口时设置responseType:'blob'获取二进制流,利用URL.createObjectURL创建下载链接。后端采用SpringBoot+EasyExcel,通过HttpServletResponse直接输出Excel文件流。文章重点解决了导出时出现[objectObject]的问题,强调必须使用blob类型处理文件流。同时展示了表格数据编辑功能,允许用户修改销售单价并自动计算相关字段。该方案实

2025-10-11 13:36:52 444

原创 【前端实战】Vue watch 里做计算时浮点精度问题及解决方案

Vue watch 做计算时一定要注意浮点精度问题。toFixedNumber()是最简单的前端处理方式。后端也建议做二次截断,保证数据库安全。遇到“最多支持15位数字”的错误,不要先怪正则或校验,先检查浮点数小数位。

2025-09-18 13:47:59 320

原创 【踩坑记录】SpringBoot 项目报 Communications link failure 的解决方法

文章摘要:在SpringBoot项目启动时遇到"Communicationslinkfailure"数据库连接错误,表现为JDBC驱动未收到MySQL响应。常见原因包括MySQL服务未启动、端口错误、账号密码错误等。经排查发现是MySQL服务意外停止,通过services.msc重新启动服务后问题解决。建议遇到此类问题时优先检查数据库服务是否运行,可快速定位大部分类似故障。

2025-08-28 10:34:25 716

原创 CTE(公共表表达式)详解:用实际案例带你掌握SQL高级查询技巧

本文通过SQLServer案例详解CTE(公共表表达式)的概念与应用。CTE是临时命名结果集,用于简化复杂查询,具有提高可读性、支持递归查询、替代视图等优势。重点解析了利用ROW_NUMBER()去重排序、CTE预处理数据等关键技术,并通过报销单关联借款记录的业务场景,展示CTE如何实现高效数据查询。文章还介绍了递归CTE处理层次数据的方法,同时指出CTE的生命周期和性能注意事项。掌握CTE能显著提升SQL查询的编写效率与质量。

2025-08-27 15:27:02 761

原创 解决Vue类型错误:Expected Array, got String,导致需要显示字段显示成了[object Object]

摘要:CRM系统二次开发时,前端保存数据报错"[Vue warn]: Invalid prop: type check failed for prop 'value'. Expected Array, got String",且订单号显示为[object Object]。问题根源在于后端错误地将普通文本字段orderNumber按关联字段处理,返回了List<JSONObject>而非预期的String。解决方法是移除后端多余的集合封装逻辑,保持字段类型与前端预期一致。该案例

2025-08-27 09:54:47 497

原创 前端业务必备工具类:MoneyUtils 金额工具类(精确运算 + 千分位格式化)

摘要:前端开发中,JavaScript的浮点数精度问题会影响金额计算的准确性,同时金额展示缺乏千分位分隔符会影响可读性。为此,MoneyUtils工具类提供了精确的加减乘除运算和格式化展示功能。核心原理是将浮点数放大为整数计算后再缩小,避免精度丢失,并通过正则表达式实现千分位格式化。该工具类适用于财务系统、电商平台等需要精确金额计算的场景,解决了0.1+0.2≠0.3等典型问题,支持保留小数位和金额美化展示。使用时需注意除法运算可能产生循环小数,建议结合toFixed方法控制显示位数。

2025-08-25 18:35:03 1136

原创 【JavaScript】封装日期工具类:精准处理日期加减与格式化

本文介绍了一个实用的前端DateUtils工具类,封装了常见的日期操作功能。该工具类包含日期解析、格式化及加减天数等方法,特别解决了"是否包含当天"的业务难题。通过addDays方法的includeStart参数,可灵活处理如"发货日+90天"是否包含当天的情况。工具类还避免了时区问题导致的日期偏差,支持本地时间解析和统一格式化输出。适用于Vue/React/Node等项目,只需简单引入即可使用,提高了日期处理的准确性和开发效率。建议将此类工具统一维护在项目utils

2025-08-25 14:19:05 780

原创 SpringBoot + MyBatis-Plus 使用 listObjs 报 ClassCastException 的原因与解决办法

本文分享了使用MyBatis-Plus时遇到的典型问题:通过listObjs方法查询多列数据时,由于该方法默认只返回第一列导致类型转换异常。作者分析了报错原因,指出listObjs在多列查询时返回的是Object[]而非实体对象。提供了两种解决方案:1)改用list方法获取实体对象后转换;2)正确处理listObjs返回的Object[]数组。最后建议根据业务场景选择合适方法:多列查询用list,单列查询用listObjs。该案例对处理类似数据库查询问题具有参考价值。

2025-08-20 15:30:16 524

原创 【前端实战】如何封装日期格式化工具,满足后端 LocalDate 和 LocalDateTime 格式需求

【摘要】本文探讨了前后端分离开发中日期时间数据传递的常见问题及解决方案。针对后端LocalDate和LocalDateTime类型对日期格式的严格要求,提出了封装前端日期格式化工具的方法。该工具函数可灵活处理日期转换,支持是否包含时间部分的参数控制,确保格式符合后端要求。通过统一日期处理逻辑,避免了重复代码和接口调用失败,提高了开发效率和代码可维护性。文中给出了具体实现代码和应用示例,强调了前后端格式统一的重要性。

2025-08-12 14:21:23 494

原创 Vue 项目中主从表异步保存实战:缓存导致接口不执行问题排查与解决

本文探讨了企业级管理系统中主从表数据联合保存的实现方案。以"资金利息付款"功能为例,涉及主表保存后并行调用两个从表接口的流程。针对开发中遇到的付款退回从表接口未调用问题,分析发现是浏览器缓存导致数据未刷新。解决方案包括:确保数据实时性、添加调试日志、使用Promise.all并行执行接口、清除缓存等。文章还提出了代码优化建议,如空数据判断和错误细化处理。总结指出,主从表保存应遵循先主后从原则,并行调用接口,并强调调试工具和缓存问题排查的重要性。

2025-08-11 10:09:44 839

原创 【实战】通用利息计算数据转换函数封装及应用场景详解

本文介绍了资金管理系统中针对付款和付款退回数据的统一处理方案。通过设计processInterestList函数,实现了不同格式数据的标准化转换,包括日期格式化(统一为YYYY-MM-DD)、金额字段处理、补贴规则设置等。该函数通过参数配置区分付款(检查结算方式确定补贴点)和付款退回(固定1.0补贴点),并初始化利息计算所需字段。应用时只需传入对应字段名和类型标识即可完成数据转换,有效提升了代码复用性,简化了后续利息计算流程。该方案适用于应付账款等需要统一处理资金往来的业务场景。

2025-08-09 10:45:53 482

原创 前端百分比展示导致后端 BigDecimal 转换异常的排查与解决

摘要:在开发订单预算系统时,前端将利润率差额以"28.4212%"格式的字符串传给后端,导致BigDecimal转换失败。正确做法应保持数据存储为纯数字(28.4212),仅在展示时添加%符号。建议:1)严格区分数据存储与展示格式;2)使用计算方法处理格式化展示;3)确保前后端字段类型一致。该问题警示开发中必须分离数据处理与展示逻辑,避免因格式混淆导致的类型转换错误。

2025-08-07 15:54:57 360

原创 Elasticsearch 字段值过长导致索引报错问题排查与解决经验总结

Elasticsearch字段过长导致索引失败的解决方案:当text类型字段内容超过32,766字节限制时,会报MapperParsingException错误。本文通过设置字段"index":false成功解决该问题,适用于仅需存储展示而不需搜索的大文本字段(如备注、富文本内容)。建议在创建索引时合理规划字段类型,对不需要搜索的大字段及时禁用索引。

2025-07-23 15:06:18 1255

原创 通用业务编号生成工具类(MyBatis-Plus + Spring Boot)详解 + 3种调用方式

本文介绍了一个基于MyBatis-Plus的业务编号生成工具类,支持"前缀-日期-序列号"格式(如FK-240704-0001)。该工具类具有自动递增、去重重试机制(最多5次),通过Lambda表达式获取字段,支持多种调用场景(Service内部/外部/动态获取)。核心功能包括:日期自动格式化、序列号递增、数据库查重验证。已在实际业务中验证可靠性,适用于付款、包装等多业务场景。需配合MyBatis-Plus和commons-beanutils依赖使用。

2025-07-04 13:37:06 1377

原创 SpringBoot 报错 MethodArgumentTypeMismatchException:undefined

摘要:文章记录了一个SpringBoot+Vue开发中遇到的类型转换异常问题。后端报错显示前端传递的"undefined"字符串无法转换为Integer类型。经排查发现是前端API调用时参数名(id)与封装接口参数名(interestPaymentId)不一致,导致URL拼接错误。解决方案包括统一前端参数命名或修改API封装兼容不同参数名。该案例警示开发中需特别注意路径参数传值准确性,避免因字段不一致导致严重报错。

2025-07-04 09:16:39 850

原创 Seata 报错解决:can not get cluster name in registry config ‘service.vgroupMapping.pm_tx_group‘,配置详解、示例与实

是事务组和 Seata TC 集群的桥梁;;遇到报错务必检查:配置键名是否完全匹配事务组名称。

2025-06-13 18:18:31 783

原创 lasticsearch 报错 Document contains at least one immense term 的解决方案

本次问题是由于字段内容超出 Elasticsearch 的最大 term 限制 32766 字节导致。解决方案二通过设置字段,禁止其参与倒排索引,既解决了异常问题,又保留了数据的存储功能。在实际开发中,我们要对每个字段的数据结构与使用场景做好规划,合理设计索引策略,避免不必要的性能浪费与错误。

2025-05-20 13:40:53 941

原创 MyBatis 报错:Column count doesn‘t match value count at row 1 详解与解决

这个错误常见于 SQL 拼接语句中,尤其是部分;建议使用格式化工具或 IDEA 的 XML 格式化功能辅助检查;不要忽略参数之间的逗号,哪怕是一个字段漏了逗号也会导致 SQL 整体错乱;尽量提前用单条 SQL 在 Navicat / MySQL 客户端测试,确认无误再用于批量插入。

2025-05-09 09:20:14 1348

原创 未来五年值得关注的编程语言以及趋势

未来五年,兼具系统级性能与开发效率的语言(如Rust)将重塑技术格局,而TypeScript的工程化价值会持续放大。- 趋势支撑:全球AI项目采用率超75%(GitHub 2023数据),TensorFlow/PyTorch框架统治地位稳固。- 学习建议:掌握FastAPI构建微服务,结合Jupyter进行数据可视化,关注Mojo语言(Python超集)的演进。- 新兴场景:AI模型部署(ONNX Runtime)、自动化测试(Selenium)、量化金融(Pandas)

2025-04-27 11:48:44 1825

原创 解决 Elasticsearch 启动错误:failed to obtain node locks

通过修改中的配置项,可以允许多个节点使用相同的数据目录,从而解决启动时的错误。然而,为了确保 Elasticsearch 的稳定性和性能,建议为每个节点配置不同的数据目录。

2025-04-27 09:25:26 2436

原创 MySQL 报错解析:SQLSyntaxErrorException caused by extra comma before FROM

写 SQL 时建议不要让SELECT语句中最后一行字段后面加逗号,可以使用编辑器插件自动去除末尾逗号,或者在 SQL 模板中进行约束。

2025-04-24 11:40:55 1194

原创 Linux 常用命令大全(超实用!建议收藏)

在 Linux 的世界中,命令行是王道。无论你是开发、测试、运维,还是数据分析师,掌握一手常用命令,效率立刻翻倍!本篇文章收集并整理了日常最常用、最实用的 Linux 命令,涵盖文件操作、进程管理、网络工具、系统信息等多个方面,建议。一、文件与目录操作命令含义示例ls列出目录内容ls -alcd进入目录cd /etcpwd显示当前路径pwdmkdir创建目录mkdir testtouch创建空文件rm删除文件/目录cp复制文件/目录mv移动/重命名tree以树状图显示结构(需安装)

2025-04-24 11:39:20 426

原创 AI 在 IT 行业中的应用:职业终结者还是协同伙伴?

AI 的出现无疑将对 IT 行业带来深远的影响,它正在改变 IT 从业者的工作方式,提升工作效率,同时也给行业带来前所未有的挑战。然而,尽管 AI 强大,但人类的创新思维、判断力和情感智力是 AI 无法替代的。因此,IT 从业者并不会被 AI 取代,而是会与 AI 一同协作,推动行业的创新与发展。未来,AI 与 IT 从业者的协同发展将成为 IT 行业的重要趋势,我们有理由相信,AI 将为 IT 行业带来更加光明的未来。

2025-04-21 09:36:00 898

原创 解决 Spring Boot 中的 Ambiguous mapping 错误:方法映射冲突

错误的发生通常是因为多个方法映射到了相同的 URL 路径。在开发中,我们应该避免重复映射,确保每个 URL 路径映射到唯一的控制器方法。通过合理地调整方法的 URL 路径,可以轻松解决该问题。希望本文能帮助你理解并解决错误。如果你在开发过程中遇到类似问题,可以参考本文的解决方案进行排查和修复。

2025-04-21 09:09:17 834

原创 如何新建一个空分支(不继承 master 或任何提交)

空分支(Orphan Branch)是一种特殊的 Git 分支,它没有父提交历史(即没有任何提交记录的继承),就像一个新的仓库一样。适用于:新模块的独立开发搭建 GitHub Pages 静态站点(通常叫gh-pages分支)临时存储脚本或测试代码步骤命令创建空分支清空工作区添加代码git add .提交代码推送远程git push origin init-erp-module(init-erp-module 这个是自己分支名根据自己来的)

2025-04-17 15:24:19 1757

原创 SpringBoot + MyBatis 报错 DataIntegrityViolationException:Data truncation: Out of range value for colu

这个问题本质上是数据类型约束导致的错误,是 Java 和 MySQL 联调中的常见问题之一。建议在开发初期就统一定义好字段精度规范,并在关键字段上增加校验逻辑,避免因数据异常影响业务流程。

2025-04-17 13:10:54 960

原创 使用 Hutool BeanUtil.copyProperties 时抛出 java.lang.NumberFormatException 的排查与解决

这个问题非常典型,主要是Java 类型转换 + 空字符串BigDecimal无法接受"",会抛出;使用像Hutool这样的工具进行属性自动拷贝时,这类问题更容易出现;尤其是后端开发写实体类时,一不小心字段类型写错了也不容易第一时间发现。🧠 所以建议:写实体类时注意保持与数据库字段一致;如果字段来自用户输入,推荐先定义为String,再做类型转换;Bean 拷贝工具要么加容错处理,要么前置清洗数据。

2025-04-15 10:55:39 528

原创 解决 NoSuchMethodError 问题:升级 Log4j 版本,exception is java.lang.NoSuchMethodError: org.apache.logging.log

通过升级 Log4j 到 2.x 版本,并正确配置相关依赖,我们成功解决了 Spring Cloud 项目中的问题。这个问题通常出现在使用了较旧版本的 Log4j 时,Log4j 2.x 提供了更好的性能和更多功能,推荐在新项目中使用。如果你也遇到类似问题,可以参考上面的解决方案,升级 Log4j 版本,并注意检查项目中是否有旧版的 Log4j 依赖。希望这个总结能对你有所帮助!

2025-04-07 15:33:53 2184

原创 Spring Boot @RequestParam 解析参数时的常见问题及解决方案

原因分析:最后查看了一下接口方法才发现原因,由于使用的是@RequestParam由于。(表单方式)由于我并不打算修改后端所以使用这方式还是非常合适的。,所以如果前端发送 JSON 数据:就会出现如上图一样的错误。解决方案有很多种,我使用的是使用。

2025-04-01 09:58:28 1013

原创 Spring Cloud 项目中 queryFormPositionFieldVo 方法抛出 NullPointerException 的原因分析与解决方案

解决方案:我遇到的问题则是数据库查询的结果为空,我把数据库名写错了结果查询到了别的数据库但是查询不到响应的数据,我只需要把数据库的名字改回来就好了。:由于 Spring AOP 代理,某些方法调用可能存在代理增强问题,导致空指针异常。空指针异常产生的原因大概就这几个,我们只需要按照要求进行排查即可。遇到的问题:告诉我空指针异常但是排查半天没有找到原因。可能查询数据库,但未返回数据,导致后续操作。方法可能访问了一个未初始化的对象或字段。我也重点排查了我的方法发现没有问题。:Spring 依赖注入失败,导致。

2025-03-29 09:45:56 1120

原创 「MethodArgumentTypeMismatchException:前端传递 ‘undefined‘ 导致 Integer 类型转换失败」

Failed to convert value of type 'java.lang.String' to required type 'java.lang.Integer'; nested exception is java.lang.NumberFormatException: For input string: "undefined"

2025-03-27 13:26:06 727

原创 Git 提示 “LF will be replaced by CRLF“ 的原因及解决方案

如果这些警告对你没有影响,可以忽略它们,Git 只是提示换行符的变化,不会影响代码逻辑。(Linux 风格),但在 Windows 系统上,Git 可能会自动转换为。如果你不想 Git 自动转换换行符。Git 发现你的代码文件(比如。如果你希望 Git 直接使用。如果你希望所有代码文件都使用。(Windows 风格)。,可以在项目根目录创建。)在提交时的换行符是。

2025-03-26 10:45:14 1063

原创 Elasticsearch 解析 updateTime 字段时格式错误

Elasticsearch 解析 updateTime 字段时格式错误

2025-03-13 16:31:33 1122

使用 EasyExcel 封装通用 Excel 导出工具类

单个 Sheet 导出:快速导出单个 Excel。 多 Sheet 导出:在一个 Excel 文件中包含多个 Sheet 标签页。 泛型支持:通过 <T> 泛型,可以导出任意带 @ExcelProperty 注解的实体类。

2025-10-15

前端业务必备工具类:MoneyUtils 金额工具类(精确运算 + 千分位格式化)

在金融、电商等涉及金额计算的领域,JavaScript浮点数精度丢失和数字格式化是高频需求

2025-08-25

【JavaScript】封装日期工具类:精准处理日期加减与格式化

在日常开发中,处理日期计算和格式化是高频需求。原生 Date 对象虽然强大,但直接使用较为繁琐。本文将分享一个实用的 DateUtils 工具类,它封装了日期解析、格式化和加减等常见操作,并重点解析其核心方法 addDays 如何解决“是否包含当天”这一常见业务难题。

2025-08-25

实战通用利息计算数据转换函数封装及应用场景详解

该函数实现了付款与付款退回数据的统一格式化和初始化。 通过传入不同参数支持不同接口字段,具有较强的灵活性和扩展性。 减少重复代码,方便后续利息计算、补贴计算等业务逻辑开发。 适合在资金管理、应付账款等业务场景中使用。

2025-08-12

前端实战如何封装日期格式化工具,满足后端 LocalDate 和 LocalDateTime 格式需求

主要是为了满足后端的时间格式,这样就不用修改实体类和数据库了

2025-08-12

实战通用利息计算数据转换函数封装及应用场景详解

该函数实现了付款与付款退回数据的统一格式化和初始化。 通过传入不同参数支持不同接口字段,具有较强的灵活性和扩展性。 减少重复代码,方便后续利息计算、补贴计算等业务逻辑开发。 适合在资金管理、应付账款等业务场景中使用。

2025-08-09

通用业务编号生成工具类(MyBatis-Plus + Spring Boot)详解 + 3种调用方式

该工具类具有自动递增、去重重试机制(最多5次),通过Lambda表达式获取字段,支持多种调用场景(Service内部/外部/动态获取)。核心功能包括:日期自动格式化、序列号递增、数据库查重验证。已在实际业务中验证可靠性,适用于付款、包装等多业务场景。需配合MyBatis-Plus和commons-beanutils依赖使用。

2025-07-04

Linux常用命令大全.md

Linux常用命令大全

2025-04-24

【Java基础-面试复习大致流程图】

内容概要:本文档涵盖了Java编程的核心概念和技术要点,详细介绍了面向对象编程的三大要素(封装、继承、多态),并深入探讨了类与对象的关系、抽象类与接口的区别、构造方法、方法重载与重写等基础知识。文档还涉及Java中的传值与传递地址值的区别、线程与进程的概念及线程的创建方式和状态转换,以及线程安全措施。此外,文档讲解了Java集合框架中的单例集合、双列集合及其特性,前端HTML标签和事件处理,数据库索引原理与类型、事务特性、InnoDB与MyISAM存储引擎对比、存储过程的优缺点。最后,文档阐述了JSP+Servlet、SSM框架(Spring、SpringMVC、MyBatis)的关键技术和最佳实践,如Spring的IOC/DI、AOP、Bean作用域,MyBatis的动态SQL、结果映射,以及SpringMVC的请求处理流程和常用注解。 适合人群:具有Java编程基础的学习者和开发人员,特别是希望深入理解Java核心技术及框架应用的开发者。 使用场景及目标:①帮助读者掌握Java面向对象编程的核心概念,如封装、继承、多态等;②理解线程管理和数据库操作的最佳实践;③熟悉前端开发的基础知识和事件处理;④掌握SSM框架的使用技巧,包括Spring的IOC/DI、AOP、Bean管理,MyBatis的动态SQL和结果映射,以及SpringMVC的请求处理机制。 阅读建议:建议读者从基础概念入手,逐步深入到高级主题,结合实际项目进行练习,特别关注代码示例和实践应用,以加深理解和掌握。

2025-04-21

这篇文章是一份关于Java基础面试题的汇总文档,涵盖了广泛的Java技术和相关领域的知识点

内容概要:本文档《java基础面试汇总.pdf》涵盖了广泛的Java基础知识,包括但不限于面向对象的特征(如抽象、继承、封装、多态)、作用域规则、基本数据类型与封装类的区别、位运算与逻辑运算的区别、JVM加载类的机制、垃圾回收机制、异常处理机制、集合框架(如List、Set、Map的区别与特性)、线程的概念及其同步方法、I/O流操作、数据库连接与SQL查询、Web开发技术(如Servlet、JSP、Struts)、EJB与Spring框架的基本概念与使用、数据结构与算法(如排序算法、二叉树遍历)、C++语言特性、以及WebLogic服务器配置等。文档以问答形式呈现,针对每个知识点提供简明扼要的答案,适合用于Java开发者的面试准备和技术复习。 适合人群:具备一定编程基础,尤其是Java语言基础的学习者和开发者,包括但不限于初级到中级水平的Java程序员、Web应用开发者、企业级应用开发者等。 使用场景及目标:①作为Java开发者面试前的复习资料,帮助候选人快速回顾和掌握核心知识点;②作为日常工作中遇到具体问题时的参考手册,例如理解类加载机制、异常处理、线程同步等;③作为新手学习Java编程时的入门指南,辅助理解Java的基础概念和高级特性;④作为企业内部培训或高校教学中的辅助教材,用于指导学生或员工掌握Java技术栈的关键要素。 阅读建议:此文档内容丰富且详尽,建议读者根据自身的知识水平和技术需求有针对性地阅读。对于初学者,可以从基础概念开始逐步深入;对于有一定经验的开发者,可以重点关注自己不太熟悉或容易混淆的知识点。此外,由于文档涉及面广,建议配合实际编码练习来加深理解,尤其是对于多线程编程、异常处理、数据库操作等实践性较强的部分。

2025-04-21

云智慧人事办公系统(OA)

这是一个完整的云智慧人事办公系统源码,涵盖了民族管理、系统设置、部门管理、员工管理、培训管理、请假管理、工资管理等多个核心模块。系统后端采用Spring Boot框架,集成MyBatis-Plus进行数据库操作,Shiro用于权限控制,Swagger提供API文档,MySQL 8作为数据库存储,Flowable用于工作流管理。前端采用Vue框架,Element UI作为UI组件库,实现了良好的用户界面和交互体验。

2024-11-13

基于SSM学生实习管理系统前台小程序与后台管理系统开发实践

资源概述: 本资源提供了一套完整的学生实习管理系统解决方案,涵盖了前台小程序页面与后台管理系统两大模块。前台小程序页面设计简洁直观,用户可根据不同身份(学生或企业)进行登录。学生用户能够方便地浏览并投递感兴趣的实习岗位,而企业用户则能轻松发布实习信息,吸引优秀人才。后台管理系统功能全面,包括个人中心、首页、学生管理、教师管理、企业管理、招聘管理、评分管理以及实习管理等多个方面,为管理员提供了强大的数据管理和操作工具。 技术栈亮点: SSM框架:系统后台采用Spring、Spring MVC和MyBatis Plus(简称SSM)作为核心开发框架,确保了系统的稳定性、可扩展性和可维护性。Spring作为控制反转(IoC)和面向切面编程(AOP)的容器,为系统提供了强大的业务逻辑处理能力;Spring MVC则负责处理Web请求和响应,实现了前后端的分离;MyBatis Plus作为持久层框架,简化了数据库操作,提高了开发效率。 MySQL数据库:系统采用MySQL作为数据库存储解决方案,支持大数据量的存储和高效查询。 如有侵权请联系我删除,谢谢

2024-11-12

商城订单管理管理系统(EPR)

资源概述:本资源介绍了一款功能全面的进销存管理系统,该系统集成了系统管理、进货管理、销售管理、库存管理、报表分析和统计等多个核心模块。通过整合Spring Boot、MyBatis-Plus、Shiro安全框架、Swagger API文档生成工具、MySQL 8数据库以及Vue和Element UI前端技术栈,该系统不仅具备高效的数据处理能力,还提供了直观易用的用户界面。 技术栈亮点:Spring Boot:作为后端开发的核心框架,Spring Boot简化了Spring应用的初始搭建以及开发过程。 MyBatis-Plus:作为持久层框架,进一步简化了数据库操作。 Shiro安全框架:Shiro是一个强大且易用的Java安全框架,提供了认证、授权、加密和会话管理等功能,为系统提供了全面的安全保障。 Swagger:Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务。 MySQL 8:作为系统数据库,MySQL 8提供了高性能、高可用性和可扩展性。 Vue + Element UI:前端采用Vue框架进行开发。

2024-11-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除