ServletOutputStream getOutputStream() throws IOException;
PrintWriter getWriter() throws IOException;
void setCharacterEncoding(String var1);
void setContentLength(int var1);
void setContentType(String var1);
void setDateHeader(String var1, long var2);
void addDateHeader(String var1, long var2);
void setHeader(String var1, String var2);
void addHeader(String var1, String var2);
void setIntHeader(String var1, int var2);
void addIntHeader(String var1, int var2);
int SC_CONTINUE = 100;
int SC_SWITCHING_PROTOCOLS = 101;
int SC_OK = 200;
int SC_CREATED = 201;
int SC_ACCEPTED = 202;
int SC_NON_AUTHORITATIVE_INFORMATION = 203;
int SC_NO_CONTENT = 204;
int SC_RESET_CONTENT = 205;
int SC_PARTIAL_CONTENT = 206;
int SC_MULTIPLE_CHOICES = 300;
int SC_MOVED_PERMANENTLY = 301;
int SC_MOVED_TEMPORARILY = 302;
int SC_FOUND = 302;
int SC_SEE_OTHER = 303;
int SC_NOT_MODIFIED = 304;
int SC_USE_PROXY = 305;
int SC_TEMPORARY_REDIRECT = 307;
int SC_BAD_REQUEST = 400;
int SC_UNAUTHORIZED = 401;
int SC_PAYMENT_REQUIRED = 402;
int SC_FORBIDDEN = 403;
int SC_NOT_FOUND = 404;
int SC_METHOD_NOT_ALLOWED = 405;
int SC_NOT_ACCEPTABLE = 406;
int SC_PROXY_AUTHENTICATION_REQUIRED = 407;
int SC_REQUEST_TIMEOUT = 408;
int SC_CONFLICT = 409;
int SC_GONE = 410;
int SC_LENGTH_REQUIRED = 411;
int SC_PRECONDITION_FAILED = 412;
int SC_REQUEST_ENTITY_TOO_LARGE = 413;
int SC_REQUEST_URI_TOO_LONG = 414;
int SC_UNSUPPORTED_MEDIA_TYPE = 415;
int SC_REQUESTED_RANGE_NOT_SATISFIABLE = 416;
int SC_EXPECTATION_FAILED = 417;
int SC_INTERNAL_SERVER_ERROR = 500;
int SC_NOT_IMPLEMENTED = 501;
int SC_BAD_GATEWAY = 502;
int SC_SERVICE_UNAVAILABLE = 503;
int SC_GATEWAY_TIMEOUT = 504;
int SC_HTTP_VERSION_NOT_SUPPORTED = 505;
1.向浏览器输出消息
2.下载文件
项目 | Value |
---|---|
1.要获取下载文件的路径 | getRealPath() |
2.下载的文件名 | getRealPath().substring() |
3.设置想办法让浏览器能够支持下载我们需要的东西 | setHeader() |
4.获取下载文件的输入流 | new FileInputStream() |
5.创建缓冲区 | new byte[1024…] |
6.获取OutputStream对象 | getOutPutStream() |
7.将FileOutputStream流写入到缓冲区缓冲区,用OutputStream将缓冲区中的数据输出到客户端 | writer() |
验证码怎么来?
常见场景:
void sendRedirect(String var1) throws IOException;
public class HelloIndex extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html");
resp.setCharacterEncoding("utf-8");
PrintWriter printWriter = resp.getWriter();
printWriter.print("123456123
");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
<servlet>
<servlet-name>indexservlet-name>
<servlet-class>HelloIndexservlet-class>
servlet>
<servlet-mapping>
<servlet-name>indexservlet-name>
<url-pattern>/hiurl-pattern>
servlet-mapping>
public class HelloRedirect extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.sendRedirect("/04/hi");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
<servlet>
<servlet-name>helloredrectservlet-name>
<servlet-class>HelloRedirectservlet-class>
servlet>
<servlet-mapping>
<servlet-name>helloredrectservlet-name>
<url-pattern>/rdurl-pattern>
servlet-mapping>
已知,Tomcat初始化目录为:http://localhost:8080/04
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>表单title>
head>
<body>
<%--${pageContext.request.contextPath} 代表当前项目,提交的路径需要提交到项目下的页面--%>
<form action="${pageContext.request.contextPath}/rd" method="post">
<input type="text" name="username"><br>
<input type="password" name="password"><br>
<button type="submit" value="提交">提交button>
form>
body>
html>
public class HelloRedirect extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println(req.getParameter("username"));
System.out.println(req.getParameter("password"));
resp.sendRedirect("/04/hi");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
<servlet>
<servlet-name>helloredrectservlet-name>
<servlet-class>HelloRedirectservlet-class>
servlet>
<servlet-mapping>
<servlet-name>helloredrectservlet-name>
<url-pattern>/rdurl-pattern>
servlet-mapping>
public class HelloIndex extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html");
resp.setCharacterEncoding("utf-8");
PrintWriter printWriter = resp.getWriter();
printWriter.print("123456123
");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
<servlet>
<servlet-name>indexservlet-name>
<servlet-class>HelloIndexservlet-class>
servlet>
<servlet-mapping>
<servlet-name>indexservlet-name>
<url-pattern>/hiurl-pattern>
servlet-mapping>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Titletitle>
head>
<body>
<form action="${pageContext.request.contextPath}/hd" method="post">
<input type="text" name="username" >
<input type="password" name="password">
<input type="submit" name="submit">提交
<input type="checkbox" name="hobbies" value="篮球">篮球
<input type="checkbox" name="hobbies" value="rap">rap
<input type="checkbox" name="hobbies" value="跳舞">跳舞
<input type="radio" name="gender" value="男">男
<input type="radio" name="gender" value="女">女
form>
body>
html>
public class HelloDispatcher extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setCharacterEncoding("utf-8");
req.setCharacterEncoding("utf-8");
System.out.println(req.getParameter("username"));
System.out.println(req.getParameter("password"));
String hobbies = Arrays.toString(req.getParameterValues("hobbies"));
System.out.println(hobbies);
String gender = Arrays.toString(req.getParameterValues("gender"));
System.out.println(gender);
//转发不会改变url
req.getRequestDispatcher("/success.jsp").forward(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
<servlet>
<servlet-name>hellodispatcherservlet-name>
<servlet-class>HelloDispatcherservlet-class>
servlet>
<servlet-mapping>
<servlet-name>hellodispatcherservlet-name>
<url-pattern>/hdurl-pattern>
servlet-mapping>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Titletitle>
<h1>转发成功h1>
head>
<body>
body>
html>