新浪首页 > 新浪教育 > 加拿大求职专栏 > 正文

有关JAVA Security的好文章

http://www.sina.com.cn 2004/07/08 14:40  新浪教育

  本文章已发过,但仍有很多同学发EMAIL希望再阅,因其中的技术含金量之高堪称空前,令朋友们受益非浅,恰逢本周五、周日又将有Raymond老师在新概念的-----经典名课“Core Java ”、“Ad. Java"正式第一次课,故特此再发,请大家注意保存。

  无论在工作、面试还是考证中,Security都占有很大份额,属于尖端技术,学起来具有很大难度,而Class Loading更是难点中的重点,也是Java工作者经常探讨的问题之一。
而著名的 Senior Architect---Raymond凭借深厚的IT功底、在北美大公司多年加密、解密的宝贵实践经验,在这方面的见解之深是得到公认的,感谢Raymond将此总结成文,与大家共享。

  随着JAVA就业市场的好转,越来越多的朋友在JAVA方面频繁面试,相信本文亦会有很大帮助!

  经典名篇回顾:

  Java Class Loading

  Raymond Lin

  The class loading is an essential topic of Java programming language. It is the key to design and understand good Java applications. For example, Singleton pattern may not guarantee the single instance in a JVM. A surprise?

  The class loading is also the key to understand the packaging of EJB applications and the run-time behavior of packaged EJB applications deployed on application servers, as well as the different packaging requirements on different application servers. Let's compare WebLogic v7.0 and WebSphere v5.0.

  In WebLogic v7.0, every EJB application receives its own classloader hierarchy; the parent of this hierarchy is the system classloader. The hierarchy is automatically created when an application is deployed. The application classloader in the hierarchy loads any EJB JAR files in the application. A child classloader is created for each Web application WAR file. Note that this child Web application classloader contains all classes for the Web application except for the servlet implementation classes and JSPs. Each servlet implementation class and JSP class obtains its own classloader, which is a child of the Web application classloader. This allows servlets and JSPs to be individually reloaded.

  The classloading design in WebLogic v7.0 isolates applications so that application A cannot see the classes of application B. Application classloaders can only see their parent classloader, the system classloader. This allows WebLogic Server to host multiple isolated applications within the same JVM.

  In WebLogic, there is a PreferWebInfClasses setting which subverts the standard Java classloader delegation model when it is set to true. In my opinion, this is a poor design because the same class can be loaded into both the Web application and system classloader, which in turn makes it very easy to obtain a ClassCastException. Users must be very careful not to mix instances of classes loaded from different classloaders.

  The class loading in WebSphere v5.0 is more sophisticated than in WebLogic v7.0. The overall classloader hierarchy is similar to WebLogic except that there is a WebSphere-specific extensions classloader sits in between the system classloader and application classloader. This WebSphere extensions classloader loads the WebSphere run time and J2EE classes that are required at run time from "ws.ext.dirs".

  Unlike WebLogic which does not provide much flexibility of EJB packaging due to its classloading design, WebSphere uses Classloader Isolation Policies to specify the number and function of the application classloaders, therefore to control the isolation of applications and modules. This enables different application packaging schemes to run on an application server. There are two classloader policies.

  The Application Classloader Policy specifies how an application classloader can be shared by multiple applications. When set to SINGLE, applications are not isolated. When set to MULTIPLE, applications are isolated from each other because each of them has its own application classloader.

  The WAR Classloader Policy controls the isolation of Web modules. If this policy is set to APPLICATION, then the Web module contents also are loaded by the application classloader. If the policy is set to MODULE, then each web module receives its own classloader whose parent is the application classloader.

  As a result of the classloading design, WebSphere can offer more flexible EJB packaging options, and better run-time configuration. For example, in WebLogic, you are forced to edit its script that runs WebLogic Server when you just want to share utility classes among your EJB applications.

  The class loading is one of the most important topics in Java Security course offered at New Concept.

  作者简介: Raymond, 著名保险大公司 Senior Architect。

  复旦大学计算机本科毕业,澳洲新南威尔市大学计算机硕士毕业。

  在北美十几年来,就职于IBM、Intel 等诸多大公司,专攻IT疑难杂症。

  北美资深IT指导老师,对IT 学习方面有独到见解。

  新概念电脑培训中心Core Java / Ad. Java/ Java Security 的授课老师。

  以“深厚的IT功底、博大的信息量、优美的Code”被公认为“最有深度的老师”!

  历界学生均为Raymond“博大精深”的技术赞叹不已, 均为Raymond“朴实无华”的为人所折服。

  本文章由新概念电脑培训中心供稿。欲了解北美JAVA就业方面更多详情,或想与Raymond老师进行进一步讨论,请参加1月23日(本周五)7:00pm,1月25日(本周日)6:00pm由新概念电脑培训中心举办的“Core Java ”、“Ad. Java"正式第一次课,欢迎试听!定座电话:416-482-9558。

  下面是Raymond 的三门课程的开课时间,有兴趣的朋友请注意查看。

  一、 Core Java (SUN Certified Java Programmer)

  第一次课: 1月23日(五)7:00pm

  这是JAVA入门课,亦为SCJP证书必过班,讲述JAVA基本理论语法、Code等,但由于其授课老师为名师Raymond,使得此课具有非常的深度和广度, 以全新的理念讲解Core Java, 优秀编程习惯从根本学起!

  即使是经济低迷时,Java市场一直都是就业职位最多的,而随着2003年经济好转,已有更多职位涌现出来,2004年更是如火如荼,如想现在切入J2EE行列,则应从Core Java 学起!另一方面,随着Java在各行业应用的广泛性,其他IT方向的人士,具备Java的背景也已势在必行,也应从Core Java学起!

  虽然看起来这是一门Java 入门课程或者是考SUN公司第一级证书课程,但是有很多已经在北美IT公司里有过两、三年工作经验的Java Developer 仍然会Take 这门课, 有很多已经考出证书的同学仍然会Take 这门课,不要觉得不可思议,如果您看过课程描述,您会为这门课程的深度叹为观止!如果您来听过公开课,您一定会对授课老师Raymond“博大精深”的技术赞叹不已,一定会为Raymond“朴实无华”的为人所折服。

  本期更是特价! 在考证方面将提供特殊帮助,确保考证通过100%! 班班爆满,欲报从速!

  二、Advanced Java (SUN Certified Web Component Developer证书班)

  第一次课: 1月25日(日)6:00pm (精品之最!)

  这是JAVA核心技术J2EE精通课,亦为SCJD证书必过班,讲述最全、最流行的J2EE标准,是找JAVA工作决不可错过的一门课,名师Raymond的第二门好课,Raymond在其中增加了诸多实际工作中的例子,所以深受正在找工的各大院校计算机系学生和新移民的欢迎,而对于希望快速了解J2EE的在职技术人员,亦是不二选择!

  如果评价和选择E-时代中IT核心技术基石的话,Web Component 无疑是最重要的一块!SUN公司设计的Web Component Certificate则是唯一公正衡量您对Web Component 理解的尺度,伴随着它的公正性的是各大公司对这张证书的认同和重视!目前此证已成为找Java工作最有用的证书!更是您IT经验的象征! 拥有这张证书将使您在众多的竞争中脱颖而出!一证在手,任走北美!新概念的Advanced Java 课程可以确保您最快捷的取得这张证书!

  Ad. Java 课程一直是我们新概念经久不衰的一道“名菜”,尤其是从上期开始,新概念Ad.Java班的学生可以免费Repeat 乔老师和Raymond两名老师的课,具有最大的深度和广度,更使此课成为热点!

  Raymond的Ad.Java 课----层层细化、经典Code! 拥有三张Java证书且集教学与实践经验的乔老师之Advanced Java 课在多伦多闻名遐耳,无人匹敌!通过乔老师的课,您可以得到J2EE清晰的whole Picture。最佳搭配!心动不如行动!

  本期将由Raymond主讲,很多朋友翘首以待已经很久,因为从Raymond的课程中,您将得到的不仅仅是“那块金子”,而是“点石成金的方法”,这是最为宝贵的。本期Ad.Java中,Raymond将增加更多的内容和经典Code在JSP、Servlet、EJB等最新J2EE技术方面,不可不试!

  三、Security Solution Using Java

  公开课:2月15日(日)2:00pm

  Java尖端技术,市场热门!由著名的Java Architect—Raymond主讲,本课将使您在激烈的市场竞争中做到人无我有,如虎添翼!包括:Cryptography, JCE, JAAS, JSSE, SSL, etc。本课对于Java Developer完善知识结构、通过中、高级证书考试都是不可多得的好课!最关键,执教老师是--Raymond!Raymond凭借深厚的IT功底、在Intel多年加密、解密的宝贵经验,使这门课大放异彩,含金量极高。

  新概念电脑培训中心 联系电话:416-482-9558

  Email: xingainian@rogers.com

  地址: 45 Sheppard Ave East, Suite 510 (Sheppard/Yonge 东南)

  请注意:周末有大量免费泊车位,在45号大楼楼下




评论】 【推荐】 【 】 【打印】 【关闭

    




新 闻 查 询
关键词一
关键词二


search 小灵通 儿童用品 香水
 
热 点 专 题
中法文化年精彩纷呈
2003年审计报告
聚焦航班延误补偿
惠特尼休斯顿北京个唱
欧洲杯落幕 美洲杯
全国治理超限超载行动
凤凰卫视中华小姐大赛
青少年教育 网络妈妈
违法和不良信息举报

   



文化教育意见反馈留言板电话:010-62630930-5178 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 招聘信息 | 网站律师 | SINA English | 产品答疑

Copyright © 1996 - 2004 SINA Inc. All Rights Reserved

版权所有 新浪网
北京市通信公司提供网络带宽