<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Jsono8的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Jsono8</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Jsono8]]></copyright><item><title><![CDATA[速度提升 60 倍的 SQL 优化方案，太顶了]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/124754927</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/124754927</guid><author>Jsono8</author><pubDate>Fri, 13 May 2022 16:35:25 +0800</pubDate><description><![CDATA[有一张财务流水表，未分库分表，目前的数据量为9555695，分页查询使用到了limit，优化之前的查询耗时16 s 938 ms (execution: 16 s 831 ms, fetching: 107 ms)，按照下文的方式调整SQL后，耗时347 ms (execution: 163 ms, fetching: 184 ms)；

操作：

查询条件放到子查询中，子查询只查主键ID，然后使用子查询中确定的主键关联查询其他的属性字段；

原理：

1、减少回表操作；

2、可参考《阿里巴巴Java开发]]></description><category></category></item><item><title><![CDATA[Java的基本数据类型有哪些？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/124731813</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/124731813</guid><author>Jsono8</author><pubDate>Thu, 12 May 2022 15:40:40 +0800</pubDate><description><![CDATA[一、Java 变量类型

　　在Java语言中，所有的变量在使用前必须声明。声明变量的基本格式如下：

　　type identifier [ = value][, identifier [= value] ...] ;

　　格式说明：type为Java数据类型。identifier是变量名。可以使用逗号隔开来声明多个同类型变量。

　　以下列出了一些变量的声明实例。注意有些包含了初始化过程。

　　int a, b, c; // 声明三个int型整数：

　　a、 b、c int d = 3, e = ]]></description><category></category></item><item><title><![CDATA[如何快速高效的学习一门编程语言？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/124713951</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/124713951</guid><author>Jsono8</author><pubDate>Wed, 11 May 2022 16:56:32 +0800</pubDate><description><![CDATA[任何一门语言都是由下面几部分组成的：

数据类型、数据结构
	逻辑判断，循环
	类、函数
	自带库
	第三方库
对于没有经验的人来说，1，2，3 可以需要花点时间，1~3个月足以。

对于有经验的人（之前使用过其他语言），1，2，3 只需要一周时间。

接下来重点就是类库和函数的学习，你能否熟练写程序就取决于对各种开发库的熟悉程度。新手需要不停的翻越手册，查看每个函数和参数，用过了再知道怎么使用。

我在学习的时候，用了3天快速翻阅，掌握基本的数据类型，数据结构和语法。然后直奔开发库，从手册中找出我需要干活]]></description><category></category></item><item><title><![CDATA[想入门自学编程，应该怎么开始?]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/124690448</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/124690448</guid><author>Jsono8</author><pubDate>Tue, 10 May 2022 15:57:52 +0800</pubDate><description><![CDATA[自学编程学习方法永远都不是重点，学习方法，学习路线基本千篇一律，大同小异，每个人或多或少都能总结几条，但是自学者的心里建设谁去指导，如果一个人没有实践过的真实自学编程经历，自学的感受和经验是总结不出来的。

私以为，感受和经验才是自学者关注的重点。感受能让自学者心态变得沉稳懂得坚持，经验能让自学者少走弯路，高效学习。

自学者没有基础其实也是一件好事，至少能激发一个人的探索未知领域的学习兴趣。当你看到一行行代码被执行出结果，成就感瞬间爆棚，所以零基础根本不是问题。

那么零基础如何去自学呢

一、自学要以视]]></description><category></category></item><item><title><![CDATA[《深入理解计算机系统》这本书需要什么水平能看懂？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/124649127</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/124649127</guid><author>Jsono8</author><pubDate>Sun, 08 May 2022 15:45:23 +0800</pubDate><description><![CDATA[要达到看懂并深入理解这本书，一定要明白自己当前所处的阶段，这本书并不适合刚接触计算机的同学就来读，适合学习计算机系统，并在中级阶段时作为入门教材来学习。

那么如果要学习计算机系统学，如何逐渐由浅入深的学习，制定自己的学习规划路线呢？接下来耐下性子慢慢往下看，以我个人的计算机系统学习经历来讲解，希望能够给到你一些启发。

按照USNews的分类，计算机科学被分为四大类Systems, AI, Programming language, Theory。无论你研究哪一个方向，计算机系统，底层原理都是不可忽视的部]]></description><category></category></item><item><title><![CDATA[编程学习过程中有哪些快速提高编程技巧的方法？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/124611818</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/124611818</guid><author>Jsono8</author><pubDate>Sat, 07 May 2022 17:26:22 +0800</pubDate><description><![CDATA[编码和其他技能一样，需要练习，如果你长时间不用，你的编码技巧就会变得麻木。

而如果你期望成为优秀的人，那么就不仅仅是每天在工作中编码，那是不够的，你需要把编码当成你的生活。

想想奥运运动员，他们不只是每天训练几个小时，他们为自己的运动而活，他们每天训练8到10个小时，然后参加比赛。

他们痴迷于寻找自己的弱点，并将其完善。

如果你想成为一名 优秀的开发人员，那么你也要用同样的方式来看待写代码的做法。

特别是当你刚刚开始你的职业生涯，想从教程地狱中挣脱出来的时候，这看起来似乎太难了。

但这并不难，你]]></description><category></category></item><item><title><![CDATA[图解Spring解决循环依赖]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/124217077</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/124217077</guid><author>Jsono8</author><pubDate>Sat, 16 Apr 2022 17:25:12 +0800</pubDate><description><![CDATA[前言

Spring如何解决的循环依赖，是近两年流行起来的一道Java面试题。其实笔者本人对这类框架源码题还是持一定的怀疑态度的。如果笔者作为面试官，可能会问一些诸如“如果注入的属性为null，你会从哪几个方向去排查”这些场景题。那么既然写了这篇文章，闲话少说，发车看看Spring是如何解决的循环依赖，以及带大家看清循环依赖的本质是什么。

正文

通常来说，如果问Spring内部如何解决循环依赖，一定是单默认的单例Bean中，属性互相引用的场景。比如几个Bean之间的互相引用：



甚至自己“循环”依赖]]></description><category></category></item><item><title><![CDATA[整理一波优质的编程学习网站]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/124199204</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/124199204</guid><author>Jsono8</author><pubDate>Fri, 15 Apr 2022 17:06:34 +0800</pubDate><description><![CDATA[推荐12个可以免费学习编程的网站，希望大家哪怕找到一个自己合适的，然后好好利用起来，那么必将会有长足的进步。



11. Codecademy

Codecademy的大名相信大家都听过，这个就不多介绍了，免费课程很多很全面。大家真的要好好利用资源呀。

10. Free Code Camp

Free Code Camp是一个非营利组织，大家可以在该平台学习HTML，CSS以及JavaScript等前端知识。



很有意思的是，该网站创始人Quincy Larson，当初是因为来中国旅行，看到中国小孩]]></description><category></category></item><item><title><![CDATA[前端和后端的区别是什么？零基础建议学哪个？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/124063428</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/124063428</guid><author>Jsono8</author><pubDate>Sat, 09 Apr 2022 16:43:26 +0800</pubDate><description><![CDATA[一、什么是前端开发？

1、前端概念

前端即网站前台部分，运行在PC端，移动端等浏览器上展现给用户浏览的网页。随着互联网技术的发展，HTML5，CSS3，前端框架的应用，跨平台响应式网页设计能够适应各种屏幕分辨率，完美的动效设计，给用户带来极高的用户体验。

2、前端特点

前端技术一般分为前端设计和前端开发，前端设计一般可以理解为网站的视觉设计，前端开发则是网站的前台代码实现，包括基本的HTML和CSS以及JavaScript/ajax，最新的高级版本HTML5、CSS3，以及SVG等。

3、前端主要]]></description><category></category></item><item><title><![CDATA[自学前端还是java好？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/124044340</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/124044340</guid><author>Jsono8</author><pubDate>Fri, 08 Apr 2022 16:15:12 +0800</pubDate><description><![CDATA[在这里先给大家剖析一下Java和Web前端的学习路线

1.Java学习路线

首先你必须得学习JavaSE，JavaSE是你做java web开发的基础，不过如果遇到swing，jFrame，AWT的章节可以直接跳过，现在已经用的特别少了，而且不影响后续学习。

XML学习，在使用的很多框架中都是通过XML文件进行配置的，这个也必须掌握。

JavaEE部分，JavaEE的生态特别庞大，我们无法学习完所有的知识点，我就按照重要程度来说明学习的先后顺序。首先是Servlet，这是必须要学的，像Struts2]]></description><category></category></item><item><title><![CDATA[中年程序员都在想什么？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/123924895</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/123924895</guid><author>Jsono8</author><pubDate>Sat, 02 Apr 2022 17:14:31 +0800</pubDate><description><![CDATA[六点，大刘（某大公司架构师，35岁+）被系统报警的短信惊醒，睡眼朦胧的看了下手机，一下子身子就坐了起来：

核心的交易系统出现了问题

这下子麻烦大了!

大刘小心翼翼的去到厕所，匆忙的洗漱完毕，又踮起脚尖，慢慢的蹭出门去，生怕吵醒了老婆孩子。

出了门，大刘庆幸了下，幸亏昨晚加班回来晚，没有和老婆孩子一个屋子睡，没吵到她们。

大刘赶紧开车赶往了公司，路上嚼了块口香糖，系统出问题扣钱是八九不离十了，倒不是心疼钱，而是出了问题，影响公司业绩，工作保不住。现在的经济环境，失了业，真可能要跳楼。还好出来的早，一]]></description><category></category></item><item><title><![CDATA[程序员写博客对跳槽有帮助吗？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/123822545</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/123822545</guid><author>Jsono8</author><pubDate>Tue, 29 Mar 2022 15:40:48 +0800</pubDate><description><![CDATA[作为一个老程序员，我看过的简历、面试过的程序员非常多，我可以肯定说：

写技术博客对跳槽有帮助！

如果你有一个技术博客（或者开源项目），这些能显得你这个人爱学习、爱总结分享，证明你是一个非常Open的人。

妥妥的一个加分项，我对你的好感立刻增加。当然，前提是一个能拿的出手的博客。

但是很多人也犯一个通病，就是直接把博客地址写在简历里。缺点是：

1、面试官可能没有点地址链接

2、点了链接，发现文章很多，没时间一篇一篇去看

3、面试官拿的的一个纸质简历，总不能指望他一个一个字母的敲地址吧

告诉你们]]></description><category></category></item><item><title><![CDATA[如何成为一名合格的JAVA程序员?]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/123759075</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/123759075</guid><author>Jsono8</author><pubDate>Sat, 26 Mar 2022 16:56:52 +0800</pubDate><description><![CDATA[不知不觉树义已经工作 5 年了，一路走来磕磕碰碰但总算有了自己的一点小体会。对于一个 Java 开发人员来说，到了 5 年的关键节点，需要掌握哪些知识点呢？经过我自己的总结，我列出了下面的思维导图。

从上面的图片我们可以看出大致分为三个部分：JDK 源码、JVM 原理、框架源码。

JDK源码

JDK 源码是一切的基础，许多框架都参考了 JDK 源码的实现思路，因此弄懂 JDK 源码是一件非常重要的事情。而 JDK 源码又可以分为下面 4 大块：

集合源码
	并发集合源码
	并发包源码
	阻塞队列源码]]></description><category></category></item><item><title><![CDATA[大家都是怎么度过程序员的入门阶段的？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/123735783</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/123735783</guid><author>Jsono8</author><pubDate>Fri, 25 Mar 2022 15:21:35 +0800</pubDate><description><![CDATA[以下，是工作十年的老菜鸟给刚入职新菜鸟的八条建议，希望你能认真看看，早日脱离新菜鸟的坑，像我一样，成长为一名老菜鸟。



1.别拿高考的心态去学技术，这世上没有技术驱动型公司

我见过很多新手程序员，特别执着于技术本身，因为只要技术厉害就可以在公司里获得地位和尊重。但这世上并没有单靠技术驱动的公司，阿里、腾讯、谷歌都不是。技术仅仅是一种工具，需求才是公司关注的重点。

当然如果你是个技术痴，那我建议你去读个博士，可以深入的钻研某一方面的东西。



2.不要轻易的说出“简单”“很难”这样的词

“XX很简]]></description><category></category></item><item><title><![CDATA[目前企业如何看待培训机构出来的程序员？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/123714373</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/123714373</guid><author>Jsono8</author><pubDate>Thu, 24 Mar 2022 16:55:47 +0800</pubDate><description><![CDATA[培训出来的程序员总被误伤

不知道从什么时候开始，大家是越来越看不上培训出来的程序员了，主要是嫌弃他们：基础不行、学历低、水平不行、学习能力弱、简历造假。

有些培训机构出来的程序员确实有问题，但是不能因为“只是很多表现不好的程序员恰好都有过培训经历”，就一棍子打死所有培训出来的程序员。

其实在很多软件、互联网公司里都有培训机构出来的程序员，这其中很多人干的还是不错的。

我自己就是培训出来的前浪，我不会跟风无脑的嫌弃后浪，上面说的那些“嫌弃”，准确的说应该是：

大家不嫌弃培训机构出来的程序员，而是嫌弃]]></description><category></category></item><item><title><![CDATA[java面试的的时候你被提过哪些问题？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/123687859</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/123687859</guid><author>Jsono8</author><pubDate>Wed, 23 Mar 2022 16:07:43 +0800</pubDate><description><![CDATA[Java集合22题

1. ArrayList 和 Vector 的区别。

2. 说说 ArrayList，Vector，LinkedList 的存储性能和特性。

3. 快速失败 (fail-fast) 和安全失败 (fail-safe) 的区别是什么？

4. HashMap 的数据结构。

5. HashMap 的工作原理是什么？

6. Hashmap 什么时候进行扩容呢？

7. List、Map、Set 三个接口，存取元素时，各有什么特点？

8. Set 里的元素是不能重复的，那么用什么方法]]></description><category></category></item><item><title><![CDATA[有哪些比较基础的优质计算机书籍？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/123663477</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/123663477</guid><author>Jsono8</author><pubDate>Tue, 22 Mar 2022 16:22:44 +0800</pubDate><description><![CDATA[不废话，推荐6本书。

不是直接罗列6本书，而是有一个看书顺序，按我说的顺序看，学计算机基础事半功倍。

1. 《C程序设计语言典藏版套装》

首先，由于很多经典书籍大部分是用 C 语言或者类 C 语言实现，所以，C 语言本身应该作为计算机学习前的任何前置基础。

C 语言设计最经典的书籍《C程序设计语言典藏版套装》是一定要提及的。

这本书原著即为 C 语言的设计者之一 DennisM.Ritchie，另外一位作者则是著名的计算机科学家 BrianW.Kernighan。

这本书是 C 语言最经典的著作]]></description><category></category></item><item><title><![CDATA[想预习Java内容，有哪些比较好的java初级入门书籍？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/123596077</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/123596077</guid><author>Jsono8</author><pubDate>Sat, 19 Mar 2022 15:40:00 +0800</pubDate><description><![CDATA[入门 Java，我推荐《Java核心技术》第 11 版，yyds！

这其实是一套书，分为两本:

卷1 基础知识（豆瓣 9.2 分）
	卷2 高级特性（豆瓣 8.4 分）
一个9.2分，一个8.4分，很高的分数，书的质量杠杠的！

我估计 70% 的 Java 程序员入门看的是这本书，写的经典、全面，对 Java 各种特性，都会有对应的代码示例。

同时，光看这本书作为入门有个问题，就是只能知其然，却不知所以然。而不知所以然，必然会导致咱们的基础会不够牢靠。

《Java核心技术》和《Java编程的逻辑》]]></description><category></category></item><item><title><![CDATA[工作3年以上的程序员现在都在做什么工作？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/123575623</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/123575623</guid><author>Jsono8</author><pubDate>Fri, 18 Mar 2022 17:01:55 +0800</pubDate><description><![CDATA[我是做Java开发的，我说说我自己工作三年时候的转他。

1、

在我当了程序员三年之后，我对开发这事儿已经非常熟练了，熟练主要表现在两个方面：

1. 提给我的业务需求，我已经能毫不费劲的形成技术思路。

2. 写代码的时候，我已经能准确而快速的使用开发语言的 API 了。

我认为三年的程序员，做到以上两点是基本条件。干了三年左右，大部分人都已经很适应程序员这个工作了，是团队中编码的主力军，开发工作应该做的很顺利了。

如果大家真的很熟练了，大家也要警醒一些。因为这种熟练的开发代码就像麻药一样，会渐渐地]]></description><category></category></item><item><title><![CDATA[Java学起来到底有多难？]]></title><link>https://blog.youkuaiyun.com/Jsono8/article/details/123548862</link><guid>https://blog.youkuaiyun.com/Jsono8/article/details/123548862</guid><author>Jsono8</author><pubDate>Thu, 17 Mar 2022 14:33:58 +0800</pubDate><description><![CDATA[作为一个用 Java 十几年的老程序员来说几句。学Java对新人来说确实有点难，但是如果新人知道了正确学习方法，学习效果就会好得多。接下来我就尝试总结一下。

一、Java内容太多，要避开那些“没有用知识”

确实，Java 的知识体系繁冗复杂，比较“全家桶”不是白叫的。但是这其中很多知识点不建议学，因为这些知识工作中很少用到，相关岗位很少，面试很少问到。例如下面这些：

Java 的桌面 GUI 相关技术，包括:AWT、Swing、SWT/JFACE、JavaFx、JavaFx2
	Java 的 XML ]]></description><category></category></item></channel></rss>