在项目开发中,有时候我们需要Servlet类返回字符串、JSON或者页面HTML内容。
1、Servlet返回字符串
示例:创建CharacterServlet类,实现Servlet类返回字符串。
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
/**
* 输出字符串Servlet类
* @author pan_junbiao
*/
@WebServlet(name="CharacterServlet",urlPatterns = "/Servlet/CharacterServlet")
public class CharacterServlet extends HttpServlet
{
@Override
public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
String result = "您好,欢迎访问 pan_junbiao的博客!";
//返回结果
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
// 获取PrintWriter对象
PrintWriter out = response.getWriter();
out.print(result);
// 释放PrintWriter对象
out.flush();
out.close();
}
}
执行结果:
2、Servlet返回JSON内容
示例:创建JsonServlet类,实现Servlet类返回JSON内容。
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
/**
* 输出JSON内容Servlet类
* @author pan_junbiao
*/
@WebServlet(name="JsonServlet",urlPatterns = "/Servlet/JsonServlet")
public class JsonServlet extends HttpServlet
{
@Override
public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
String json = "{\n" +
"\t\"userId\": 1,\n" +
"\t\"userName\": \"pan_junbiao的博客\",\n" +
"\t\"blogUrl\": \" https: //blog.csdn.net/pan_junbiao\",\n" +
"\t\"sex\": \"男\"\n" +
"}";
//返回结果
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
// 获取PrintWriter对象
PrintWriter out = response.getWriter();
out.print(json);
// 释放PrintWriter对象
out.flush();
out.close();
}
}
执行结果:
3、Servlet返回页面HTML内容
示例:创建PageServlet类,实现Servlet类返回页面HTML内容。
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
/**
* 输出页面HTML内容Servlet类
* @author pan_junbiao
*/
@WebServlet(name="PageServlet",urlPatterns = "/Servlet/PageServlet")
public class PageServlet extends HttpServlet
{
@Override
public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.println("<HTML>");
out.println("<HEAD><TITLE>Servlet 实例</TITLE></HEAD>");
out.println("<BODY>");
out.println("您好,欢迎访问 pan_junbiao的博客!");
out.println("<br/>博客地址:https://blog.csdn.net/pan_junbiao");
out.println("<br/>Servlet实例:");
out.println(this.getClass());
out.println("</BODY>");
out.println("</HTML>");
out.flush();
out.close();
}
}
执行结果: