jsp教程.docx
- 文档编号:8509135
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:11
- 大小:23.65KB
jsp教程.docx
《jsp教程.docx》由会员分享,可在线阅读,更多相关《jsp教程.docx(11页珍藏版)》请在冰豆网上搜索。
jsp教程
2001年接触jsp,当时标签库、N层结构开发、设计模式等j2ee的思想还刚刚萌芽,每个jsp文件就是纯粹的java嵌入代码、javascript、html的混杂,以实现功能为第一要务。
2003年首次接触taglib,对apache组织上的jstl略有了解,但没有真正在项目中使用。
随着struts的流行,jstl的风头已经被盖过,但据说core这个jstl中的标签库使用的还是很多。
本次基于学习的目的,重新体验了一下自定义标签的实现过程。
做一个最简单的自定义标签 hello/>,效果是打印helloworld! 1、编写标签处理类HelloTag(实现javax.servlet.jsp.tagext.Tag类) packagecn.itcast.tag; importjava.io.IOException; importjavax.servlet.jsp.JspException; importjavax.servlet.jsp.PageContext; importjavax.servlet.jsp.tagext.Tag; publicclassHelloTagimplementsTag{ privatePageContextpageContext; privateTagtag; publicintdoEndTag()throwsJspException{ try{ pageContext.getOut().print(\"helloworld! \"); }catch(IOExceptione){ e.printStackTrace(); } returnTag.EVAL_PAGE; } publicintdoStartTag()throwsJspException{ returnTag.SKIP_BODY; } publicTaggetParent(){ returnnull; } publicvoidrelease(){ } publicvoidsetPageContext(PageContextarg0){ this.pageContext=arg0; } publicvoidsetParent(Tagarg0){ this.tag=arg0; } } 注意Tag中定义的几个常量的含义(EVAL_PAGE,SKIP_BODY等) 2、编写hellotag.tld标签定义文件 xmlversion=\"1.0\"encoding=\"UTF-8\"? > DOCTYPEtaglib PUBLIC\"-//SunMicrosystems,Inc.//DTDJSPTagLibrary1.2//EN\" \" 3、编写测试jsp文件 <%@pagecontentType=\"text/html;charset=GBK\"%> <%@pageerrorPage=\"error.jsp\"%> <%@tagliburi=\"/WEB-INF/hellotag.tld\"prefix=\"mytag\"%>
hello/> hello>haha hello> 测试结果应该是打印出两个helloworld! 标签库的优点 1、最大限度地消除jsp页面中嵌入的java代码 2、增强代码扩展性、可读性、代码复用,简化了jsp页面编写的工作量 Sun推出的JSP(JavaServerPages)是一种执行于服务器端的动态网页开发技术,它基于Java技术。 执行JSP时需要在Web服务器上架设一个编译JSP网页的引擎。 配置JSP环境可以有多种途径,但主要工作就是安装和配置Web服务器和JSP引擎。 下面就以Tomcat作为JSP引擎,配合Tomcat、Apache、IIS这三种Web服务器来讲述3种搭建JSP运行环境的方案。 一、相关软件介绍 1、J2SDK: Java2的软件开发工具,是Java应用程序的基础。 JSP是基于Java技术的,所以配置JSP环境之前必须要安装J2SDK。 2、Apache服务器: Apache组织开发的一种常用Web服务器,提供Web服务。 3、Tomcat服务器: Apache组织开发的一种JSP引擎,本身具有Web服务器的功能,可以作为独立的Web服务器来使用。 但是,在作为Web服务器方面,Tomcat处理静态HTML页面时不如Apache迅速,也没有Apache健壮,所以我们一般将Tomcat与Apache配合使用,让Apache对网站的静态页面请求提供服务,而Tomcat作为专用的JSP引擎,提供JSP解析,以得到更好的性能。 并且Tomcat本身就是Apache的一个子项目,所以Tomcat对Apache提供了强有力的支持。 对于初学者来说,Tomcat是一个很不错的选择。 4、mod_jk.dll: Apache组织Jakarta项目组开发的使Apache支持Tomcat的插件。 有了这个插件,Tomcat能够和Apache进行无缝连接。 5、tc4ntiis.zip: Apache组织Jakarta项目组开发的使IIS支持Tomcat的插件。 二、软件下载 1、j2sdkWebjx.Com 版本: j2sdk1.4.1(35.9MB) 地址: 20070108 2、Apache2 版本: Apache2.0.43(6.69MB) 地址: http: //www.apache.inetcosmos.org/dist/httpd/binaries/win32/ 3、Tomcat4 版本: 4.1.21(8.33MB) 地址: http: //jakarta.apache.org/builds/jakarta-tomcat-4.0/release/ http: //tomcat.apache.org/download-55.cgi#5.5.20 4、mod_jk.dll: (136KB) 地址: http: //jakarta.apache.org/builds/jakarta-tomcat-connectors/jk/release/ 5、tc4ntiis.zip(220KB) 地址: .au/~lampante/howto/tomcat/iisnt/tc4ntiis.zip 以上均为免费软件。 三、配置前的准备 (一)准备一个测试用的JSP网页 打开文本编辑器,比如记事本,输入下列代码,并保存为test.jsp(注意扩展名为.jsp)。 以下为引用的内容: <HTML> <HEAD> <TITLE>JSP测试页面</TITLE> </HEAD> <BODY> <%out.println("<h1>HelloWorld! </h1>");%> </BODY> </HTML> (二)安装J2SDK 不管哪种方案,在安装和配置JSP引擎之前必须先完成J2SDK的安装。 1、安装J2SDK 在Windows下,直接运行下载的j2sdk-1_4_1_01-windows-i586.exe文件,根据安装向导安装到一个目录,例如安装到f: \j2sdk1.4.1; 2、添加环境变量 (1)如果你的操作系统是Win98,可以用记事本直接编辑Autoexec.bat,添加下面命令行: 以下为引用的内容: PATH=%PATH%;f: \j2sdk1.4.1\bin SETJAVA_HOME=f: \j2sdk1.4.1 SETCLASSPATH=f: \j2sdk1.4.1\lib\tools.jar 保存后,重新启动计算机,这样所添加的环境变量才会有效。 (2)如果你的操作系统是Win2000,那么右击“我的电脑”,在弹出菜单中选择"属性"→"系统特性"→"高级"→"环境变量",弹出环境变量对话框,就可以编辑系统的环境变量了。 添加PATH、JAVA_HOME和CLASSPATH三个变量,变量值同上。 四、JSP环境的配置方案 (一)方案一: J2SDK+Tomcat 在这种方案里Tomcat既作为JSP引擎又作为Web服务器,配置比较简单。 1、安装Tomcat 直接运行下载的jakarta-tomcat-4.0.1.exe,按照一般的Windows程序安装步骤即可安装好Tomcat,安装时它会自动寻找J2SDK的位置。 例如安装到f: \tomcat4。 2、配置Tomcat的环境变量 添加一个新的环境变量TOMCAT_HOME,变量值为f: \tomcat4,添加方法同J2SDK环境变量的配置方法。 3、测试默认服务 设置完毕后就可以运行Tomcat服务器了。 用f: \tomcat4\bin\startup.exe启动Tomcat,用f: \tomcat4\bin\shutdown.exe关闭。 (如果在执行startup.exe或shutdown.exe的时候提示OutofEnvironmentSpace错误,选择DOS窗口的菜单中的"属性"→"内存"→"常规内存",把"初始环境"由"自动"修改成"2816"就可以了。 ) 启动Tomcat后,打开浏览器,在地址栏中输入http: //localhost: 8080(Tomcat默认端口为8080),如果在浏览器中看到Tomcat的欢迎界面,表示Tomcat工作正常。 4、测试项目 把刚才准备好的test.jsp放在f: \Tomcat\webapps\examples\jsp目录下,在地址栏中输入http: //localhost: 8080/examples/jsp/test.jsp,如果浏览器中显示"HelloWorld! ",则说明你的JSP环境配置成功了! 由于Tomcat本身具有web服务器的功能,因此我们不必安装Apache,当然它也可以与Apache集成到一起,下面介绍。 (二)方案二: J2SDK+Apache+Tomcat 虽然Tomcat也可以作Web服务器,但其处理静态HTML的速度比不上Apache,且其作为Web服务器的功能远不如Apache,因此把Apache和Tomcat集成起来,用Apache充当Web服务器,而Tomcat作为专用的JSP引擎。 这种方案的配置比较复杂,但是能让Apache和Tomcat完美整合,实现强大的功能。 注意,因为IISWeb服务器默认使用80端口,而Apache的默认端口也是80,所以如果你使用的是Win2000操作系统,而且预装了IIS,为方便请在进行以下操作之前先将IIS服务停掉。 1、安装Apache 运行下载的apache_2.0.43-win32-x86-no_ssl.exe,按照向导安装到f: \Apache2。 (注意,Apache2.0.43安装成功后,必须将f: \Apache2\htdocs目录下的index.html.en改名为index.html,这样在测试默认服务时才会正常显示Apache的欢迎界面)。 2、测试Apache默认服务 安装完后,Apache服务器就已经自动运行了。 打开浏览器,在地址栏中输入: http: //localhost(Tomcat默认端口为80),如果在浏览器中看到Apache的欢迎界面,说明Apache工作正常。 3、按照方案一的步骤安装Tomcat,并保证它正常运行。 4、将下载的mod_jk-2.0.42.dll复制到f: \Apache2\modules目录下。 5、建立mod_jk模块工作所需要的工作文件。 打开文本编辑器,输入下列语句: 以下为引用的内容: workers.tomcat_home=f: \tomcat4(让mod_jk模块知道Tomcat) workers.java_home=f: \j2sdk1.4.1(让mod_jk模块知道JSDK) ps=\ worker.list=ajp13(mod_jk的模块版本) worker.ajp13.port=8009(mod_jk的工作端口) worker.ajp13.host=localhost worker.ajp13.type=ajp13 worker.ajp13.lbfactor=1 把上面的语句以workers.properties为文件名保存在f: \Tomcat4\conf目录下(注意: 文件的扩展名是.properties)。 6、配置Apache。 用文本编辑器打开f: \Apache2\conf\httpd.conf 1)找到"DirectoryIndex",在index.html.var后面再添加index.jsp; 2)在httpd.conf的最后加入下面这段代码(括号里为解释)Webjx.Com 以下为引用的内容: LoadModulejk_modulemodules/mod_jk-2.0.42.dll (装载mod_jk模块,用于处理Apache和Tomcat的连接) JkWorkersFile"f: /tomcat4/conf/workers.properties" (指出mod_jk模块工作所需要的工作文件workers.properties的位置) JkMount/servlet/*ajp13 JkMount/*.jspajp13 (将所有servlet和jsp请求通过Ajp13的协议送给Tomcat,让Tomcat来处理) 3)添加完毕后保存。 7、配置Tomcat 用文本编辑器打开f: \Tomcat4\conf\server.xml。 因为Tomcat4默认不启用Ajp13,所以查找到如下这段代码: 以下为引用的内容: <! -- <ConnectorclassName="org.apache.ajp.tomcat4.Ajp13Connector" port="8009"minProcessors="5"maxProcessors="75"acceptCount="10"debug="0"/> --> 把注释符号<! ---->删掉就可以启用Ajp13了。 然后保存,现在Tomcat和Apache的整合配置基本完成了。 8、整体测试 把test.jsp放在f: \Tomcat\webapps\examples\jsp目录下,依次启动Apache2,Tomcat4。 打开浏览器,在地址栏里输入http: //localhost: 8080/examples/jsp/test.jsp,如果浏览器中出现"HelloWorld! ",则Tomcat重新配置后工作正常;在地址栏中输入http: //localhost/examples/jsp/test.jsp,若与http: //localhost: 8080/examples/jsp/test.jsp的结果相同,那就表明Apache和Tomcat整合成功了! (三)方案三: J2SDK+IIS+TomcatWebjx.Com Windows平台下最常用的Web服务器无疑是IIS,正常情况下IIS不支持JSP,我们可以通过使用一个IIS到Tomcat重定向插件,使IIS能够将所有的JSP请求发送到Tomcat执行,可以使IIS增加处理JSP的功能。 如果你已经习惯了使用IIS,那么可以尝试这种配置。 (如果您已经安装过Apache服务器,为了便于后面的操作请先卸载Apache。 ) 1、按照方案一的步骤安装Tomcat,并保证它正常运行。 (例如安装到f: \tomcat4);Webjx.Com 2、将下载的tc4ntiis.zip直接解压缩到f: \tomcat4目录下。 查看配置所需要的文件,确保它们在以下位置: f: \tomcat4\server\lib\ajp.jar f: \tomcat4\server\lib\tomcat-util.jarf: \tomcat4\bin\native\isapi_redirect.dllf: \tomcat4\conf\ntiis\workers.propertiesf: \tomcat4\conf\ntiis\uriworkermap.propertiesf: \tomcat4\conf\ntiis\iis_redirect.reg f: \tomcat4\log\iis_redirect.logWebjx.Com 3、用文本编辑器打开f: \tomcat4\conf\ntiis\workers.properties,修改下列值为: workers.tomcat_home=f: \tomcat4 workers.java_home=f: \j2sdk1.4.1 4、双击f: \tomcat4\conf\ntiis\iis_redirect.reg,将此注册文件内的信息添加到注册表中,但是要修改log_file、worker_file、worker_mount_file这三个键的键值,以适合你的环境(比如本文中的Tomcat就安装在f: \tomcat4,而不是默认的c: \tomcat4)。 添加并修改完毕后如下图。 5、打开Internet服务管理器,在默认站点上添加一个新的虚拟目录,名称为jakarta,这个虚拟目录指向f: \tomcat4\bin\native,并启动该默认站点。 6、在Internet服务管理器中用鼠标右键单击服务器名,选择"属性"→主属性中"WWW服务"的"编辑"→"ISAPI筛选器"选项卡,添加一个ISAPI筛选器,名字为JakartaRedirect,可执行文件指定为f: \Tomcat4\bin\native\isapi_redirector.dll。 在添加ISAPI过滤器后,JakartaRedirect的状态是一个红色的向下的箭头,重新启动IIS服务,就会变成绿色的箭头。 7、编辑server.xml文件并保存(同方案二的第7步)。 8、重新启动IIS和Tomcat。 9、测试项目: 把test.jsp放在f: \Tomcat\webapps\examples\jsp目录下。 打开浏览器,在地址栏里输入http: //localhost: 8080/examples/jsp/test.jsp,如果浏览器中出现"HelloWorld! ",则Tomcat重新配置后工作正常;在地址栏中输入http: //localhost/examples/jsp/test.jsp,若与http: //localhost: 8080/examples/jsp/test.jsp的结果相同,那就表明IIS和Tomcat整合成功了! 五、结束语 搭建JSP的运行环境是学习JSP技术的基础,JSP引擎种类很多,配置方法也很多,而且软件的版本也在不断的升级,大家可以根据自己的需要和实际情况选择合适的配置方法。 希望本文给出的几种JSP环境配置方案,对想学习JSP的人有所帮助。 说起来,Cookie应该是一种应用较久的技术了。 早在HTML刚刚出现的时候,在每个独立的页面之间没有办法记录和标识不同的用户。 后来人们就发明了Cookie技术,当用户访问网页时,它能够在访问者的机器上创立一个文件,我们把它叫作Cookie,写一段内容进去,来标识不同的用户。 如果下次用户再访问这个网页的时候,它又能够读出这个文件里面的内容,这样网页就知道上次这个用户已经访问过该网页了。 虽然现在网页的制作技术比起几年以前已经发展了许多。 不过有些时候,Cookie还是能够帮我们很多忙的。 接下来,我们就来看看,如何在写JSP文件的时候,用JSP操作Cookie. 写入Cookie 其实用JSP操作Cookie是非常简单的,我们来看下面一段JSP程序:
<%
StringcookieName="Sender";
Cookiecookie=newCookie(cookieName,"Test_Content");
cookie.setMaxAge(10);
response.addCookie(cookie);
%>
……(其他内容)
这样我们就设置了一个Cookie,很简单吧?
我们来仔细研究一下这段代码:
Cookiecookie=newCookie(cookieName,"Test_Content");
这一行建立了一个Cookie对象,初始化有两个参数,第一个参数cookieName定义了Cookie的名字,后一个参数,也是一个字符串,定义了Cookie的内容。
也就是我们希望网页在用户的机器上标识的文件内容。
接下来一行:
cookie.setMaxAge(10),调用了Cookie中的setMaxAge方法,设定Cookie在用户机器硬盘上的存活期为10秒。
一个Cookie在用户的硬盘里面存在的时间并不是无限期的,在建立Cookie对象的时候,我们必须制定Cookie的存活期,超过了这个存活期后,Cookie文件就不再起作用,会被用户
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- jsp 教程