Java语言与设计思想
文章平均质量分 83
深究Java设计思想与经验集合
kevinmeanscool
Welcome to my GitHub : github.com/kevinmeanscool
展开
-
BigDecimal使用手册
BigDecimal使用手册原创 2022-06-29 10:27:29 · 155 阅读 · 1 评论 -
InterruptException通俗易懂地详解
有一个异常,大家都在描述现象,没有人深究其原因以及给出解决方案:nested exception is java.sql.SQLException: interrupt看起来像是SQL驱动抛出的异常,开门见山,这是线程的问题,这就究极的原因。起因如果我们希望线程等待1秒,通常我们会这样写: try { Thread.sleep(1000); } catch (InterruptedException e) {原创 2022-03-25 16:05:32 · 8236 阅读 · 0 评论 -
“布尔类型的变量名不要加is前缀”原理解析
最近阅读公司的规范,发现了这样的一条:【强制】POJO 类中的任何布尔类型的变量,都不要加 is 前缀,否则部分框架解析会引起序列化错误。如果读者研发的产品正在大量使用阿里系框架,这个问题就需要十分注意。我们假设一个场景,设计文档中设计了一个类,其中某个field命名为 isXx:这时,对于前端后分离的项目,前端认为你返回的json中将存在一个 Key为 “isXx”的value。后端亦是如此开发。Class SomeClass{boolean isXx;/...}如原创 2022-02-15 10:45:21 · 1548 阅读 · 0 评论 -
Java设计思想深究----Spring框架(图文)
一、大名鼎鼎的Spring框架1.1 为什么需要Spring?谈及为什么需要Spring,就要搞清楚,我们的需求是什么。在20 世纪60年代以前,大家实现一个系统已经知道了人机交互的模式,前台在交互时调用后台的程序集合去响应交互,而后台开发者,往往是一个接口写到底:这样的编写方式在软件工程方法学之前十分广泛,但久而久之,随着系统的功能膨胀,程序员们突然发现修改功能的代价越来越沉重,比如数据库准备操作,一旦有所改动,n个功能就需要改n处,并且出现漏改错改需求无法得到满足的情况。于是原创 2022-01-11 10:05:37 · 619 阅读 · 1 评论 -
Java设计思想深究----多线程与并发(图文)
一切的缘起是昂贵的CPU我们都十分清楚,计算机的核心是计算,而负责这个功能的组件就是CPU。CPU有一个特性,在一个时刻只能处理一个程序。开发人员编写代码,代码被编译为机器语言,CPU收到机器语言(指令集),开始处理程序,而这个正在被CPU处理的程序就是进程(正在进行的程序)。当CPU正在处理一个程序时,由于其特性,其他程序就只能等待。你可能会想,一个接一个处理,不是很合理的设计吗?这仅仅对于CPU执行指令而言,的确如此。可是,数据在存储媒介上的I/O速度与CPU的速度相比,....原创 2022-01-08 16:05:02 · 889 阅读 · 0 评论 -
Java设计思想深究----JVM垃圾回收(GC GarbageCollection)(图文)
回收的是什么垃圾 Garbage?我们都知道,编程是思想在内存上的映射,而内存的本质智能还是数据的快速读写。以C语言这种面向过程的语言为例,#include <stdio.h>int main(){ int a = 0; return 0;}当我们定义了一个变量a,并赋值,栈内存上有一个整形大小的区域便被申请,并被直接引用,当主函数return 0时,进程结束,该内存就会被操作系统自动free释放掉(物理上的擦除)。许多初级使用只使用堆栈变量。堆栈原创 2022-01-05 17:15:25 · 766 阅读 · 0 评论 -
减少使用 Date类 相关组合
什么是Date类?Date类表示时间上的特定时刻,具有毫秒精度。简言之,指发生某一事情的确定的日子、时期的抽象。在教学中,几乎所有的课程都指向使用Date类对象封装传递系统中的日期、时刻。如果有心阅读JDK中Date类的注释:“Prior to JDK 1.1, the class Date had two additional functions. It allowed the interpretation of dates as year, month, day, hour, m.原创 2022-01-04 16:10:59 · 2221 阅读 · 0 评论 -
Java设计思想深究----集合框架数学原理(图文)
你是否看过类似的这样的一张图:几乎所有的后台开发都会要求,熟悉/精通集合框架。不用数了,29个类,设计框架者Josh Bloch, Neal Gafter 肯定不是靠记忆去掌握集合框架。实际上,我们应该清楚编程语言是思想的记录,掌握集合框架,不妨去深究它背后的思想:数据结构。没错,又是看得到又仿佛看不到的数据结构。集合溯源:数据结构作者理解的数据结构从一个元素开始:什么是数据结构? | ProcessOn免费在线作图,在线流程图,在线思维导图 |简而言之:结构是.原创 2022-01-03 19:09:09 · 805 阅读 · 0 评论 -
Java设计思想深究----类与对象实例化(图文)
类的编译、对象的声明、类的实例化、引用指向实例、反射Reflect、克隆(拷贝)Clone、单例类、隐式创建对象原创 2021-12-22 23:12:22 · 472 阅读 · 0 评论 -
前端低级问题:According to TLD, tag [s:property] must be empty, but is not
在Struts标签结束时少了结束符,或者缺少'/>'等等如:<s:property value="art_name" > 缺少'/'的错误<s:property value="art_name" />正确结束其他的标签如果没闭合也会出现这个问题,千万不要马虎大意。...原创 2018-07-24 22:40:03 · 1305 阅读 · 0 评论 -
减少使用sun.misc.BASE64Encoder
在涉及到图片持久化的时候会遇到这个编码类---sun.misc.BASE64Encoder这个类在jdk1.6之前是可以使用的,但在1.6之后提出警告,并在jdk9.0之后完全删除。 “网上有办法说重新配置jre就行了,但事实上不是这么简单的,测试后发现,这是要看配置的jre的类型是execution environment(执行环境),还是alternate j...原创 2018-07-23 22:10:13 · 850 阅读 · 0 评论 -
用SSH写一个论坛:后台传递至jsp页面的html文本无法正常显示
问题分析: 我们在编写论坛的过程中,如果用户编辑的是一个富文本的话,那么存储到数据库就可以是存储当前富文本的html文本。这个可以通过富文本插件的方法导出html文本或使用jQuery或js到处html文本。如果我们成功的将html文本存储到数据库中,希望将这一段html文本利用struts标签回显到jsp页面中,我们就会发现html文本以字符串的现实到页面中了。例如:<...原创 2018-07-23 22:01:23 · 492 阅读 · 0 评论 -
写一个论坛之请求长度限制:java.lang.IllegalArgumentException:request is too large
java.lang.IllegalArgumentException:request is too large问题描述 在论坛的开发中,往往会涉及到一个问题,就是文章的存储,如果使用form提交文章内容到后台,就会导致一个问题,请求过长(request is too large)异常。问题分析 因为在论坛中,很长的数据流动除了评论,就是文章的操...原创 2018-07-22 20:28:30 · 1256 阅读 · 0 评论