网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.用BSF如何在Java中嵌入Javascript.
.java编程:关于对Vector的一点理.
.Java学习:一个基础的代理服务器类.
.具有邮编区号查询功能的js+xml版.
.J2EE综合-浅析Java程序员的存储过.
.JBuliderX中光标错位及中文问题办.
.java新手入门学习指导之最佳方向.
.JAVA的文件类和I/O系统简介.
.敏捷开发的必要技巧:处理不合适.
.Java技巧:用Java实现回调例程.
.JAVA基础知识(3).
.使用 Java 平台管理 bean.
.在Java编程中如何使用线程.
.推技术聊天室的实现(上).
.搭建Linux下Java开发环境.
.杂谈:Java编程思想面向对象逻辑.
.CORBA技术及实例.
.Java中类似于C语言中Sizeof功能实.
.轻松掌握 Java 泛型 (第 2 部分).
.Java网络编程之URI、URL研究专题.

在Java开源的王国中自由翱翔

发表日期:2008-1-5


  在如今的Java领域,各种新技术,新工具层出不穷,一方面,每一种技术都会不停的升级换代,另一方面,还会不断涌现出新的技术和工具。Java世界就像小时候玩的万花筒,尽管实质上只是由几个普通的玻璃碎片组成,但只要轻轻一摇,就会变化出千万种缤纷的图案。

Java世界如此变化多端,很轻易让初学Java的人有无从下手的感觉。经常会有读者问我这样的问题:

  我学了Java已经一年多了,现在就只能用jsp写点东西,其它的东西实在太多了,我整天学都学不完,很迷惘,不知道该如何有针对性地去学,去找到一份Java工作,现在是困死在Java里了。

  撰写本文,目的是为了帮助读者看清Java万花筒的本质,从复杂的表象中寻找普遍的规律,只有把握了普遍的规律,才能以不变应万变,轻轻松松的把握Java技术发展的新趋势,迅速的领略并且会熟练运用一门新的技术,而不成为被动的追随者,知其然而不知其所以然。在寻找普遍规律之前,让我们先看看Java的发展历程:

(1)SUN的主流技术的发展

  GUI界面:Java AWT API--〉Java Swing API

  JavaWeb: Servlet--〉JSP--〉JSF

  持久化层:JDBC--〉CMP EJB或BMP EJB或JDO

  分布式应用:Socket--〉RMI--〉J2EE或Java Web Service

(2)主要Java开源软件的种类

  JavaWeb容器: Tomcat、Resin

  EJB容器: JBoss

  框架: Java Web框架(Struts)、业务逻辑层框架(Spring)

  持久化层: DAO、ORM映射工具(如Hibernate、OJB)

  工程治理工具:ANT、Elipse

  日志输出工具: Log4J

  JavaWeb服务工具:Apache Axis

  促成Java世界如此绚丽多姿的基本动力在于以下核心思想:


  接口与实现

  不同的软件系统之间通过接口来交互。软件系统只对外公开接口,封装实现细节。接口描述了软件系统具备的功能,也就是指定软件系统能够做什么,但是没有指明怎么去做。接口具有三大作用:

  (1)对于接口制订者:SUN公司通过定义接口,来制定新的软件系统的规范,例如Servlet规范、EJB规范和JDO规范,这些规范主要以接口的形式描述了软件系统必须具备的功能。通过制定规范,SUN公司指引着Java技术的发展方向,同时给接口的实现者提供了自由发挥的广阔空间。

  (2)对于接口实现者:接口实现者以特定的方式实现标准的规范。例如一些开放源代码软件,如Tomcat和Resin分别以不同的实现方式,实现了标准的Servlet规范。同一个接口答应有多种实现,使得Java领域保持着百花齐放、百家争鸣的良好势头。

  (3)对于接口调用者:接口调用者的程序具有良好的可移植性。以JavaWeb应用为例,由于Tomcat和Resin遵守同样的规范,因此用户开发的JavaWeb应用能够顺利的从Tomcat容器移植到Resin容器中。

  封装与抽象

  封装指的是在一个大系统中包含一个小系统,大系统是建立在已有小系统的基础上的更为复杂、功能更强大的系统。例如,Hibernate对JDBC API进行了封装,在Hibernate内部依靠JDBC API来操纵数据库,但是Hibernate API比JDBC API具有更强大的功能,例如JDBC API只具有连接和操纵数据库的功能,而Hibernate不仅具备这一功能,还具有对象-关系映射的功能。

  抽象是指从已经存在的具有相似功能、但不同接口的系统中抽取共性,提炼出统一的接口。例如,Hibernate Transaction API是对JDBC Transaction API和Java Transaction API(JTA)的抽象。

  继续与扩展

  继续与扩展是一对孪生兄弟,当两个类之间存在继续关系,那么必定也存在扩展关系。继续的优点在于提高代码的可重用性,子类会继续父类的所有public和protected类型的属性和方法,在子类的程序代码中,无需重复定义这些属性和方法。扩展的优点在于使软件应用具有可伸缩性,能够在已有功能的基础上扩展新的功能。

上一篇:Java中运行其它程序方法的实例详解 人气:497
下一篇:眼低手高,教初学者如何学习Hibernate 人气:511
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐