采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
登录跳转能跳转成功,但是后台报错,看了一下网上搜的,后面加上 return ; 也不行
这个是我现在改的,跟源码是一致的,而且加了个 return ;
不行的
@RequestMapping("/login.page")
public void login(HttpServletRequest request,HttpServletResponse response) throws IOException, ServletException {
String username=request.getParameter("username");
String password=request.getParameter("password");
SysUser sysUser=sysUserService.findByKeyword(username);
String errorMsg="";
String ret=request.getParameter("ret");
if(StringUtils.isBlank(username)){
errorMsg="用户名不可以为空";
}else if (StringUtils.isBlank(password)) {
errorMsg="密码不可以为空";
}else if(sysUser==null){
errorMsg="查询不到指定的用户";
}else if(!sysUser.getPassword().equals(MD5Util.encrypt(password))){
errorMsg="用户名或密码错误";
}else if(sysUser.getStatus() !=1){
errorMsg="用户已被冻结,请联系管理员";
}else {
//login success
request.getSession().setAttribute("user", sysUser);
System.out.println("---ret1----"+ret);
if(StringUtils.isNotBlank(ret)){
response.sendRedirect(ret);
}else{
response.sendRedirect("/admin/index.page"); //TODO
}
return;
}
//返回页面数据
request.setAttribute("error", errorMsg);
request.setAttribute("username", username);
if(StringUtils.isNoneBlank(ret)){
request.setAttribute("ret", ret);
}
String path="signin.jsp";
request.getRequestDispatcher(path).forward(request, response);
}
老师这个是你的源码
package com.mmall.controller;
import com.mmall.model.SysUser;
import com.mmall.service.SysUserService;
import com.mmall.util.MD5Util;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.annotation.Resource;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@Controller
public class UserController {
@Resource
private SysUserService sysUserService;
@RequestMapping("/logout.page")
public void logout(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
request.getSession().invalidate();
String path = "signin.jsp";
response.sendRedirect(path);
}
@RequestMapping("/login.page")
public void login(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
String username = request.getParameter("username");
String password = request.getParameter("password");
SysUser sysUser = sysUserService.findByKeyword(username);
String errorMsg = "";
String ret = request.getParameter("ret");
if (StringUtils.isBlank(username)) {
errorMsg = "用户名不可以为空";
} else if (StringUtils.isBlank(password)) {
errorMsg = "密码不可以为空";
} else if (sysUser == null) {
errorMsg = "查询不到指定的用户";
} else if (!sysUser.getPassword().equals(MD5Util.encrypt(password))) {
errorMsg = "用户名或密码错误";
} else if (sysUser.getStatus() != 1) {
errorMsg = "用户已被冻结,请联系管理员";
} else {
// login success
request.getSession().setAttribute("user", sysUser);
if (StringUtils.isNotBlank(ret)) {
response.sendRedirect(ret);
} else {
response.sendRedirect("/admin/index.page"); //TODO
}
}
request.setAttribute("error", errorMsg);
request.setAttribute("username", username);
if (StringUtils.isNotBlank(ret)) {
request.setAttribute("ret", ret);
}
String path = "signin.jsp";
request.getRequestDispatcher(path).forward(request, response);
}
}
package com.mmall.controller;
import java.io.IOException;
import javax.annotation.Resource;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.mmall.model.SysUser;
import com.mmall.service.SysUserService;
import com.mmall.util.MD5Util;
@Controller
public class UserController {
@Resource
private SysUserService sysUserService;
@RequestMapping("/login.page")
public void login(HttpServletRequest request,HttpServletResponse response) throws IOException, ServletException {
String username=request.getParameter("username");
String password=request.getParameter("password");
SysUser sysUser=sysUserService.findByKeyword(username);
String errorMsg="";
String ret=request.getParameter("ret");
if(StringUtils.isBlank(username)){
errorMsg="用户名不可以为空";
}else if (StringUtils.isBlank(password)) {
errorMsg="密码不可以为空";
}else if(sysUser==null){
errorMsg="查询不到指定的用户";
}else if(!sysUser.getPassword().equals(MD5Util.encrypt(password))){
errorMsg="用户名或密码错误";
}else if(sysUser.getStatus() !=1){
errorMsg="用户已被冻结,请联系管理员";
}else {
//login success
request.getSession().setAttribute("user", sysUser);
System.out.println("---ret1----"+ret);
if(StringUtils.isNotBlank(ret)){
response.sendRedirect(ret);
}else{
response.sendRedirect("/admin/index.page"); //TODO
}
}
//返回页面数据
request.setAttribute("error", errorMsg);
request.setAttribute("username", username);
if(StringUtils.isNoneBlank(ret)){
request.setAttribute("ret", ret);
}
String path="signin.jsp";
request.getRequestDispatcher(path).forward(request, response);
return ;
}
}
登录后可查看更多问答,登录/注册