传智博客---JavaWEB之HttpServlet
怎样来写一个标准的Servlet:
package com.zhou.loginServletDemo;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
publicclass LoginServlet2 extends HttpServlet{
privatestaticfinallongserialVersionUID = 1L;//因为序列化了,我们加一个序列化ID就没有警告了;
//我可以去覆盖父类的doPost方法:
@Override
publicvoid doPost(HttpServletRequest request, HttpServletResponseresponse)
throws ServletException, IOException {
/**
* 注意看,这个时候的request和response是不是Http类型的啊?
* 于是
*/
//我想获取请求方式是GET还是POST;
/**
* 因为是GET请求还是POST请求,这个是Http协议所特有的:所以,我要先将这个ServletRequest对象
* 转为HttpServletRequest,这个时候可以不用强转了:
*/
String method = request.getMethod();
System.out.println(method);
//1.获取请求参数:username,password;
String userName = request.getParameter("username");
String password = request.getParameter("password");
//2.获取当前WEB应用的初始化参数:user、password;
/**
* 需要使用ServletContext对象,从init方法中可以获取ServletContext对象,
* 需要写个成员变量:ServletConfig;当然把ServletContext作为成员变量也可
* 以,或者把user和password作为成员变量也可以,user跟password目前是只读的,
* 你不能去改它,所以说没有线程安全的问题,也就是说你在成员变量里写user和password,
* 然后在init方法中跟user和password赋值也是可以的;
*/
//获取ServletContext对象;
// ServletContext servletContext =getServletContext();
//然后再来获取初始化参数:
String initUser = getServletContext().getInitParameter("user");
String initPassword = getServletContext().getInitParameter("password");
//为了打印响应信息:
PrintWriter out = response.getWriter();
//3.比对,并打印响应字符串;
if(initUser.equals(userName) &&initPassword.equals(password)){
out.print("HELLO:" + userName);
}else{
out.print("Sorry:" + userName);
}
}
}
本文出自 “IT技术JAVA” 博客,转载请与作者联系!
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。