传智播客 2010 1 6 九、JSP(1)_JSP技术
JSP(Java Server Pages)是一种动态web资源的开发技术,servlet技术能完成的所有功能,使用JSP技术同样也可以完成。但在长期的软件实践中,根据servlet技术和JSP技术各自的特点,人们逐渐把servlet作为web应用中的控制器组件来使用,而把JSP技术作为数据显示模板来使用。
一、JSP运行原理
WEB容器(Servlet引擎)接收到以.jsp为扩展名的URL的访问请求时,它将把该访问
请求交给JSP引擎去处理。Tomcat中的JSP引擎就是一个Servlet程序,它负责解释和执行JSP页面。
每个JSP 页面在第一次被访问时,JSP引擎将它翻译成一个Servlet源程序,接着再把
这个Servlet源程序编译成Servlet的class类文件,然后再由WEB容器(Servlet引擎)像调用普通Servlet程序一样的方式来装载和解释执行这个由JSP页面翻译成的Servlet程序。
二、JSP隐式对象
为简化JSP页面java代码的编写,JSP技术定义了9个内置对象,开发人员通过这9个
内置对象,可以快速获得对web开发中一些常用对象的引用,通过查看WEB容器(Tomcat)work目录下生成的相应的Servlet的代码可以很容易的发现这些内置对象的定义。
1、Out
(1)定义:public abstract class JspWriter extends java.io.Writer
JspWriter相当于一种带缓存功能的PrintWriter,设置JSP页面的page指令的buffer属性可以调整它的缓存大小,甚至关闭它的缓存。
(2)常用方法:
返回值
方法的签名
abstract void
print(java.lang.String s) 打印一个字符串
int
getBufferSize() 返回缓冲区的大小
2、PageContext
(1)定义:public abstract class PageContext extends JspContext
pageContext对象封装了当前JSP页面的运行信息,它提供了返回JSP页面的其他隐式对象的方法。
(2)常用方法:
返回值
方法的签名
abstract java.lang.Exception
getException() 返回exception隐式对象
abstract java.lang.Object
getPage() 返回page隐式对象
abstract javax.servlet.ServletRequest
getRequest() 返回request隐式对象
abstract javax.servlet.ServletResponse
getResponse() 返回response隐式对象
abstract javax.servlet.ServletConfig
getServletConfig() 返回config隐式对象
abstract javax.servlet.ServletContext
getServletContext() 返回application隐式对象
abstract javax.servlet.http
相关文档:
<SCRIPT LANGUAGE="JavaScript">
var tt = "";
var flag = false;
var radios = document.getElementsByName("t1");//从jsp中取radio的id或radio的name
for(var i=0;i<radios.length;i++){
//如果当前有选中
  ......
系统环境:Linux 5.0 AS 64位
步骤:
1、下载apache-tomcat-5.5.23.tar和jdk-1_5_0_12-linux-i586.bin并存放在/usr/local文件夹下;
2、安装jdk
[root@localhost local]#chmod 775 jdk-1_5_0_12-linux-i586.bin '非必须,要是直接运行时提示权限不够时改变权限;
[root@localhost local]#./jd ......
Servlet三个要素:
1.必须继承自HttpServlet
2.必须实现doGet()或者doPost()
3.必须在web.xml中配置Servlet
<servlet>
<servlet-name> </servlet-name>
<servlet-class> </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> </servlet-nam ......
Servlet:
当然,在servlet中,一般跳转都发生在doGet, doPost等方法里面。
一、原理
1) redirect 方式
response.sendRedirect("/a.jsp");
页面的路径是相对路径。sendRedirect可以将页面跳转到任何页面,不一定局限于本web应用中,如:
response.sendRedirect("http://www.ycul ......