0
在我的項目中,我正在向servlet類請求插入,更新和刪除數據,然後處理並獲取響應。將servlet類擴展爲自定義類以獲得更多自定義響應
這一切都通過jQuery ajax發生。
現在它的反應只有成功或失敗如下
PrintWriter out = response.getWriter();
out.println("<custom message>");
現在我想使該消息更有意義
默認情況下,我會接受1個參數調用"format"
,如果格式是null
然後默認情況下,特定的servlet類將以json
格式響應,否則只有2個選項將在那裏json
和xml
。
然後我需要設置response.setContentType("application/json");
等
因此,我會做一個servlet類如下
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class myservlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws ServletException,java.io.IOException
{
String format = req.getParameter("format");
if(format == null)
{
format = "json";
}
else
{
if(format.equals("json"))
{
resp.setContentType("application/json");
}
else if(format.equals("xml"))
{
resp.setContentType("application/rss+xml");
}
else
{
//error
}
}
}
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws ServletException,java.io.IOException
{
String format = req.getParameter("format");
if(format == null)
{
format = "json";
}
else
{
if(format.equals("json"))
{
resp.setContentType("application/json");
}
else if(format.equals("xml"))
{
resp.setContentType("application/rss+xml");
}
else
{
//error
}
}
}
}
,這上面的類如下
進口java.io.延長PrintWriter的;
import javax.servlet.ServletException;
public class abc extends myservlet
{
private static final long serialVersionUID = 1L;
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws ServletException,java.io.IOException
{
PrintWriter out = resp.getWriter();
out.println("{/"id/": /"file/"}");
//response must be converted to either json or to xml
}
}
它可能.. ??
我該如何將響應轉換爲xml
或json
動態...?