日期:2014-05-16  浏览次数:20427 次

jsp之阶段性总结

1,web安全性!

?? 在web目录中必须存在一个"WEB-INF"文件夹,这个目录中的程序的安全性是最高的;一些基本的配置信息都会放在此目录下(在定义此目录名字时,必须要大写:WEB-INF);

2,config对象!

?? config对象是javax.servlet.ServletConfig接口的实例化对象,主要的功能就是可以获取一些初始化的配置信息;它的常用方法有:

No 方法 类型 描述
1 public String getInitParamteter(String name) 普通 取得指定名称的初始化参数内容
2 public Enumeration getInitParameterNames() 普通 取得全部的初始化参数名称

所有的初始化参数必须在web.xml里配置,如果一个jsp文件想要通过初始化参数取得一些信息,则一定要在web.xml文件中完成映射;

  <servlet>
  	<servlet-name>dbinit</servlet-name>
  	<jsp-file>/WEB-INF/init.jsp</jsp-file>
  	<init-param>
  		<param-name>driver</param-name>
  		<param-value>com.mysql.driver.Driver</param-value>
  	</init-param>
  	<init-param>
  		<param-name>url</param-name>
  		<param-value>jdbc:mysql://localhost:3306/dbTest</param-value>
  	</init-param>
  </servlet>
  
  <servlet-mapping>
  	<servlet-name>dbinit</servlet-name>
  	<url-pattern>/dbConfig</url-pattern>
  </servlet-mapping>

?在WEB-INF下建立一个init.jsp:

	<%
		String dbDriver = config.getInitParameter("driver");
		String dbUrl = config.getInitParameter("url");
	 %>
	 <h3>dbDriver:<%=dbDriver %></h3>
	 <h3>dbUrl:<%=dbUrl %></h3>

?当我们在地址栏上访问:

http://localhost:8080/jspPage/dbConfig

?就会读取相应的配置信息;

效果:

dbDriver:com.mysql.driver.Driver

dbUrl:jdbc:mysql://localhost:3306/dbTest

3,out对象!

out对象是javax.servlet.jsp.JspWriter类的实例化对象,主要功能就是完成页面的输出操作(一般很少用),out对象还提供了以下功能:

No 方法 类型 描述
1 public int getBUfferSize() 普通

返回JSP中缓冲区的大小

2 public int getRemaining() 普通 返回JSP中未使用的缓冲区大小

?

	 <%
	 	//得到全部缓冲区大小
	 	int buffer = out.getBufferSize();
	 	//得到未使用的缓冲区大小
	 	int available = out.getRemaining();
	 	//使用的缓冲区大小
	 	int use = buffer - available;
	  %>
	  
	  全部缓冲区大小:<%=buffer %><br />
	  未使用的缓冲区大小:<%=available %><br />
	  使用的缓冲区大小:<%=buffer %><br />

?输出结果:

全部缓冲区大小:8192
未使用的缓冲区大小:7855
使用的缓冲区大小:8192

?

4,pageContext对象!

pageContext对象是javax.servlet.jsp.PageContext类的实例;主要表示jsp页面的上下文,前面的博客中提到了它的一些属性操作,除了那些,还有如下的方法:

No 方法 类型 描述
1 public abstract void forward(String relativeUrlPath)throws ServletException,IOException 普通 页面跳转
2 public void include(String relativeUrlPath) throws ServletException,IOException 普通 页面包含
3 public ServletConfig getServletConfig() 普通 取得ServletConfig对象
4 public ServletContext getServletContext() 普通 取得ServletContext对象
5 public ServletRequest getRequest() 普通 取得ServletRequest对象
6 public ServletResponse getResponse() 普通 取得ServletResponse对象
7 public HttpSession getSession() 普通 取得HttpSession对象

pageContext对象包含了之前request,response,config,application,<jsp:include />等实际操作;需要注意一点:pageContext对象中的getRequest()和getResponse()两个方法返回的是ServletRequest和ServletResponse,而不是我们常用的HttpServletRequest,HttpServletResponse;

pageContex