您的位置:首页 > 编程语言 > Java开发

javaweb学习笔记-servlet02

2013-03-19 10:00 211 查看
一、ServletConfig对象

*web.xml中配置参数。用ServletConfig读取:

<servlet>
<servlet-name>ServletDemo6</servlet-name>
<servlet-class>cn.gong.servlet.ServletDemo6</servlet-class>
<!-- 配置后可以在ServletCongfig中读到 -->
<init-param>
<param-name>encoding</param-name><!-- 配置参数名 -->
<param-value>utf-8</param-value><!-- 配置参数值 -->
</init-param>
</servlet>


*servlet中获取ServletConfig

// 获取ServletConfig对象
ServletConfig config = getServletConfig();
// 获得初始化参数
String encoding = config.getInitParameter("encoding");
// 获得所有初始化参数名
Enumeration k = config.getInitParameterNames();
// 获得Servlet的名字
String servletName = config.getServletName();
// 获得ServeltContext对象
ServletContext context = config.getServletContext();


*servlet中对ServletConfig几个方法的简单调用。 在这几个方法中调用了config对象的相应方法。

getInitParameter("encoding");
getInitParameterNames();
getServletContext();
getServletName();


二、ServletContext对象

*ServletContext对象也可以获取初始化参数。web.xml中的配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <!-- 配置后可以在ServletContext中读到 -->
<context-param>
<param-name>student</param-name><!-- 配置参数名 -->
<param-value>lisi</param-value><!-- 配置参数值 -->
</context-param>

<servlet>
<servlet-name>ServletDemo6</servlet-name>
<servlet-class>cn.gong.servlet.ServletDemo6</servlet-class>
<!-- 配置后可以在ServletConfig中读到 -->
<init-param>
<param-name>encoding</param-name><!-- 配置参数名 -->
<param-value>utf-8</param-value><!-- 配置参数值 -->
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>ServletDemo6</servlet-name>
<url-pattern>/servlet/ServletDemo6</url-pattern>
</servlet-mapping>

<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>


//获取ServletContext
ServletContext servletContext = getServletContext();
servletContext.getInitParameter("url");


//请求转发
RequestDispatcher dispatcher = context.getRequestDispatcher("/1.html");
dispatcher.forward(request, response);


ServletContext context = getServletContext();
String realPath = context.getRealPath("WEB-INF/classes/a.txt");
InputStream in = context.getResourceAsStream("WEB-INF/classes/a.txt");


三、设置缓存

response.setDateHeader("expires", System.currentTimeMillis() + 24 * 60* 60 * 1000);


覆写getLastModified方法

@Override
protected long getLastModified(HttpServletRequest req) {
String realPath = getServletContext().getRealPath("1.html");
File file=new File(realPath);
long lastModified = file.lastModified();
return lastModified;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: