在如今的Java领域,各种新技术,新工具层出不穷,一方面,每一种技术都会不停的升级换代,另一方面,还会不断涌现出新的技术和工具。Java世界就像小时候玩的万花筒,尽管实质上只是由几个普通的玻璃碎片组成,但只要轻轻一摇,就会变化出千万种缤纷的图案。Java世界如此变化多端,很容易让初学Java的人有无从下手的感觉。常常会有读者问我这样的问题:; Y7 j% K# l5 S
我学了Java已经一年多了,现在就只能用Jsp写点东西,其它的东西实在太多了,我整天学都学不完,很迷惘,不知道该如何有针对性地去学,去找到一份Java工作,现在是困死在Java里了。( t h2 [4 Z0 o8 O: @. f) e/ Y
8 z1 ^' C0 Z q8 l- y
撰写本文,目的是为了帮助读者看清Java万花筒的本质,从复杂的表象中寻找普遍的规律,只有掌握了普遍的规律,才能以不变应万变,轻轻松松的把握Java技术发展的新趋势,迅速的领略并且会熟练运用一门新的技术,而不成为被动的追随者,知其然而不知其所以然。在寻找普遍规律之前,让我们先看看Java的发展历程:8 g" w+ c. W" G1 ~
# _2 Z1 l* ^) X6 R2 s3 e(1)SUN的主流技术的发展" i+ y+ O f3 A7 {0 Y" A: {) W
( b( ?& j$ [1 w GUI界面:Java AWT API--〉Java Swing API
% X& `6 R. Y) q; Q4 q# E( [( @( W, g+ [8 @) t
JavaWeb: Servlet--〉JSP--〉JSF
' n L, [; q8 k* [) s* I. ]1 f; p9 L7 H; Q* D* [. @8 r
持久化层:JDBC--〉CMP EJB或BMP EJB或JDO
. S' ` ?+ y/ Y% G7 A4 g% S/ [ W8 I5 X: y) r& }6 J' S
分布式应用:Socket--〉RMI--〉J2EE或Java Web Service
2 I* z5 g( e3 z. U7 J% c. J0 P
, Y" e" N! ?: h(2)主要Java开源软件的种类0 @$ U' T, [. l- l4 w; f) D
. U- u5 A6 s% f# q8 J
JavaWeb容器: Tomcat、Resin
% Y% V( }$ |) t t3 r6 w
8 w4 u% m9 `$ G0 @" X j& J7 R EJB容器: JBoss' z9 r% _. o7 F. W. r6 T v+ I
4 t. `, c2 O4 v; y 框架: Java Web框架(Struts)、业务逻辑层框架(Spring)
S7 n- h/ Z: h3 V y) t1 q) T1 e' h9 r' Q# T( B' F5 e$ X
持久化层: DAO、ORM映射工具(如Hibernate、OJB)
1 i- Z3 k9 A" y7 L4 M& Y+ p8 f5 V& H: h8 K
工程管理工具:ANT、Elipse& K6 b- p) [$ i u, i' R
& X" j2 i: I8 O2 P, h 日志输出工具: Log4J; H! y: ?) o0 ^0 s1 C2 n
D- b% N9 g+ F! }4 E" u I
JavaWeb服务工具:Apache Axis
* K: G& r9 J! a2 b A" Z) g( e i7 m5 a) P. i, d S7 Z4 [ ?) u
促成Java世界如此绚丽多姿的基本动力在于以下核心思想: |