这些命令行必须要非常非常熟悉对于每个参数都要很精通才行。对于这些命令的学习JDK Documentation上有详细的文档。

这样用户“robbin”就具备了超级管理员权限。重新启动Tomcat以后你就可以使用该用户来登陆如上的两个管理工具通过Web方式进行Tomcat的配置和管理了。

Java嵌入式应用是一个方兴未艾的领域从事嵌入式开发需要从Sun下载J2ME开发包J2ME包含了嵌入式设备专用虚拟机KVM和普通的JDK中包含的JVM有所不同。另外还需要到特定的嵌入式厂商那里下载模拟器。

学习一门新的知识不可能指望只看一本或者两本书就能够完全掌握。需要有一个循序渐进的阅读过程。我推荐Oreilly出版的Java系列书籍。

在这里我只想补充一点看法很多人学习Java是从《Thinking in Java》这本书入手的但是我认为这本书是不适合初学者的。我认为正确的使用这本书的方法应该是作为辅助的读物。《Thinking in Java》并不是在完整的介绍Java的整个体系而是一种跳跃式的写作方法是一种类似tips的方法来对Java很多知识点进行了深入的分析和解释。

在掌握了Java平台基础知识和J2EE方面的知识以后更进一步的是学习如何运用OO的方法进行软件的设计那么就一定要学习“设计模式”。Sun公司出版了一本《J2EE核心模式》是每个开发Java企业平台软件的架构师必备的书籍。这本书全面的介绍了J2EE体系架构的各种设计模式是设计师的必读书籍。

每个人的学习方法是不同的一个人的方法不见得适合另一个人我只能是谈自己的学习方法。因为我学习Java是完全自学的从来没有问过别人所以学习的过程基本上完全是自己摸索出来的。我也不知道这种方法是否是比较好的方法只能给大家提供一点参考了。

第三步是学习Java的面向对象的编程语言的特性的地方。比如继承构造器抽象类接口方法的多态重载覆盖Java的异常处理机制。对于一个没有面向对象语言背景的人来说我觉得这个过程需要花很长很长时间因为学习Java之前没有C的经验只有C的经验我是大概花了一个月左右吧才彻底把这些概念都搞清楚把书上面的例子反复的揣摩修改尝试把那几章内容反复的看过来看过去看了不下5遍才彻底领悟了。不过我想如果有C经验的线c;应该一两天时间足够了。那么在这个过程中可以多看看《Thinking in Java》这本书对面向对象的讲解非常透彻。可惜的是我学习的时候并没有看到这本书所以自己花了大量的时间通过自己的尝试和揣摩来学会的。

第四步就是开始熟悉Java的类库。Java的基础类库其实就是JDK安装目录下面jre/lib/rt.jar这个包。学习基础类库就是学习rt.jar。基础类库里面的类非常非常多。据说有3000多个我没有统计过。但是真正对于我们来说最核心的只有4个分别是

<g.*;< p=””></g.*;<>

这四个包的学习每个包的学习都可以写成一本厚厚的教材而Oreilly也确实是这样做的。我觉得如果时间比较紧是不可能通过读四本书来学习。我觉得比较好的学习方法是这样的

对包整体框架的把握并不是要熟悉每个类的用法记住它有哪些属性方法。想记也记不住的。而是要知道包有哪些方面的类构成的这些类的用途是什么最核心的几个类分别是完成什么功能的。我在给人培训的时候一般是一次课讲一个包所以不可能详细的介绍每个类的用法但是我反复强调我给你们讲这些包的不是要告诉你们类的方法是怎么调用的也不要求你们记住类的方法调用而是要你们了解Java给我们提供了哪些类每个类是用在什么场合当我遇到问题的时候我知道哪个类或者哪几个类的组合可以解决我的问题Thatall当我们具体写程序的时候只要你知道该用哪个类来完成你的工作就足够了。编码的时候具体的方法调用是边写代码边查Documentation所有的东西都在Documentation里面不要求你一定记住实际你也记不住3000多个类的总共将近10万个方法调用。所以对每个包的总体框架的把握就变得极为重要。

第五步通过上面的学习如果学的比较扎实的线c;就打好了Java的基础了剩下要做的工作是扫清Documentation里面除了上面4个包之外的其他一些比较有用处的类。相信进展到这一步Java的自学能力已经被培养出来了可以到了直接学习Documentation的水平了。除了要做GUI编程之外JDK里面其他会有用处的包是这些

这些包里面真正用的比较多的类其实很少只有几个所以不需要花很多时间。

以上的学习过程如果是比较顺利的线c;进行到这一步难度又陡然提高。因为上面的知识内容都是只涉及一个方面而像EJBJMSJTA等核心的J2EE规范往往是几种Java技术的综合运用的结晶所以掌握起来难度比较大。

然后可以学习JTA主要是要理解JTA对于事务的控制的方法以及该在什么场合使用JTA。这里可以简单的举个例子我们知道一般情况可以对于一个数据库连接进行事务控制mit())做为一个原子操作但是假设我的业务需求是要把对两个不同数据库的操作做为一个原子操作你能做的到吗这时候只能用JTA了。假设操作过程是先往A数据库插一条记录然后删除B数据库另一个记录我们自己写代码是控制不了把整个操作做为一个原子操作的。用JTA的线c;由App Server来完成控制。

在学习EJB之前要学习对象序列化和RMIRMI是EJB的基础。接着学习JMS和EJB对于EJB来说最关键是要理解EJB是如何通过RMI来实现对远端对象的调用的以及在什么情况下要用到EJB。

在学习完EJBJMS这些东西之后你可能会意识到要急不可待学习两个领域的知识一个是UML另一个是Design Pattern。Java企业软件的设计非常重视框架(Framework)的设计一个好的软件框架是软件开发成功的必要条件。在这个时候应该开始把学习的重点放在设计模式和框架的学习上通过学习和实际的编程经验来掌握EJB的设计模式和J2EE的核心模式。

另外还有一个最新领域Web Services。Web Services也完全没有任何新东西它像是一种黏合剂可以把不同的服务统一起来提供一个统一的调用接口作为使用者来说我只要获得服务提供者给我的WSDL对服务的描述就够了我完全不知道服务器提供者提供的服务究竟是EJB组件还是.Net组件还是什么CORBA组件还是其他的什么实现我也不需要知道。Web Services最伟大的地方就在于通过统一的服务提供方式和调用方式实现了整个Internet服务的共享是一个非常令人激动的技术领域。Web Services好像目前还没有什么很好的书籍但是可以通过在网络上面查资料的方式来学习。

Java作为一门编程语言最好的学习方法就是写代码。当你学习一个类以后你就可以自己写个简单的例子程序来运行一下看看有什么结果然后再多调用几个类的方法看看运行结果这样非常直观的把类给学会了而且记忆非常深。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注