1.Java介绍
1.1什么是Java
1.2Java之最
2.ANT介绍
2.1获得Ant
2.2系统要求
2.3编译Ant
2.4安装Ant
2.5运行ant
3.jsp介绍
3.1JSP与jakarta
3.2运行自己的JSP文件
4.Tomcat介绍
4.1什么是Tomcat
4.2Tomcat下载
4.3Tomcat和JServ的区别
4.4什么是servlets,什么是JSPs
--------------------------------------------------------------------------------
1.Java介绍
1.1什么是Java
Java有两方面的含义:Java语言、Java平台
作为一种语言,Java是一种跨平台开发语言,能开发出跨平台的应用对象和应用程序。例如:Oracle8i的安装程序就是用Java开发的。Java语言具有以下特点:简单、面向对象、分布式、解释执行、安全、跨平台、高性能、多线程等特点。
作为一种平台,Java平台包括两部分内容:Java虚拟机和JavaAPI。
1.2Java之最
最好的集成开发工具
No1.VisualageForJava(www.ibm.com)
No2.JBuilder3(www.inprise.com)
No3.JDeveloper(www.oracle.com)
No4.VisualCafe
我推荐使用emacs
最好的应用服务器
No1.WebObjects(www.apple.com)
No2.WebSphereApplicationServerEnterpriseEditionv3.0(www.ibm.com)
No3.ApacheJServ(java.apache.org)
No4.WebLogicServer
我推荐使用tomcat(jakarta.apache.org),Enhydra(www.enhydra.org)
最好的Java类库
No1.TheJavaCollections(www.sun.com)
No2.IBMHostAccessLibraryAPIForJava(www.ibm.com)
No3.JClassEnterprise(www.klgroup.com)
No4.JGL
最好的Java中间件
No1.SybaseEnterpriseApplicationServer(www.sybase.com)
No2.WebSphereHostOn-Demandv4(www.ibm.com)
No3.ProgressSonicmq(www.sonicmq.com)
No4.Visiobroker
我推荐使用cocoom(XML.apache.org),struts(jakarta.apache.org),turbine(java.apache.org)
最好的Java组件
No1.BeaJumpstarteBusinessSmartComponents(www.bea.com)
No2.JClassEnterpriseSuite(www.klgroup.com)
No3.LingoGUI(www.slangsoft.com)
No4.Stdioj
最好的数据库产品
No1.Oracle8i(www.oracle.com)
No2.SybaseAdaptiveServerAnywhere(www.sybase.com)
No3.Cloudscape(www.informix.com)
No4.JDataStore
我推荐使用PostgreSQL
最好的Java虚拟机
No1.JavaHotSpotPerformanceEngine(java.sun.com)
No2.ChaiVM(www.hewlett-packard.com)
No3.JSCP(www.nsicom.com)
No4.JeodePlatform
最好的消息工具
No1.JavaMessageQueue(www.sun.com)
No2.SonicMQ(www.sonicmq.com)
No3.FioranoMQ(www.fiorano.com)
No4.IBus
以上排名来自JDJNov2000统计数据。
--------------------------------------------------------------------------------
2.ANT介绍
Ant是一个基于java的build工具。大家都知道,现在已经有了许多的build工具,例如make、gnumake、nmake、jam等,而且这些工具都非常优秀。那我为什么还要给大家介绍Ant这个新工具呢?因为Ant是一个跨平台的Build工具。之所以Ant能跨平台,是因为Ant不再需要你编写shell命令,Ant的配置文件是基于XML的任务树,能让你运行各种各样的任务,任务的运行是由实现了特定任务接口的对象来完成的。
2.1获得Ant
Binary版:最新的稳定版的下载地址是:http://jakarta.apache.org/builds/ant/release/v1.1/bin。
Source版:最新的源码稳定版下载地址是:http://jakarta.apache.org/builds/ant/release/v1.1/src/。假如你想获得最新的源码,地址是:http://jakarta.apache.org/from-cvs/jakarta-ant/
2.2系统要求
需要在CLASSPATH中包含与JAXP兼容的XMLparser,才能编译和使用Ant。
我给大家推荐一个XMLparser:xerces,下载地址:http://xml.apache.org/xerces
当然,JDK肯定是必需的,并且是1.1或之后版本。
2.3编译Ant
1.进入jakarta-ant目录
2.将JDK加入到你的PATH环境变量中
3.设置JAVA_HOME环境变量,指向你的JDK安装目录
4.运行bootstrap.sh角本文件
5.运行以下命令创建Ant的Binary版:
build.sh-Dant.dist.dir=<安装Ant的目录>dist
2.4安装Ant
1.设置ANT_HOME环境变量,指向你的Ant目录
2.设置JAVA_HOME环境变量,指向你的JSK目录
3.将ANT_HOME/bin加入PATH环境变量中
4.将ant.jar和xerces.jar加入到CLASSPATH环境变量中
假设Ant安装在/usr/local/ant目录,可通过以下方法进行设置:
exportANT_HOME=/usr/local/ant
exportJAVA_HOME=/usr/local/jdk-1.2.2
exportPATH=${ANT_HOME}/bin:${PATH}
exportCLASSPATH=${ANT_HOME}/lib/ant.jar:/lib/xerces.jar:${CLASSPATH}
2.5运行ant
运行Ant非常简单,假如你按照上面描述的方法安装了ant,只需在命令行键入ant就行了。
当你不带任何参数运行ant时,Ant会在当前目录找一个名叫build.xml的文件。假如找到了,就将该文件作为build配置文件。假如没找到,它会自动地查找上级目录,一直找到根目录。也可以通过命令行参数-buildfile来指定其他配置文件,其中,是你要采用的配置文件名。
--------------------------------------------------------------------------------
3.JSP介绍
JSP是JavaServerPages的简写。JSP技术能让Web开发员和网页设计员快速地开发轻易维护的动态Web主页。
用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源(例如JavaBesns)的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和轻易。
JSP技术是Servlet技术的扩展。Servlet是平台无关的,100%纯Java的Java服务端组件。
3.1JSP与jakarta
正是因为Jakarta项目组的努力,才使Servlet/JSP据有了前所未有的动力。
从Servlet2.2开始,Sun公司已放弃了对Servlet的控制,全权交由Jakarta项目组进行开发和维护。Sun公司不再提供Servlet/JSP的开发包,而是将软件下载全部链接到Jakarta站点,并全力支持Jakarta项目组的开发工作(Jakarta项目组中有部分骨干力量是Sun公司员工)。这是Sun公司的英明决策,也是开源软件的重大成果。
JSP技术是jakarta所提供的两大模板技术(JSP和Velocity)之一,这两个都是非常好的模板技术。jakarta的framework(例如struts、slide)对JSP提供了很好的支持,java.apache的framework(turbine)对Velocity提供了很好的支持。
3.2运行自己的JSP文件
有些网友不知道怎么才能运行自己的JSP文件,我在这里简单介绍一下,给大家提供一点参考:
1.下载并安装tomcat。下载地址:http://jakarta.apache.org/tomcat
2.编写自己的JSP网页和Java对象。
3.配置自己的Web应用。配置方法:
在TOMCAT_HOME/conf/server.xml文件中加入一行:
其中,TOMCAT_HOME是tomcat的主目录,appName是你的Web应用的名称。
4.将你的jsp文件、Html文件、image文件拷贝到TOMCAT_HOME/webapps/appName目录下。
5.编译你的java文件。
6.将编译好的class文件拷贝到TOMCAT_HOME/webapps/WEB-INF/classes目录下。也可将class文件打包成jar文件放到TOMCAT_HOME/webapps/WEB-INF/lib目录下。
7.ALLISOK!你可以在你的浏览器上看到你的成果了:
http://localhost:8080/appName/youjsp.jsp
其中,appName是你配的Web应用名称,youjsp.jsp是你编写的jsp文件名。
--------------------------------------------------------------------------------
4.Tomcat介绍
在我写了一些有关Struts和Framework的贴子后,有人问我什么是tomcat,什么是jakarta。我才发现我应该先写一些更基本的东西。这篇是介绍tomcat的文章,我还预备写一篇介绍jakarta的文章。
4.1什么是Tomcat
Tomcat是JavaServlet2.2和JavaServerPages1.1技术的标准实现,是基于Apache许可证下开发的自由软件。
4.2Tomcat下载
下载地址:http://jakarta.apache.org/downloads/binindex.html
4.3Tomcat和JServ的区别
JServ是由Apache开发并使用的ServletAPI2.0兼容的Servlet容器。Tomcat是完全重写的ServletAPI2.2和JSP1.1兼容的Servlet/JSP容器。Tomcat使用了JServ的一些代码,非凡是Apache服务适配器。
4.4什么是servlets,什么是JSPs
Servlet为Web开发员提供了一个简单、一致的机制,来扩展Web服务器的功能,并且和已有的业务系统交互。可以把Servlet看作在服务端运行的Applet。
JSP技术是servlet技术的扩展,对HTML和XML的页面创作提供支持。它网页设计员能非常轻易地将固定或静态的模板数据与动态内容进行组合。
--------------------------------------------------------------------------------
我把近一段时间我在论坛中所发的贴子进行了一下整理,形成这篇文档,以便大家参考,欢迎提出宝贵意见。我在写作本文原搞时采用的是sgml格式,通过SGML-Tools转成你所看到的格式。SGML-Tools是一组文本格式化工具,能将简单的sgml文档转变为格式丰富的各种文件,包括HTML、TeX、DVI、PostScript、plaintext、groff等。感谢SGML-Tools的所有开发员所作出的贡献。本文版权归中文Linux论坛所有。
--------------------------------------------------------------------------------
5.servlet/jsp/xmlFrameworks介绍
5.1Cocoon-基于XML的Web内容发布
5.2Xang-快速开发动态网页
5.3Slide-内容治理框架
5.4Struts-基于MVC设计模式的JSP
5.5Jetspeed-基于Web的组件
5.6Turbine-基于Servlet的Web应用开发
5.7各种Framework比较
6.JSPFramework-Struts介绍
6.11、什么是MVC模式。
6.22、是否所有JSP应用都该采用MVC模式?
6.33、Struts中能做XML吗,与Cocoon相比有何优点?
7.Struts的安装
7.1安装Struts需要的软件
7.2通过源码构造StrUCts
7.3通过Struts的二进制发布包安装Structs
--------------------------------------------------------------------------------
5.servlet/jsp/xmlFrameworks介绍
现在,已经有众多的基于Java的开源WebFramework,让我们能更加轻易构造Web应用。我在这里给大家作一个简单的介绍。
5.1Cocoon-基于XML的Web内容发布
Cocoon是采用100%纯Java编写的一个内容发布框架。Cocoon让你能采用W3C的最新技术(DOM、XML、XSL)来提供Web内容。
新的Cocoon模式能将文档内容、样式、处理逻辑进行完全的分离,答应这三层能独立地设计、创建和治理,从而减少了治理开销,加强了工作的重用性,减少了开发时间。
下载地址:http://xml.apache.org/cocoon
5.2Xang-快速开发动态网页
Xang能整合不同的数据源,让你能快速地开发数据驱动的、跨平台的Web应用。Xang体系结构能将数据、逻辑和表示完全划清。Xang基于开放的工业标准,例如HTTP、XML、XSL、DOM、ECMAScript(JavaScrip)。
下载地址:http://xml.apache.org/xang
5.3Slide-内容治理框架
Slide是一个内容治理和集成系统,是一个内容治理底层框架。Slide提供了一个分级的结构,能将内容存储到任意的、分布式的数据仓库。出此之外,Slide还集成了安全、锁定、内容版本和其他一些服务。
下载地址:http://jakarta.apache.org/slide
5.4Struts-基于MVC设计模式的JSP
Struts是采用JavaServlet/JavaServerPages技术,开发Web应用程序的开放源码的framework。
采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架。
Struts有如下的主要功能:
1.包含一个controllerservlet,能将用户的请求发送到相应的Action对象。
2.JSP自由tag库,并且在controllerservlet中提供关联支持,帮助开发员创建交互式表单应用。
3.提供了一系列实用对象:XML处理、通过JavareflectionAPIs自动处理JavaBeans属性、国际化的提示和消息。
下载地址:http://jakarta.apache.org/struts
5.5Jetspeed-基于Web的组件
Jetspeed是实现了EnterpriseInformationPortal的开源软件。Jetspeed能从Internet的纵多资源中提取信息,来帮助用户治理大量的数据。这些信息能来自不同的内容类型,从XML到XMTP,到iCalendar这些新协议。
下载地址:http://java.apache.org/jetspeed
5.6Turbine-基于Servlet的Web应用开发
Turbine是基于servlet的framework,使有经验的Java开发员能快速地构建web应用。
使用Turbine,可以通过创建使用特定服务来处理模板的Screen,来集成现有的模板技术(例如Velocity、Webmacro、JavaServerPages(JSP)、FreeMarker、Cocoon)。
下载地址:http://java.apache.org/turbine
5.7各种Framework比较
在这些framework中,我觉得Cocoon、Struts和Turbine比较好。这三者各有所长,Cocoon是最好的XMLFramework,Struts是最好的JSPFramework,Turbine是最好的ServletFramework。
--------------------------------------------------------------------------------
6.JSPFramework-Struts介绍
Struts是采用JavaServlet/JavaServerPages技术,开发Web应用程序的开放源码的framework。
采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架。
Struts有如下的主要功能:
1.包含一个controllerservlet,能将用户的请求发送到相应的Action对象。
2.JSP自由tag库,并且在controllerservlet中提供关联支持,帮助开发员创建交互式表单应用。
3.提供了一系列实用对象:XML处理、通过JavareflectionAPIs自动处理JavaBeans属性、国际化的提示和消息。
Struts是Jakarta项目的一部分,主页在http://jakarta.apache.org/struts.
Version0.5的下载地址:http://jakarta.apache.org/builds/jakarta-struts/release/v0.5
6.11、什么是MVC模式。
MVC(Model/View/Controller)模式是国外用得比较多的一种设计模式,好象最早是在Smaltalk中出现。MVC包括三类对象。Model是应用对象,View是它在屏幕上的表示,Controller定义用户界面对用户输入的响应方式。
6.22、是否所有JSP应用都该采用MVC模式?
不一定所有的JSP应用都该采用MVC模式。但对于大型应用来说,我认为还是该采用MVC模式。不使用MVC模式,用户界面界面设计往往将这些对象混在一起,而MVC则将它们分离以提高灵活性和复用性。
6.33、Struts中能做XML吗,与Cocoon相比有何优点?
Struts把主要精力放在JSP上了。Cocoon才是专业级的XMLFramework。
--------------------------------------------------------------------------------
7.Struts的安装
7.1安装Struts需要的软件
JavaDevelopmentKit-你需要download和install1.2(或之后)版本的JDK。下载地址:http://java.sun.com/j2se
ServletContainer-通常的选择是下载Tomcat(至少是3.1版,推荐使用3.2版)。下载地址:http://jakarta.apache.org/tomcat
AntBuildSystem-假如你通过Struts源码发布包安装,你必须下载1.1或之后版本的antbuildsystem。在你通过Struts来开发你自己的Web应用程序是,我也推荐使用ant来build你的应用。下载地址:http://jakarta.apache.org/ant
ServletAPIClasses-为了编译Structs自己,或应用程序使用Struts,你需要一个包含Servlet和JSPAPI对象的servlet.jar包。大多数Servletcontainer(例如Tomcat)已经自带了这个文件。否则,你必需下载:http://jakarta.apache.org/builds/jakarta-servletapi
XMLParser-Structs需要一个与JavaAPIforXMLParsing(JAXP)规格兼容的XML处理器。我推荐使用Xerces。下载地址:http://xml.apache.org/xerces-j
XalanXSLTProcessor-假如你通过Structs源码发布版来构造你的Structs系统,你必须下载和安装1_2_D01或之后版本的XalanXSLT处理器(Xerces中已自带Xalan)。这个处理器用于将基于XML的Structs文档转换为Html文档。
7.2通过源码构造Structs
1.下载Structs的源码发布包。
2.设置ANT_HOME环境变量,指向你的Ant目录。
3.设置JAVA_HOME环境变量,指向你的JDK目录。
4.设置SERVLETAPI_HOME环境变量,指向你的ServletAPI目录(假如你的CLASSPATH已经包含了servlet.jar,就不需要指定该目录)
5.将Structs的源码发布包进行解包。
6.进入Structs目录,运行以下命令:
./build.shdist
该命令将创建Struts的二进制发布包,目录在../dist/structs(相对于你的编译目录)。
7.3通过Struts的二进制发布包安装Structs
1.下载Struts的二进制发布版。
2.将Struts的二进制发布版进行解包。(假如你是通过Struts源码构造Struts,build的结果就已经是已解包的Struts)。解包后的Struts包含以下内容:
lib/struts.jar-这个文件包含了Struts的所有Java对象。你需要把它拷贝到你的Web应用的WEB-INF/lib目录。
lib/structs.tld-这是一个"taglibrarydescriptor"文件,它描述了Struts库的自由tag。需要将它拷贝到你的Web应用的WEB-INF目录。
webapps/struts-documentation.war-这是一个"webapplicationarchive"文件,包含了所有的Struts文档。你可以将它安装到支持ServletAPI2.2或之后版本的servletcontainer(推荐使用tomcat)中。
webapps/struts-example.war-这是一个web应用实例,它广泛地演示了Struts的许多功能。你可以将它安装到兼容Servlet2.2或之后版本以及JSP1.1或之后版本规范的servlet容器中(推荐使用tomcat)。
webapps/struts-test.war-这个web应用包含了Struts支持的许多tag的测试网页,可以作为使用Strutstag的例子。
可通过以下的步骤在你自己的应用程序中使用Struts:
1.将Struts目录的lib/struts.jar拷贝到web应用的WEB-INF/lib目录。
2.将Struts目录的lib/struts*.tld拷贝到web应用的WEB-INF目录。
3.修改Web应用目录的WEB-INF/web.xml文件,增加一个元素来定义controllerservlet,增加一个元素来建立URI请求与servlet的对应关系。可以参照Struts例子中的WEB-INF/web.xml文件来了解具体的语法要求。
4.修改Web应用目录的WEB-INF/web.xml文件,使之包含以下的tag库定义:
/WEB-INF/struts.tld
/WEB-INF/struts.tld
/WEB-INF/struts-bean.tld
/WEB-INF/struts-bean.tld
/WEB-INF/struts-logic.tld
/WEB-INF/struts-logic.tld
5.创建一个WEB-INF/action.xml文件来定义你的web应用的action映射关系。可以参照Struts例子中的action.xml文件来了解具体的语法要求。
6.在使用Strutstag库的JSP网页中加入以下tag库定义:
<@tagliburi="/WEB-INF/struts.tld"prefix="struts"%>
<@tagliburi="/WEB-INF/struts-bean.tld"prefix="bean"%>
<@tagliburi="/WEB-INF/struts-logic.tld"prefix="logic"%>
7.最后,在编译你的web应用的java程序时,不要忘了在CLASSPATH中包含struts.jar文件哟。