<!-- 配置Servlet -->
<servlet>
<servlet-name>helloServlet</servlet-name>
<servlet-class>zzuli.javaweb.HelloServlet</servlet-class>
<!-- 初始化参数 只是这个servlet使用-->
<init-param>
<param-name>user</param-name>
<param-value>m</param-value>
</init-param>
<init-param>
<param-name>password</param-name>
<param-value>m</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- 映射 -->
<servlet-mapping>
<servlet-name>helloServlet</servlet-name>
<url-pattern>/hello1</url-pattern>
</servlet-mapping>
getInitParameter(String names)
ServletContext
get post
ServletRequest
ServletResponse
@Override
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
System.out.println("LoginServlet请求来了...");
System.out.println(request);
/*
String user = request.getParameter("user");
String password = request.getParameter("password");
System.out.println("user " + user + " password "+ password);
String interesting = request.getParameter("interesting");
System.out.println(interesting);
String[] interestings = request.getParameterValues("interesting");
for (String string : interestings) {
System.out.println("-->" + string);
}
*/
System.out.println("-----getParameterNames------");
Enumeration<String> names = request.getParameterNames();
while(names.hasMoreElements()) {
String name = names.nextElement();
String value = request.getParameter(name);
System.out.println("name " + name + " value " + value);
}
System.out.println("-----getParameterMap-----");
Map<String, String[]> map = request.getParameterMap();
for (Map.Entry<String, String[]> entry: map.entrySet()) {
System.out.println(entry.getKey() + ":" + Arrays.asList(entry.getValue()));
}
}
LoginServlet请求来了...
org.apache.catalina.connector.RequestFacade@322e28f9
-----getParameterNames------
name user value audi
name password value 123456
name interesting value reading
//只能得到一个reading game没得到,因为String value = request.getParameter(name);
-----getParameterMap-----
user:[audi]
password:[123456]
interesting:[reading, swimming, game, part]
HttpServletRequest接口有各种获取的方法
HttpServletRequest httpServletRequest = (HttpServletRequest) request;
String requestURI = httpServletRequest.getRequestURI();
System.out.println(requestURI);
还有和Attribute相关的几个方法
user=sadsdf&password=sdfsd&interesting=game&interesting=part&interesting=sport
/loginServlet
ServletResponse
response.setContentType("application/msword");
PrintWriter out = response.getWriter();
out.println("helloworld---");
将下载一个word文档内容为helloword---
public abstract class MyGenericServlet implements Servlet, ServletConfig{
//Servlet的方法
private ServletConfig servletConfig;
@Override
public void destroy() {}
@Override
public ServletConfig getServletConfig() {
return servletConfig;
}
@Override
public String getServletInfo() {
return null;
}
@Override
public void init(ServletConfig arg0) throws ServletException {
this.servletConfig = arg0;
init();
}
public void init()throws ServletException {}
@Override
public abstract void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException ;
//ServletConfig的方法
@Override
public String getInitParameter(String arg0) {
return servletConfig.getInitParameter(arg0);
}
@Override
public Enumeration<String> getInitParameterNames() {
return servletConfig.getInitParameterNames();
}
@Override
public ServletContext getServletContext() {
return servletConfig.getServletContext();
}
@Override
public String getServletName() {
return servletConfig.getServletName();
}
}
@Override
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
HttpServletRequest request;
HttpServletResponse response;
try {
request = (HttpServletRequest) arg0;
response = (HttpServletResponse) arg1;
} catch (ClassCastException e) {
throw new ServletException("non-Http request or response");
}
service(request, response);
}
public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 1.获取请求方式
String method = request.getMethod();
// 2.根据请求方式调用对应的处理方法
if ("GET".equalsIgnoreCase(method)) {
doGet(request, response);
} else if ("POST".equalsIgnoreCase(method)) {
doPost(request, response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}