JAVA内部培训资料
一、JAVA基础培训系列
1.孙鑫JAVA高级软件工程师班培训录像(2DVD)
简介:光盘由孙鑫老师亲自授课录制。循序渐进、通俗易懂、实战性强、内容全面、讲解深刻、问答形式是本套培训录像的特色。学员通过本套光盘的学习,能够快
速掌握Java编程语言,成为Java高手。
2.传智播客_张孝祥最新java全方位系统培训(内含PPT教学课件,2DVD)
简介:张老师的又一心血力作,内容涵盖java基础、高级内容,以及javascript、web开发、xml等全方位知识,让学员身临其境地学习和感受
编程的乐趣,同时体会张孝祥老师授课的震撼力和穿透力。
另:张孝祥成名之作--JAVA就业培训基础篇+高级篇(完整版)(4DVD)
3.最新尚学堂JAVA系列培训(全)(推荐)(共18辑/300小讲 Avi格式,含源代码及PPT幻灯片笔记文件 1DVD)
简介:JAVA基础全方位系统培训,真正手把手的视频培训录像。从本课程开始至结束,您将全面、深入的学习到Java全系列的知识,并能够积累2年左右的
工作经验,您也能够学习到企业文化、沟通技巧、面试技巧等相关知识。
4.08年最火爆JAVA高端培训系列视频(2DVD)
  ......
泛型是J2SE 5.0最重要的特性。他们让你写一个type(类或接口)和创建一个实例通过传递一个或多个引用类型。这个实例受限于只能作用于这些类型。
比如,在java 5,java.util.List 已经被泛化。当建立一个list对象时,你通过传递一个java类型建立一个List实例,此list实例只能作用于所传递的类型。这意味着如果你传递一个String ,此List实例只能拥有String对象;如果你传递一个Integer,此实例只能存贮Integer对象。除了创建参数化的类型,你还能创建参数化的函数.
泛型的第一个好处是编译时的严格类型检查。这是集合框架最重要的特点。此外,泛型消除了绝大多数的类型转换。在JDK 5.0之前,当你使用集合框架时,你不得不进行类型转换。
我们来探讨一下如何操作泛型。它的第一部分是“没有泛型的日子”,先让我们回忆老版本JDK的不便。然后,举一些泛型的例子。在讨论完语法以及有界泛型的使用之后,文章最后一章将解释如何写泛型。
没有泛型的日子
所有的java类都源自java.lang.Object,这意味着所有的JAVA对象能转换成Object。
因此,在之前的JDK的版本中,很多集合框架的函数接受一个O ......
2010-03-10
最近做项目遇到了一个问题,需要将客户端到处的加密ZIP压缩包直接导入到系统中。在网上查了下关于ZIP解密的问题,发现了winzipaes这个开源项目http://code.google.com/p/winzipaes ,这个项目需要依赖bcprov-jdk14-145.jar这个开源包,两个包联合使用可以解密AES -256算法的加密密码。
因为系统使用的是JDK1.4,而winzipaes开源项目使用的是jdk1.5编写的,所以我改写了程序,改为1.4可知执行的版本并做成了jar包,有需要的朋友可以与我所要,信箱ywxowen999@sina.com。
这个包的使用方法也非常简单,加密和解密算法如:
加密
AesZipFileEncrypter enc = new AesZipFileEncrypter("/doc/zipSpecificationAes.zip");
enc.zipAndEcrypt(new File("/doc/zipSpecification.txt"), "foo");
解密
AesZipFileDecrypter zipFile = new AesZipFileDecrypter( new File("/doc/zipSpecificationAes.zip") );
ExtZipEntry entry = zipFile ......
第一种方法为常见且易于上手
1、在应用开发中,经常需要一些周期性的操作,比如每5分钟执行某一操作
等。对于这样的操作最方便、高效的实现方式就是使用java.util.Timer工具类。
private java.util.Timer timer;
timer
= new Timer(true);
timer.schedule(
new java.util.TimerTask() {
public void run() { //server.checkNewMail(); 要操作的方法 } }, 0, 5*60*1000);
第
一个参数是要操作的方法,第二个参数是要设定延迟的时间,第三个参数是周期的设定,每隔多长时间执行该操作。
使用这几行代码之后,Timer本身会每隔5分钟调用一遍server.checkNewMail()方法,不需要自己启动线程。Timer本身也是多线
程同步的,多个线程可以共用一个Timer,不需要外部的同步代码。
2、
(1)Timer.schedule(TimerTask
task,Date time)安排在制定的时间执行指定的任务。
(2)Timer.schedule(TimerTask task,Date
firstTime ,long period)安排指定的任务在指定的时间开始进行重复的固定延迟执行.
(3)Timer.schedule(TimerTask
task,long delay)安排在指定延迟后执行指定的任务.
(4)Timer ......
注意,用到了内部类:
new Thread
(
new Runnable()
{
public void run()
{
try
{
postMethod(POST_URL,page.getVideoId()+"",page.getPid()+"",page.getId()+"",page.getStatus()+"","page url");
}
catch (IOException e)
{
log.error(e.getMessage(), e);
}
}
}
);
这样既可掉用一个HttpClient的方法了.
即使在被请求端超时或不通的情况下,也不影响本服务器的访问. ......
http://www.cn-java.com/www1/?action-viewnews-itemid-3295
我想JAVA的爱好者,尤其是初学者大都有过这样的经历,就是喜欢JAVA编程语言(这个人的情况可能不一样),但是有时候总会觉得JAVA的优点便是她的“致命”的缺点。大家的信念依旧是“一次编译,到处运行”但是就是因为至一点JAVA失去了好多,我们也失去了好多。也许大家都知道,现在业界最推崇的还是微软的技术微软的产品。.net/c#/.vb/vb.net还是最流行的语言,最受欢迎的软件开发语言。因为这些语言都太好学太好用了。不像JAVA语言那么难懂难用。在软件开发提出高效的组件开发的时候,人们都很难想象用JAVA的EJB就行开发,因为不成熟的技术和不健全的API,让程序员很难入手。虽然有JBuilder这样优秀的开发工具,但是有时还是很难着手的(因为他们的体系太复杂,对于一般人来说会有一点的难度,当想开发应用程序的时候)。JAVA的体系够复杂了。因为“跨平台=性”所以JAVA语言或者说JDK不支持产生.exe文件的相应的API(应为生成.exe文件总要和系统的硬件相关,这是JAVA语言所不用许的)。不过你也没有必要失望,你但可以使用JBuilder ......