【SpringMvc】JSP+MyBatis 用户登陆后更改导航栏信息

  1. JSP视图
    【SpringMvc】JSP+MyBatis 用户登陆后更改导航栏信息_第1张图片
  2. JSP视图 部分代码
    我使用的是模态框界面(这个需要插件,菜鸟教程有),当然也可以单独写一个登陆注册html界面。
    重要的是表单提交
      
            
  1. 登陆模态框视图
    【SpringMvc】JSP+MyBatis 用户登陆后更改导航栏信息_第2张图片
  2. 控制器类
    我使用了一个index控制器设定一开始弹的页面(主页面)
    然后还有一个登陆控制器
index的控制器类

@Controller
public class IndexController {
    //设置系统主页
    @RequestMapping(value = {"/", "/dkdshudu_main", "dkdshudu","shudu_main"})
    public String index() {
        return "shudu_main";
    }
}
login控制器类

@Controller
public class LoginController {
    @Autowired
    CUserService cuserService;
    //注销
    @RequestMapping(value = {"/logout"}, method = RequestMethod.GET)
    public String logout(HttpSession session) {
        session.invalidate();
        return "redirect:shudu_main";
    }
    //身份验证
    @RequestMapping(value = "/login", method = RequestMethod.POST)
    public String login(@RequestParam("username") String username,
                        @RequestParam("password") String password,
                        HttpServletRequest request,
                        HttpSession session
    ) {
        CUSER cuser  = cuserService.authenticate(username, password);
        if (cuser==null){
          //如果失败,就返回原来都界面
            return "shudu_main";
        }else {
            request.changeSessionId();
            session.setAttribute("username", username);
            //后期可以添加上个人主页url等信息
            return "redirect:shudu_main";
        }
    }
}
  1. 实体类CUSER
    【SpringMvc】JSP+MyBatis 用户登陆后更改导航栏信息_第3张图片
    6.mybatis部分
	 CUserdao.java  
	 **接口类,封装对User对象CRUD操作**
	 
	 public interface CUserDao {
    //校验是否存在该用户,不存在则返回null,存在则返回用户
    //使用@Param来传递参数,传入参数为username和password
    public CUSER findByNameAndPwd(@Param("username") String username,
                                 @Param("password") String password);
    }
	CUserservice.java  
	**Dao类,封装对user对象CRUD操作**
	
	@Service
	public class CUserService {
	
	   //校验是否存在该用户,不存在则返回null,存在则返回用户
	    //使用@Param来传递参数,传入参数为username和password
	    public CUSER authenticate(String username, String password) {
	        return cuserDao.findByNameAndPwd(username, password);
	    }
	}
	CUserDao.xml
	****
	
		 
	 
	    

7.数据库 (数据库名称,表名不要用中文)
【SpringMvc】JSP+MyBatis 用户登陆后更改导航栏信息_第4张图片

验证成功后 session设置属性,替换原来掉注册登录选项
【SpringMvc】JSP+MyBatis 用户登陆后更改导航栏信息_第5张图片
导航栏重要html
替换需要使用el表达式

      
        

在这里插入图片描述
再次刷新可以观察url ,第一次返回界面login控制器类是重定向,第二次是index控制器类的转发

你可能感兴趣的:(SpringMvc)