<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[那一抹云]]></title><description><![CDATA[enjoy work, enjoy life]]></description><link>https://blog.csdn.net/fjf133</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; fjf133]]></copyright><item><title><![CDATA[jboss 数据库连接管理的一个问题]]></title><link>https://blog.csdn.net/fjf133/article/details/5515028</link><guid>https://blog.csdn.net/fjf133/article/details/5515028</guid><author>fjf133</author><pubDate>Thu, 22 Apr 2010 11:19:00 +0800</pubDate><description><![CDATA[工作中遇到了一个问题，google了一篇，原文地址：http://blog.csdn.net/xumiao19871129/archive/2009/10/14/4669898.aspx转载如下： 1[CachedConnectionManager] Closing a connection for you.  Please close them yourself: org.j]]></description><category></category></item><item><title><![CDATA[传智播客－总结]]></title><link>https://blog.csdn.net/fjf133/article/details/5398164</link><guid>https://blog.csdn.net/fjf133/article/details/5398164</guid><author>fjf133</author><pubDate>Fri, 19 Mar 2010 23:56:00 +0800</pubDate><description><![CDATA[常言道，师傅领进门，修行在个人。很多人都会强调后面那句，往往忽略了必要的前提，如果那个师傅是个庸人，只是把徒弟带到门边，而根本没有领进门，又或者那个师傅是个自以为是或别有用心之人，把徒弟领进了一个完全错误的门呢？估计那个徒弟再努力也只是离正途渐行渐远而已。做为一个曾被人只是领到门边（客观的说，这人本身还是很有实力的，只是教的东西确实有限），然后又被某个至少有5年java开发经验的“年轻技术专家”完]]></description><category></category></item><item><title><![CDATA[传智播客－Tree in SQL（译文）（3）]]></title><link>https://blog.csdn.net/fjf133/article/details/5394540</link><guid>https://blog.csdn.net/fjf133/article/details/5394540</guid><author>fjf133</author><pubDate>Thu, 18 Mar 2010 22:52:00 +0800</pubDate><description><![CDATA[This has some predictable results that we can use for building queries. The root is always of the form (left = 1, right = 2 * (SELECT COUNT(*) FROM TreeTable)); leaf nodes always have (left + 1 = righ]]></description><category></category></item><item><title><![CDATA[传智播客－Tree in SQL（译文）（2）]]></title><link>https://blog.csdn.net/fjf133/article/details/5388430</link><guid>https://blog.csdn.net/fjf133/article/details/5388430</guid><author>fjf133</author><pubDate>Wed, 17 Mar 2010 11:39:00 +0800</pubDate><description><![CDATA[ Table 1 is denormalized in several ways. We are modeling both the personnel and the organizational chart in one table. But for the sake of saving space, pretend that the names are job titles and ]]></description><category></category></item><item><title><![CDATA[传智播客－Tree in SQL（译文）（1）]]></title><link>https://blog.csdn.net/fjf133/article/details/5386904</link><guid>https://blog.csdn.net/fjf133/article/details/5386904</guid><author>fjf133</author><pubDate>Tue, 16 Mar 2010 21:45:00 +0800</pubDate><description><![CDATA[作者简介：Joe Celko，世界著名的数据库专家，他撰写了多部SQL经典著作，诸如《Analytics and OLAP in SQL》、《Trees and Hierarchies in SQL for Smarties》、《SQL Puzzles and Answers》等等。他也是世界上读者数量最多的SQL书籍作者之一。他曾撰写过一系列专栏，并通过他的新闻组支持了数据库编程技术以及ANSI]]></description><category></category></item><item><title><![CDATA[传智播客－邮件开发（5）－Base64与Quoted-printable编码方式]]></title><link>https://blog.csdn.net/fjf133/article/details/5383556</link><guid>https://blog.csdn.net/fjf133/article/details/5383556</guid><author>fjf133</author><pubDate>Mon, 15 Mar 2010 23:05:00 +0800</pubDate><description><![CDATA[邮件开发中，对非ASCII码数据传输用了两种编码方式：Base64和Quoted-printable（在outlook中有个选项可以查看到）。该文主要是介绍这两种编码方式的算法思想。 Base64Base64是将二进制转换成可打印的ASCII字符的一种最常见的编码方式，它的基本原理是将一组连续的字节数据按6个bit位进行分组，然后对每组数据用一个ASCII字符来表示。6个bit位最多能表示]]></description><category></category></item><item><title><![CDATA[传智播客－邮件开发（4）－Java Mail开发实践]]></title><link>https://blog.csdn.net/fjf133/article/details/5377706</link><guid>https://blog.csdn.net/fjf133/article/details/5377706</guid><author>fjf133</author><pubDate>Sat, 13 Mar 2010 23:01:00 +0800</pubDate><description><![CDATA[使用Java Mail API发送一封简单的邮件通常包括以下几个方面：1、创建包含邮件服务器的网络连接信息的session对象；2、创建代表邮件内容的message对象－－MimeMessage类表示整封邮件；MimeBodyPart类表示邮件的一个MIME消息，只有调用了setFileName方法的MimeBodyPart对象才能成为附件；MimeMultipart类表示一个由多个MIME消息组]]></description><category></category></item><item><title><![CDATA[传智播客－邮件开发（3）－Java Mail简介]]></title><link>https://blog.csdn.net/fjf133/article/details/5375030</link><guid>https://blog.csdn.net/fjf133/article/details/5375030</guid><author>fjf133</author><pubDate>Fri, 12 Mar 2010 19:30:00 +0800</pubDate><description><![CDATA[如果想自己写程序发送和接收邮件，可以直接采用socket编程连接上远程的邮件服务器，然后按照邮件协议与邮件服务器进行交互，但是涉及较多细节；另外，要想自己编程创建出复杂的MIME格式的邮件，是一件非常困难和麻烦的事。而JavaMail就是sun公司为了方便java开发人员在应用程序中实现邮件发送和接收功能而提供的一套标准开发包，它支持一些常用邮件协议，例如SMTP，POP3，IMAP等；也提供了能]]></description><category></category></item><item><title><![CDATA[传智播客－邮件开发（2）－以命令方式收发邮件]]></title><link>https://blog.csdn.net/fjf133/article/details/5372136</link><guid>https://blog.csdn.net/fjf133/article/details/5372136</guid><author>fjf133</author><pubDate>Thu, 11 Mar 2010 23:22:00 +0800</pubDate><description><![CDATA[准备实验环境：提前在sina和sohu上开设一个免费账户（ms现在只有sohu还公开对外SMTP服务器）：itcast_test@sina.com；获取smtp和pop3服务器的名称；在outlook中配置sina账户（outlook为这一邮件收发实验中的邮件客户端软件）；使用outlook发送和接收邮件；提前准备好Base64编码的用户名和密码（因为以命令方式输入用户名和密码连接邮件服务器时，需]]></description><category></category></item><item><title><![CDATA[传智播客－邮件开发（1）－关于电子邮件的一些基本常识]]></title><link>https://blog.csdn.net/fjf133/article/details/5366689</link><guid>https://blog.csdn.net/fjf133/article/details/5366689</guid><author>fjf133</author><pubDate>Wed, 10 Mar 2010 22:28:00 +0800</pubDate><description><![CDATA[通常邮件开发主要包括两方面内容：发送与接收邮件；创建与解析邮件内容。不过在介绍如何简单开发一个邮件应用前先介绍一下关于电子邮件的一些基本常识，包括以下五点：邮件传输协议；邮件服务器；电子邮箱；邮件客户端软件；电子邮件的传输过程。 邮件传输协议SMTP协议：全称为Simple Mail Transfer Protocol（简单邮件传输协议），定义了邮件客户端软件与SMTP服务器之间、以及两台]]></description><category></category></item><item><title><![CDATA[3月6日－传智播客－多线程（8）－Callable与Future、Lock与Condition]]></title><link>https://blog.csdn.net/fjf133/article/details/5353024</link><guid>https://blog.csdn.net/fjf133/article/details/5353024</guid><author>fjf133</author><pubDate>Sat, 06 Mar 2010 23:25:00 +0800</pubDate><description><![CDATA[Callable与FutureCallable是类似于Runnable的接口，实现Callable接口的类和实现Runnable的类都是可被其它线程执行的任务。不过Callable和Runnable有几点不同：1、Callable规定的方法是call()，而Runnable规定的方法是run()； 2、Callable的任务执行后可返回值，而Runnable的任务是不能返回值的； 3、call（）]]></description><category></category></item><item><title><![CDATA[传智播客－多线程（7）－线程池]]></title><link>https://blog.csdn.net/fjf133/article/details/5350849</link><guid>https://blog.csdn.net/fjf133/article/details/5350849</guid><author>fjf133</author><pubDate>Fri, 05 Mar 2010 23:14:00 +0800</pubDate><description><![CDATA[jdk5的并发类库里提供了一个重要的功能：线程池。 关于线程池的讲解，首先介绍在Tcp服务器编程模型的原理：对每一个客户端连接用一个单独的线程为之服务，当与客户端的会话结束时，线程也就结束了，即每来一个客户端连接，服务器端就要创建一个新线程。这好比假设一个公司（服务端）的每个应聘者（客户端连接）都要通过招聘专员（线程）来接待，这个招聘专员在他负责的这个应聘者的整个应聘流中都要存在。 ]]></description><category></category></item><item><title><![CDATA[传智播客－多线程（6）－jdk5里的concurrent与atomic包]]></title><link>https://blog.csdn.net/fjf133/article/details/5347457</link><guid>https://blog.csdn.net/fjf133/article/details/5347457</guid><author>fjf133</author><pubDate>Thu, 04 Mar 2010 22:26:00 +0800</pubDate><description><![CDATA[jdk5开始，java对并发编程增加了一些类库支持，主要是java.util.concurrent，而atomic是其包下的子包。 concurrent包concurrent是在并发编程中很常用的实用工具类。此包包括了几个小的、已标准化的可扩展框架，以及一些提供有用功能的类，没有这些类，这些功能会很难实现或实现起来冗长乏味：1、接口：Executor是一个简单的标准化接口，用于定义类似]]></description><category></category></item><item><title><![CDATA[传智播客－多线程（5）－ThreadfLocal]]></title><link>https://blog.csdn.net/fjf133/article/details/5343707</link><guid>https://blog.csdn.net/fjf133/article/details/5343707</guid><author>fjf133</author><pubDate>Wed, 03 Mar 2010 22:24:00 +0800</pubDate><description><![CDATA[ThreadfLocalThreadfLocal是一种机制，很多人都说它的名字叫ThreadfLocalVariable更贴切。表面上看它和其他的java类没有区别，但是当一个多线程系统要求各个线程都有自己线程内的全局变量时，使用ThreadfLocal就是一个极佳的选择。 ThreadfLocal用于实现线程内的数据共享，即对于相同的程序代码，多个模块在同一个线程中运行时要共享一份数据，]]></description><category></category></item><item><title><![CDATA[传智播客－多线程（4）－线程间通信]]></title><link>https://blog.csdn.net/fjf133/article/details/5333471</link><guid>https://blog.csdn.net/fjf133/article/details/5333471</guid><author>fjf133</author><pubDate>Sun, 28 Feb 2010 12:22:00 +0800</pubDate><description><![CDATA[在实际中有很多现实问题业务需求不仅需要多个线程访问同一共享资源，而且线程与线程之间还需要互相牵制，或者说协调合作，这种牵制/协调合作，我们可以理解为线程间的通信。 java中的线程间通信主要是靠Thread的三个方法实现：wait，notify，notifyAll。wait：告诉当前线程放弃监视器并进入睡眠状态直到其他线程进入同一监视器并调用notify为止；notify：唤醒同一对象监视]]></description><category></category></item><item><title><![CDATA[传智播客－多线程（3）－同步]]></title><link>https://blog.csdn.net/fjf133/article/details/5330930</link><guid>https://blog.csdn.net/fjf133/article/details/5330930</guid><author>fjf133</author><pubDate>Sat, 27 Feb 2010 00:06:00 +0800</pubDate><description><![CDATA[虽然说是多线程，但是每一个时刻点jvm执行的时候只能执行一句代码，对于一段程序而言，或者说一个业务流而言，代码的执行是在多个线程里相互不断切换的，即一个业务流中多个任务的分派在执行过程中的顺序是不定的。以下面的代码为例：public static void main(String[] args) {		Runnable tt = new TicketThread();				new]]></description><category></category></item><item><title><![CDATA[传智播客－多线程（2）－Thread与Runnable]]></title><link>https://blog.csdn.net/fjf133/article/details/5327700</link><guid>https://blog.csdn.net/fjf133/article/details/5327700</guid><author>fjf133</author><pubDate>Thu, 25 Feb 2010 23:34:00 +0800</pubDate><description><![CDATA[java是面向对象的语言，以java的视角，进程和线程都是对象，分别以Process和Thread表示。Process很少用到（没遇到过没听到过没看到过）。 Thread在java中，创建一个线程，即创建一个Thread对象。要启用该线程对象，必须显示调用Thread.start()方法。不过我们之所以要创建一个新线程，肯定是因为有某种业务需求，需要在新线程中实现这种业务需求，而具体的实现]]></description><category></category></item><item><title><![CDATA[传智播客－多线程（1）－java里的进程和线程]]></title><link>https://blog.csdn.net/fjf133/article/details/5323945</link><guid>https://blog.csdn.net/fjf133/article/details/5323945</guid><author>fjf133</author><pubDate>Wed, 24 Feb 2010 21:50:00 +0800</pubDate><description><![CDATA[对于开发人员而言，进程和线程是两个耳熟能详的概念；面试笔试遇到这类题的概率也很高。有人说工作中很少用到多线程，因为线程多的话难以掌控，能不用则不用；但是也有很多业务需求不得不用多线程实现，最常见的一个是多线程下载（当然这个涉及的不只多线程这一个技术，还有io和网络连接）。 在多任务系统中，每个独立执行的程序称为进程，也就是“正在进行的程序”。我们现在使用的操作系统一般都是多任务的，即能够同]]></description><category></category></item><item><title><![CDATA[传智播客－web service（8）－利用xfire开发WS应用]]></title><link>https://blog.csdn.net/fjf133/article/details/5311308</link><guid>https://blog.csdn.net/fjf133/article/details/5311308</guid><author>fjf133</author><pubDate>Thu, 18 Feb 2010 23:03:00 +0800</pubDate><description><![CDATA[xfire概述xfire是下一代java soap框架，提供了方便的API（就应用而言，xfire比axis还要方便点），支持多种绑定机制、容器和传输方式，支持各种标准，性能优良等等，下面是xfire特性的大致列表（如有遗漏，欢迎补充～）：1.支持多个WS标准(soap、wsdl、ws-I、basic Profile ws-addressing、ws-security)。2.高性能soap栈(使用]]></description><category></category></item><item><title><![CDATA[传智播客－web service（7）－序列化与反序列化、文件上传与下载]]></title><link>https://blog.csdn.net/fjf133/article/details/5310567</link><guid>https://blog.csdn.net/fjf133/article/details/5310567</guid><author>fjf133</author><pubDate>Wed, 17 Feb 2010 22:31:00 +0800</pubDate><description><![CDATA[序列化与反序列化WS中的序列化与反序列化是指java对象与xml之间的相互转换，意即如果传输的数据是java对象，例如基本数据类型的包装类，自定义的义务类、集合等，客户端服务端需要显示注册序列化器和反序列化器。而利用axis开发的WS应用，是以“映射”的方式来体现这一点的，所以像axis这样的引擎也被称为OXM－－Object XML Mapping。 服务端，如果程序运行时报错“faul]]></description><category></category></item></channel></rss>