context.setAttribute("user", "admin");
String user = context.getAttribute("user");
ServletContext域对象的作用范围:整个web应用(所有的web资源都可以随意向 servletcontext域中存取数据,数据可以共享)
(3)获取web应用内配置文件的绝对路径
String path1 = context.getRealPath("123.txt");
String path2 = context.getRealPath("456.txt");
String path3 = context.getRealPath("789.txt");
不论该文件在web应用内的那个文件夹下,都能被获取到,可用于获取配置文件。
3.response响应
服务器接收到一个请求时,会生成一个响应对象,即response,我们可以通过response来实现不同的操作。
(1)响应html代码
public class LoginServlet extends HttpServlet{
@Override
protected void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException,ServletException {
String user = request.getParameter("user");
String pwd = request.getParameter("pwd");
String result = null;
if(user.equals("admin")&pwd.equals("123456"))
result= "<h3 style='color:green'>登录成功</h3>";
else
result="<h3 style='color:red'>账户或密码错误</h3>";
response.getWriter().println(result);
}
}
(2)设置响应头
public class ResponseServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.addHeader("Adam", "wink");
response.addIntHeader("GOD", 123);
response.addDateHeader("when", 19820052566222L);
String html = "www.baidu.com";
response.setStatus(302);
response.setHeader("Location", html);//实现页面302跳转
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/html;charset=UTF-8");
response.getWriter().print("<h2>页面将在5s后跳转至百度!</h2>");
response.setHeader("refresh", "5;url=http://www.baidu.com");//定时自动跳转
}
(3)页面跳转:
客户端跳转:
两次请求,第一次为请求servlet的虚拟路径,第二次为请求html页面
两次响应,第一次为302,页面跳转,第二次为200,跳转页面加载
String html = "www.baidu.com";
response.setStatus(302);
response.setHeader("Location", html);//实现页面302跳转
服务端跳转:
一次请求,请求servlet,页面是在服务器内部打开
一次响应,200,跳转页面打开
服务端响应不会改变当前的url
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String name = request.getParameter("name");
String password = request.getParameter("password");
if ("admin".equals(name) && "123".equals(password)) {
request.getRequestDispatcher("success.html").forward(request, response);
}
}
}
长按二维码向我转账
受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。
阅读
好看
已推荐到看一看
你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
取消
分享想法到看一看
确定
最多200字,当前共字
微信扫一扫
关注该公众号