版權聲明:本文為博主原創文章,未經博主允許不得轉載。                    https://blog.csdn.net/guoquanyou/article/details/62421318
package com.jcuckoo.util;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import javax.servlet.http.HttpServletRequest;
import net.sf.json.JSONObject;
public class JsonReader {
	public static JSONObject receivePost(HttpServletRequest request) throws IOException, UnsupportedEncodingException {
		// 讀取請求內容
		BufferedReader br = new BufferedReader(new InputStreamReader(request.getInputStream(),"utf-8"));
		String line = null;
		StringBuilder sb = new StringBuilder();
		while ((line = br.readLine()) != null) {
			sb.append(line);
		}
		//將json字符串轉換為json對像
		JSONObject json=JSONObject.fromObject(sb.toString());
		return json;
	}
}
package com.jcuckoo.servlet;
import java.io.IOException;
import java.io.Writer;
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 com.jcuckoo.pojos.User;
import com.jcuckoo.service.UserService;
import com.jcuckoo.util.JsonReader;
import net.sf.json.JSONObject;
@WebServlet("/LoginUserServlet")
public class LoginUserServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	public LoginUserServlet() {
		super();
	}
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doPost(request, response);
	}
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// response.setContentType("text/html");
		// 設置字符編碼為UTF-8, 這樣支持漢字顯示
		// response.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=utf-8");
		/** 設置響應頭允許ajax跨域訪問 **/
		response.setHeader("Access-Control-Allow-Origin", "*");
		/* 星號表示所有的異域請求都可以接受, */
		response.setHeader("Access-Control-Allow-Methods", "GET,POST");
		Writer out = response.getWriter();
		JSONObject json=JsonReader.receivePost(request);
		System.out.println(json);
		UserService userService=new UserService();
		//將建json對像轉換為java對像
		User loginUser = (User)JSONObject.toBean(json,User.class);
		User user = userService.LoginUser(loginUser);
		JSONObject jsonObject=new JSONObject() ;
		if(user!=null){
			//將java對像轉換為json對像
			jsonObject.put("user", JSONObject.fromObject(user));
			jsonObject.put("message", "用戶登錄成功!");
		}else{
			jsonObject.put("message", "用戶登錄失敗!");
		}
		out.write(jsonObject.toString());
		out.flush();
	}
}
%>
<!DOCTYPE html >
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Servlet-jCuckoo</title>
<script type="text/javascript" src="js/jquery-3.1.1.min.js"></script>
</head>
<body>
	<form >
		用戶名:<input type="text" /><br/>
		密碼:<input type="password" /><br/>
		<input type="button" value="登錄" >
	</form>
	<div ></div>
	<script>
	$('#sender').click(function(){
		var userName=document.getElementById('userName').value;
		var userPwd=document.getElementById('userPwd').value;
		var user={userName:userName,userPwd:userPwd};
		var url="LoginUserServlet";
		$.post(url, JSON.stringify(user), function(data) {
			  console.log(data);
             $("#messageDiv").html(data);
             var json=JSON.parse(data);
             alert(json.message);
         });
		 /* $.ajax({
			type:'post',
			url:url,
			dataType:"json",
			data:JSON.stringify(user),
			success: function (data) {
				var user=data.user;
				 $("#messageDiv").html(JSON.stringify(user));
	             alert(data.message);
	        },
	        error: function (data) {
	             alert(data.message);
	             $("#messageDiv").html("");
	        }
		});  */
	});
	</script>
</body>
</html>
			