ServletContext包含在ServletConfig对象中,而ServletConfig对象由服务器在初始化Servlet对象时提供。
JSP页面的ServletContext由其内置config获得。
可直接调用getServletContext()方法获得ServletContext对象(不需要在方法前面加config对象)。
然后使用ServletContext对象的setAttribute()添加属性;getAttribute()获得属性。
以下是一个简单的网页聊天的例子:
1、添加数据——servletContext.jsp
代码:
<%@ page contentType="text/html;charset=utf-8" language="java"
import="java.sql.*,javax.servlet.*,javax.servlet.http.*" %>
<% request.setCharacterEncoding("utf-8"); %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<body>
一个简单的聊天对话
<hr>
<%
String content = (String)request.getParameter("content");
if(content==null){
out.println("你还没有说话!");
}else{
out.println("我:"+new String(content.getBytes("iso-8859-1"),"utf-8"));
getServletContext().setAttribute("a",content);
}
%>
<hr>
<form action="servletContext.jsp">
<input type=text name="content">
<input type=submit value="发送">
</form>
</body>
</html>
2、访问数据——servletContextUse.jsp
代码:
<%@ page contentType="text/html;charset=utf-8" language="java"
import="java.sql.*,javax.servlet.*,javax.servlet.http.*" %>
<% request.setCharacterEncoding("utf-8"); %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<body>
一个简单的聊天对话
<hr>
<%
String content = (String)getServletContext().getAttribute("a");
out.println("某个人:"+new String(content.getBytes("iso-8859-1"),"utf-8"));
%>
<hr>
</body>
</html>
3、展示
访问:http://localhost:8080/day23/servletContext.jsp
输入内容并提交:
重新打开另一个浏览器,访问:http://localhost:8080/day23/servletContextUse.jsp