<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[梭边侠的成长之路]]></title><description><![CDATA[只要方法正确，量变最终会引起质变]]></description><link>https://blog.youkuaiyun.com/sinat_37320521</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sinat_37320521]]></copyright><item><title><![CDATA[linux安装redis]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/94394950</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/94394950</guid><author>sinat_37320521</author><pubDate>Mon, 01 Jul 2019 15:59:28 +0800</pubDate><description><![CDATA[...]]></description><category></category></item><item><title><![CDATA[线程池是怎样工作的]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/89451101</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/89451101</guid><author>sinat_37320521</author><pubDate>Mon, 22 Apr 2019 14:25:08 +0800</pubDate><description><![CDATA[我们在工作中或多或少都使用过线程池，但是为什么要使用线程池呢？从他的名字中我们就应该知道，线程池使用了一种池化技术，和很多其他池化技术一样，都是为了更高效的利用资源，例如链接池，内存池等等。

数据库链接是一种很昂贵的资源，创建和销毁都需要付出高昂的代价，为了避免频繁的创建数据库链接，所以产生了链接池技术。优先在池子中创建一批数据库链接，有需要访问数据库时，直接到池子中去获取一个可用的链接，使用完...]]></description><category></category></item><item><title><![CDATA[什么是消息队列？]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/89330257</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/89330257</guid><author>sinat_37320521</author><pubDate>Tue, 16 Apr 2019 11:34:47 +0800</pubDate><description><![CDATA[&lt;div&gt;&lt;div class="cl-preview-section"&gt;&lt;h2&gt;前言&lt;/h2&gt;


只有光头才能变强。


文本已收录至我的GitHub仓库欢迎Starhttps://github.com/ZhongFuCheng3y/3y

公司用到的很多技术自己之前都没学过(尬)于是只能慢慢补了。这次给大家写写我学习消息...]]></description><category></category></item><item><title><![CDATA[解决Chrome插件安装时出现的“程序包无效”问题]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/89327330</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/89327330</guid><author>sinat_37320521</author><pubDate>Tue, 16 Apr 2019 09:59:39 +0800</pubDate><description><![CDATA[某些用户在Chrome插件网下载了Chrome插件后，不知道怎么才能把它安装到Chrome浏览器中，用户可以根据本站提供的教程：怎么在谷歌浏览器中安装.crx扩展名的离线Chrome插件？把下载后的扩展名为crx的Chrome插件安装到谷歌浏览器中。

但是，由于一些特殊原因，极个别Chrome插件在使用上述的安装方法的时候，Chrome会提示“只能通过Chrome网上应用商店安装该程序”，如...]]></description><category></category></item><item><title><![CDATA[怎么从Chrome浏览器中导出扩展程序为crx文件？]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/89307341</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/89307341</guid><author>sinat_37320521</author><pubDate>Mon, 15 Apr 2019 10:36:49 +0800</pubDate><description><![CDATA[在chrome浏览器中安装好一些我们需要的chrome扩展程序后，有一天如果浏览器需求卸载后重新安装，但是我们这些插件又不好备份，当然用户可以始终在我们chrome插件网（http://www.cnplugins.com）找到下载安装包。但是如果这些对你来说都比较麻烦的话，那么如果你可以事先将自己本地的chrome扩展程序导出。如果将本地的chrome程序导出为CRX格式呢？这就是我们今天要为大...]]></description><category></category></item><item><title><![CDATA[Linux系统安装VMware Tools遇到的问题]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/89180809</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/89180809</guid><author>sinat_37320521</author><pubDate>Wed, 10 Apr 2019 13:33:17 +0800</pubDate><description><![CDATA[我用的系统为CentOS6.5 minimal版本 
minimal版本默认不启动网络，所以要自己配置。
vi /etc/sysconfig/network-script/ifcfg-eth01
1 NM_CONTROLLED="no"     #修改为no不依赖VMware NetworkManager控制
2 ONBOOT="yes"      ...]]></description><category></category></item><item><title><![CDATA[Git使用详细教程]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/89084542</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/89084542</guid><author>sinat_37320521</author><pubDate>Mon, 08 Apr 2019 11:24:01 +0800</pubDate><description><![CDATA[一：Git是什么？
　　Git是目前世界上最先进的分布式版本控制系统。
　　二：SVN与Git的最主要的区别？
　　SVN是集中式版本控制系统，版本库是集中放在中央服务器的，而干活的时候，用的都是自己的电脑，所以首先要从中央服务器哪里得到最新的版本，然后干活，干完后，需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作，如果在局域网还可以，带宽...]]></description><category></category></item><item><title><![CDATA[Java多线程学习]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/88974855</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/88974855</guid><author>sinat_37320521</author><pubDate>Tue, 02 Apr 2019 16:22:52 +0800</pubDate><description><![CDATA[本文转载自http://blog.youkuaiyun.com/evankaka&nbsp; &nbsp; &nbsp; &nbsp; 写在前面的话：此文只能说是java多线程的一个入门，其实Java里头线程完全可以写一本书了，但是如果最基本的你都学掌握好，又怎么能更上一个台阶呢？如果你觉得此文很简单，那推荐你看看Java并发包的的线程池（Java并发编程与技术内幕:线程池深...]]></description><category></category></item><item><title><![CDATA[让你分分钟理解JavaScript闭包]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/88787721</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/88787721</guid><author>sinat_37320521</author><pubDate>Mon, 25 Mar 2019 10:42:49 +0800</pubDate><description><![CDATA[闭包，是 Javascript 比较重要的一个概念，对于初学者来讲，闭包是一个特别抽象的概念，特别是 ECMAScript 规范给的定义，如果没有实战经验，很难从定义去理解它。因此，本文不会对闭包的概念进行大篇幅描述，直接上干货，让你分分钟理解闭包！

闭包，一睹为快

在接触一个新技术的时候，我首先会做的一件事就是找它的 demo。对于我们来说，看代码比自然语言更能理解一个事物的本质。其实，闭包...]]></description><category></category></item><item><title><![CDATA[Sleep(0)的妙用]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/88638635</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/88638635</guid><author>sinat_37320521</author><pubDate>Mon, 18 Mar 2019 14:42:04 +0800</pubDate><description><![CDATA[Thread.Sleep(0) 表示挂起0毫秒，你可能觉得没作用，你要写Thread.Sleep(1000) 就有感觉了。似乎毫无意义。
MSDN的说明：指定零 (0) 以指示应挂起此线程以使其他等待线程能够执行。

Thread.Sleep(0) 并非是真的要线程挂起0毫秒，意义在于这次调用Thread.Sleep(0)的当前线程确实的被冻结了一下，让其他线程有机会优先执行。Thread.Sle...]]></description><category></category></item><item><title><![CDATA[JavaSE综合案例——管家婆家庭记账软件]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/80164662</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/80164662</guid><author>sinat_37320521</author><pubDate>Wed, 02 May 2018 12:08:28 +0800</pubDate><description><![CDATA[用JavaSE实现一个控制台记账软件：5个功能模块：1.添加账务、2.编辑账务、3.删除账务、4.查询账务（全部查询、条件查询）、5.退出系统使用到了Apache commons项目下的3个工具类和mysql数据库驱动：整个工程分为7个层：view层、controller层、service层、dao层、database层、tools层、test层test层：/*
 * 主程序类，作用：开启软件程序...]]></description><category></category></item><item><title><![CDATA[使用DBCP连接池创建DataSource工具类]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/80156628</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/80156628</guid><author>sinat_37320521</author><pubDate>Tue, 01 May 2018 14:56:57 +0800</pubDate><description><![CDATA[使用DBCP连接池创建的JDBC的工具类：public class JDBCUtils {
	private static BasicDataSource dataSource = new BasicDataSource();
	
	/*
	 * DBCP连接池的配置只需要进行一次，故放在静态代码块中
	 */
	static {
		dataSource.setDriverClassName(&quot;...]]></description><category></category></item><item><title><![CDATA[JDBC登陆查询案例]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/80142911</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/80142911</guid><author>sinat_37320521</author><pubDate>Sun, 29 Apr 2018 14:29:46 +0800</pubDate><description><![CDATA[案例要求：1.map中有如下数据(用户名=密码)	[liuyan=123456,wangbaoqiang=123321,fangbian=abcd,miejueshitai=123abc321]	在ip为127.0.0.1数据库名为stdb,连接数据库的用户名和密码为:admin和123456中有一个userinfo表相关字段为(id,username,password)	(1)将map中的手机号...]]></description><category></category></item><item><title><![CDATA[JDBC通过配置文件方式连接数据库的工具类]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/80140566</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/80140566</guid><author>sinat_37320521</author><pubDate>Sun, 29 Apr 2018 00:37:31 +0800</pubDate><description><![CDATA[在不使用第三方工具类的情况下：/*
 * 编写JDBC的工具类，获取数据库的连接
 * 采用读取配置文件的方式
 * 读取配置文件，获取连接，都只需要进行一次，因此使用静态代码块
 */
public class JDBCUtilsConfig {
	//将变量抽取到成员位置
	private static Connection con;
	private static String driver...]]></description><category></category></item><item><title><![CDATA[JDBC工具类]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/80139834</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/80139834</guid><author>sinat_37320521</author><pubDate>Sat, 28 Apr 2018 22:17:30 +0800</pubDate><description><![CDATA[将JDBC技术中常用的：    1.注册驱动    2.创建数据库连接封装成一个工具类，以便直接使用public class JDBCUtils {
	/*
	 * 因为是工具类，所以将构造器私有化，不允许new
	 */
	private JDBCUtils() {
		
	}
	private static Connection con;
	
	/*
	 * 使用静态代码块，使得类名.getC...]]></description><category></category></item><item><title><![CDATA[Java网络编程中的UDP案例]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/80114042</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/80114042</guid><author>sinat_37320521</author><pubDate>Fri, 27 Apr 2018 22:07:40 +0800</pubDate><description><![CDATA[发送端：/*
 * UDP通信方式，发送端不用管接收端是否存在（在线），都可以进行发送
 */
public class UDPSend {
	public static void main(String[] args) throws IOException{
		//通过InetAddress类静态方法，传入目标IP地址，获取目标IP地址对象
		InetAddress ip = InetAdd...]]></description><category></category></item><item><title><![CDATA[Java网络编程中的多线程上传]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/80093311</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/80093311</guid><author>sinat_37320521</author><pubDate>Thu, 26 Apr 2018 14:20:23 +0800</pubDate><description><![CDATA[客户端类：/*
 * 上传案例的客户端
 * 注意在读取完需要上传的源文件以后，调用客户端Socket对象的shutdownOutputStream()
 * 此方法可以禁用此套接字的输入流，并且在输入流后面跟上TCP正常连接终止序列
 * 这样可以防止上传线程任务代码中读取客户端输出的字节数组时由于读不到-1而使read()方法一直处于线程等待的现象
 */
public class TCPCl...]]></description><category></category></item><item><title><![CDATA[JavaSE中多线程案例2（关于多线程通信-等待与唤醒）]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/80065199</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/80065199</guid><author>sinat_37320521</author><pubDate>Tue, 24 Apr 2018 15:22:39 +0800</pubDate><description><![CDATA[案例要求：有一个抽奖池,该抽奖池中存放了奖励的金额,该抽奖池用一个数组int[] arr = {10,5,20,50,100,200,500,800,2,80,300}; 	创建两个抽奖箱(线程)设置线程名称分别为“抽奖箱1”，“抽奖箱2”，随机从arr数组中获取奖项元素并打印在控制台上,格式如下:		抽奖箱1 又产生了一个 10 元大奖	抽奖箱2 又产生了一个 100 元大奖		//...../...]]></description><category></category></item><item><title><![CDATA[JavaSE中多线程案例1（关于对象锁）]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/80065007</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/80065007</guid><author>sinat_37320521</author><pubDate>Tue, 24 Apr 2018 15:13:17 +0800</pubDate><description><![CDATA[案例要求：某公司组织年会,会议入场时有两个入口,在入场时每位员工都能获取一张双色球彩票,假设公司有100个员工,利用多线程模拟年会入场过程,	并分别统计每个入口入场的人数,以及每个员工拿到的彩票的号码。线程运行后打印格式如下：	编号为: 2 的员工 从后门 入场! 拿到的双色球彩票号码是: [17, 24, 29, 30, 31, 32, 07]	编号为: 1 的员工 从后门 入场! 拿到的双色球...]]></description><category></category></item><item><title><![CDATA[Java中多线程死锁问题及注意事项]]></title><link>https://blog.youkuaiyun.com/sinat_37320521/article/details/80051003</link><guid>https://blog.youkuaiyun.com/sinat_37320521/article/details/80051003</guid><author>sinat_37320521</author><pubDate>Mon, 23 Apr 2018 15:29:09 +0800</pubDate><description><![CDATA[出现死锁的前提：    1.必须是多线程    2.出现了同步嵌套先定义两个锁类：/*
 * 定义A对象锁
 * 将构造器私有化，使得外类中不能创建A锁对象
 * 创建静态A锁对象，让外类直接  类名.成员变量名  调用这个锁
 * 这种方式保证了死锁的另一前提—锁的唯一性，否则两个同步嵌套各有各的锁，就形不成死锁 
 */
public class LockA {
	private LockA(...]]></description><category></category></item></channel></rss>