81,122
社区成员




@RequestMapping(value = "/userLogin", method = RequestMethod.POST)
public String userLogin(@RequestParam("userName") String userName,
@RequestParam("password") String password,
HttpServletRequest request, Model model) {
System.out.println(userName);
System.out.println(password);
User user = userBasic.getUserByName(userName);
if (user != null) {
if (user.getPassword().equals(password)) {
HttpSession session = request.getSession();
session.setAttribute("userName", userName);
model.addAttribute("state", "success");
model.addAttribute("message", "登录成功!");
return "user_project";
} else {
model.addAttribute("failure", "用户名或密码错误!");
return "error";
}
} else {
model.addAttribute("state", "failure");
model.addAttribute("message", "该用户不存在!");
return "error";
}
}
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/xhtml/DTD/xhtml-transitional.dtd">
<html lang="zh-CN">
<head>
<base href="<%=basePath%>">
<title>登录系统</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<form id="form_login">
用户名:<input type="text" name="userName" id="userName"/>
密码:<input type="password" name="password" id="password"/>
<button type="button" value="登录" onclick="toLogin()">登录</button>
</form>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js" type="text/javascript"></script>
<script>
function toLogin(){
$.ajax({
url:"<%=basePath%>user/userLogin",
data:{"userName":"brianzhuang","password":"124652"},
type:"POST",
dataType:"html",
success: function(data,textstatus){
alert(textstatus);
},
error:function(jqxhr,textstatus,error){
alert(jqxhr);
alert(error);
alert(textstatus);
}
});
}
</script>
</body>
</html>
@RequestMapping(value = "/userLogin", method = RequestMethod.POST)
public @ResponseBody Map<String, Object> userLogin(@RequestParam("userName") String userName,
@RequestParam("password") String password,
HttpServletRequest request){
Map<String, Object> map = new HashMap<String, Object>();
System.out.println(userName+" "+password);
User user = userBasic.getUserByName(userName);
//System.out.println(user.getUserName());
if(user!=null){
//System.out.println(user.getPassword());
if(user.getPassword().equals(password)){
map.put("userID", user.getId());
} else {
System.out.println("wrong password");
}
}
//System.out.println(map.get("userID"));
return map;
}
<script type="text/javascript">
$(function(){
$("#btnbutton").bind("click",function(){
$.ajax({
url:"<%=basePath%>user/userLogin",
type:'post',
data:{"userName":$("#userName").val(),"password":$("#password").val()},
dataType:"json",
success: function(data,textstatus){
alert(JSON.stringify(data));
alert(textstatus);},
error:function(jqxhr,textstatus,error){
alert(textstatus);
console.log(jqxhr);}
});
});
});
</script>
我现在把controller的这个方法改成这样,前端页面url为localhost:8080/项目名/user/userLogin/,点击登录后执行了这两条语句:alert(JSON.stringify(data)); alert(textstatus);},然后url跳转到了localhost:8080/项目名/?userName=brianzhuang&password=124652。。。。我真是晕了,怎么办?
$.ajax({
url:"<%=basePath%>user/userLogin",
data:{"userName":"brianzhuang","password":"124652"},
type:"POST",
dataType:"json",
success: function(msg){
if(msg.success){
window.location = "要跳转的地址";
}
},
error:function(msg){
}
});