<?xml version="1.0" encoding="utf-8"?>
<!--  RSS generated by phpcms.cn RSS Builder [2026-04-19 07:15:37]  --> 
<rss version="2.0" xmlns:im="http://purl.org/rss/1.0/item-images/" xmlns:dc="http://purl.org/dc/elements/1.1/" >
<channel>
<pubDate>Sun, 19 Apr 2026 07:15:37 +0800</pubDate>
<lastBuildDate>Sun, 19 Apr 2026 07:15:37 +0800</lastBuildDate>
<docs>https://www.zhoulujun.cn</docs>
<link>https://www.zhoulujun.cn</link>
<title>java</title>
<image>
<title>java</title>
<url><![CDATA[]]></url>
<link>https://www.zhoulujun.cn</link>
</image>
<webMaster>https://www.zhoulujun.cn</webMaster>
<generator>https://www.zhoulujun.cn</generator>
<ttl>60</ttl>
<dc:creator>https://www.zhoulujun.cn</dc:creator>
<dc:date>Sun, 19 Apr 2026 07:15:37 +0800</dc:date>
<item>
<title><![CDATA[GO并发吊打JAVA：并发编程CSP模型]]></title>
<link><![CDATA[/html/java/javaBase/9632.html]]></link>
<description><![CDATA[Go 是第一个将 CSP 的这些思想引入，并且发扬光大的语言——所以并发编程成为 Go 的一个独特的优势，而且很容易理解。]]></description>
<pubDate>2025-09-15 21:47:56</pubDate>
<guid><![CDATA[/html/java/javaBase/9632.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[一文搞懂JAVA与Go垃圾回收——阅读笔记]]></title>
<link><![CDATA[/html/java/KeyConcepts/8679.html]]></link>
<description><![CDATA[<img src=/uploadfile/images/2021/09/thumb_150_150_20210921113743556521580.jpg border='0' /><br />从原理出发，介绍Java和Golang垃圾回收算法，并从原理上对他们做一个对比。文章很长，个人对文字进行了排版与着色。方便复习]]></description>
<pubDate>2021-09-21 11:30:56</pubDate>
<guid><![CDATA[/html/java/KeyConcepts/8679.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[Spring框架IOC和AOP的实现原理]]></title>
<link><![CDATA[/html/java/spring/2020_0628_8486.html]]></link>
<description><![CDATA[<img src=/uploadfile/images/2020/07/thumb_150_150_20200702004216543298761.png border='0' /><br />使用Spring框架的过程中，其实就是为了使用IOC(依赖注入)，和AOP(面向切面编程)，这两个是Spring的灵魂。IOC就是典型的工厂模式，通过sessionfactory去注入实例。AOP就是典型的代理模式的体现。]]></description>
<pubDate>2020-06-28 00:23:28</pubDate>
<guid><![CDATA[/html/java/spring/2020_0628_8486.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[java反射机制原理剖析]]></title>
<link><![CDATA[/html/java/KeyConcepts/8485.html]]></link>
<description><![CDATA[没有反射也就没有框架，现有的框架都是以反射为基础。 Spring 中，最重要的概念就是 IOC 控制反转。而 IOC 的实现原理就是反射。通过反射来构造 Java Bean 的对象，调用其方法。反射就是在运行时才知道要操作的类是什么，并且]]></description>
<pubDate>2020-06-27 18:26:28</pubDate>
<guid><![CDATA[/html/java/KeyConcepts/8485.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[Java注解(批注)的基本原理]]></title>
<link><![CDATA[/html/java/KeyConcepts/8484.html]]></link>
<description><![CDATA[<img src=/uploadfile/images/2020/06/thumb_150_150_20200627141021387492769.png border='0' /><br />为什么要使用注解？早期版本的Spring是通过XML文件的形式对整个框架进行配置的，一个缩减版的配置文件如下&lt;?xmlversion=&quot;1 0&quot;encoding=&quot;UTF   ]]></description>
<pubDate>2020-06-27 13:54:47</pubDate>
<guid><![CDATA[/html/java/KeyConcepts/8484.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[java并发编程(2)：Java多线程-java.util.concurrent高级工具]]></title>
<link><![CDATA[/html/java/KeyConcepts/8476.html]]></link>
<description><![CDATA[<img src=https://www.zhoulujun.cn/uploadfile/images/2020/06/20200623113420169499844.jpg border='0' /><br />机伴随着多核CPU的出现，也就意味着不同的线程能被不同的 CPU 核得到真正意义的并行执行。Java 是最先支持多线程的开发的语言之一，Java1 5提供了一个非常高效实用的多线程包:java util concurrent]]></description>
<pubDate>2020-06-23 10:25:19</pubDate>
<guid><![CDATA[/html/java/KeyConcepts/8476.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[java并发编程(1)：Java多线程-基本线程类-基础知识复习笔记]]></title>
<link><![CDATA[/html/java/KeyConcepts/8471.html]]></link>
<description><![CDATA[<img src=/uploadfile/images/2020/06/thumb_150_150_20200623120501258776501.png border='0' /><br />多线程只有一个目的，那就是更好的利用cpu的资源，基本线程类指的是Thread类，Runnable接口，Callable接口，传统java多线程编程 需要注意的 线程安全 线程同步 线程通信  synchronized volatile ……一锅乱炖]]></description>
<pubDate>2020-06-18 23:37:20</pubDate>
<guid><![CDATA[/html/java/KeyConcepts/8471.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[ HTTP header parsing errors—  defined in RFC 7230 and RFC 3986]]></title>
<link><![CDATA[/html/java/tomcat/2018_0508_8109.html]]></link>
<description><![CDATA[<img src=https://www.zhoulujun.cn/uploadfile/images/2018/0508/20180508102411205819309.png border='0' /><br />further occurrences of HTTP header parsing errors will be logged at DEBUG level java lang IllegalArgumentException: Invalid character found in the request target  The valid characters are defined in RFC 7230 and RFC 3986]]></description>
<pubDate>2018-05-08 10:19:47</pubDate>
<guid><![CDATA[/html/java/tomcat/2018_0508_8109.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[旧调重弹Hibernate与Ibatis区别——深入架构设计]]></title>
<link><![CDATA[/html/java/jdbc/2018_0328_8094.html]]></link>
<description><![CDATA[<img src=/uploadfile/images/2018/0328/thumb_150_150_20180328195811274119434.jpg border='0' /><br />对于一个粗学者而言一言概况就是：ibatis非常简单易学，hibernate相对较复杂，门槛较高。但是，hibernate对数据库结构提供了较为完整的封装   ]]></description>
<pubDate>2018-03-28 15:34:26</pubDate>
<guid><![CDATA[/html/java/jdbc/2018_0328_8094.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[tomcat配置compilerSourceVM，解决版本冲突问题]]></title>
<link><![CDATA[/html/java/tomcat/2018_0328_8093.html]]></link>
<description><![CDATA[<img src=/uploadfile/images/2018/0328/thumb_150_150_20180328153253792435871.png border='0' /><br />java项目jsp页面使用switch，case 字符串，在本地可以跑，部署到服务器上，却不可以跑。java是1 8 tomcat是1 7。理论上，我的代码只要jdk1   ]]></description>
<pubDate>2018-03-28 15:28:19</pubDate>
<guid><![CDATA[/html/java/tomcat/2018_0328_8093.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[java内存管理细探—生命周期]]></title>
<link><![CDATA[/html/java/KeyConcepts/8087.html]]></link>
<description><![CDATA[<img src=/uploadfile/images/2018/0319/20180319195930241947901.jpg border='0' /><br />今天在复习视频的时候看到了内部类中，关于定义在局部的内部类要访问局部变量时，需要该变量被final所修饰，然后老师演示了一个现象。创建   ]]></description>
<pubDate>2018-03-19 19:31:50</pubDate>
<guid><![CDATA[/html/java/KeyConcepts/8087.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[java项目动态配置常量和peiconfig.properties配置使用详解]]></title>
<link><![CDATA[/html/java/spring/2017_0915_8051.html]]></link>
<description><![CDATA[<img src=/uploadfile/images/2017/0915/thumb_150_150_20170915173834849032417.png border='0' /><br />Java工程中配置信息一般都写在 properties文件中，下面这篇文章是对java基础配置的一点学习心得整理后汇总分享，以便脑袋短路时查阅。prope   ]]></description>
<pubDate>2017-09-15 16:53:37</pubDate>
<guid><![CDATA[/html/java/spring/2017_0915_8051.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[深入理解Java闭包概念]]></title>
<link><![CDATA[/html/java/KeyConcepts/7967.html]]></link>
<description><![CDATA[闭包能够将一个方法作为一个变量去存储，这个方法有能力去访问所在类的自由变量。如何用变量去存储方法？java中能够保存方法的变量指的就是普通的对象？如何让这个普通对象能够访问所在类的自由变量？]]></description>
<pubDate>2017-03-27 17:17:59</pubDate>
<guid><![CDATA[/html/java/KeyConcepts/7967.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[setRequestProperty作用，参数设置]]></title>
<link><![CDATA[/html/java/javaBase/7818.html]]></link>
<description><![CDATA[<img src=/uploadfile/2016/0505/thumb_150_150_20160505103917237.png border='0' /><br />HttpsURLConnection很多人了，post，get发出去了……
但是不明白 setRequestProperty ,这不是最基本的东西吗：但是，真的去百度下：尼玛……还真的，么有专门的文章来讲这个的！！]]></description>
<pubDate>2016-05-05 10:36:48</pubDate>
<guid><![CDATA[/html/java/javaBase/7818.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[setdoinput和setdooutput是什么鬼？他们的默认值分别是什么？]]></title>
<link><![CDATA[/html/java/javaBase/7817.html]]></link>
<description><![CDATA[<img src=/uploadfile/2016/0504/thumb_150_150_20160504203029693.png border='0' /><br />android 6 0默认奇妙地移除了HttpClient,所以AndroidHttpClient,也跟着移除了+&mdash;&mdash;AndroidHttpClient 是HttpClient的封装^官方建议&hellip;&hellip;使   ]]></description>
<pubDate>2016-05-04 20:29:07</pubDate>
<guid><![CDATA[/html/java/javaBase/7817.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[java调用js代码和js调用java类和方法示例]]></title>
<link><![CDATA[/html/java/javaBase/7772.html]]></link>
<description><![CDATA[NodeJS带来的原生异步并发与事件驱动编程模型得到认可，但是因为其单线程缘故，不能简单方便地从事密集计算，而java优势是多线程并发，Java   ]]></description>
<pubDate>2016-04-18 16:18:21</pubDate>
<guid><![CDATA[/html/java/javaBase/7772.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[ JAVA Swing自定义JScorllPanel]]></title>
<link><![CDATA[/html/java/Swing/2016_0415_7769.html]]></link>
<description><![CDATA[JAVA Swing中JScrollPanle自定义带标尺的JScrollPanelSwing中JScrollPanel的结构与组成如下图：分为四个角与四个边，中间蓝色矩形为View窗   ]]></description>
<pubDate>2016-04-15 18:47:58</pubDate>
<guid><![CDATA[/html/java/Swing/2016_0415_7769.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[ Java Swing 2D系统属性参数详解]]></title>
<link><![CDATA[/html/java/Swing/2016_0415_7768.html]]></link>
<description><![CDATA[Java Swing 2D系统属性参数详解]]></description>
<pubDate>2016-04-15 18:46:46</pubDate>
<guid><![CDATA[/html/java/Swing/2016_0415_7768.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[Java Swing控件属性归纳_及示例]]></title>
<link><![CDATA[/html/java/Swing/2016_0415_7767.html]]></link>
<description><![CDATA[了解各种用户界面组件：JButton、JLabel、JTextField、JTextArea、JComboBox、  Jlist、JCheckBox、JRadioButton、JMenuBar、JMenu、JMen   ]]></description>
<pubDate>2016-04-15 18:19:02</pubDate>
<guid><![CDATA[/html/java/Swing/2016_0415_7767.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
<item>
<title><![CDATA[java取两位小数的小坑！整除保留两位小数]]></title>
<link><![CDATA[/html/java/javaBase/7762.html]]></link>
<description><![CDATA[<img src=/uploadfile/2016/0414/thumb_150_150_20160414194501683.png border='0' /><br />java 10 1能出来正确结果 。1 10 怎么就为0呢?  11 0 5*100 等于多少？]]></description>
<pubDate>2016-04-14 19:44:27</pubDate>
<guid><![CDATA[/html/java/javaBase/7762.html]]></guid>
<author>https://www.zhoulujun.cn</author>
</item>
</channel>
</rss>
