1.重定向参数传递
问题场景:列表态选择第3页,然后编辑数据,提交后重定向到列表页,回到了第一页而不是想要的第三页
问题解决:
@RequestMapping("/edit") public String edit(RedirectAttributes model,TrialuserExtendinfoVO trialuserExtendinfoVO,String pageNum) throws BusinessException { try { trialuserService.saveOrUpdateTUExtendInfo(trialuserExtendinfoVO); } catch (BusinessException e) { throw new BusinessException("更新数据失败!"); } model.addFlashAttribute("pageNum", pageNum); return "redirect:/trialuser/toList"; }
1. 在要发起重定向的方法中加入参数RedirectAttributes model 用它来保存你要保存的参数
model.addFlashAttribute("pageNum", pageNum);
2. 在接收重定向方法
public String toList(Model model,@ModelAttribute("pageNum") String pageNum) { model.addAttribute("pageNum", pageNum); return "trialuser/trialuserList"; }加入@ModelAttribute("pageNum") 来接收你的参数即可
2、未登录禁止访问非登录界面的其他页面
1、 编写一个自己的拦截器继承 HandlerInterceptorAdapter 并实现 preHandle 方法(请求前处理)
public class AuthenticationInterceptor extends HandlerInterceptorAdapter { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { HttpSession session = request.getSession(); // 判断是否已有该用户登录的session if (session.getAttribute(WebRequestConfigurer.SESSION_KEY) != null) { return true; } // 跳转到登录页 String url = "/"; response.sendRedirect(url); return false; } }
2、 将拦截器注入配置
@Configuration public class WebRequestConfigurer implements WebMvcConfigurer{ /** * 登录session key */ public static final String SESSION_KEY = "user"; @Override public void addInterceptors(InterceptorRegistry registry) { InterceptorRegistration addInterceptor = registry.addInterceptor(authenticationInterceptor()); // 排除配置 addInterceptor.excludePathPatterns("/css/**"); addInterceptor.excludePathPatterns("/js/**"); addInterceptor.excludePathPatterns("/img/**"); addInterceptor.excludePathPatterns("/error"); addInterceptor.excludePathPatterns("/login/checkUser"); addInterceptor.excludePathPatterns("/"); // 拦截配置 addInterceptor.addPathPatterns("/**"); } @Bean public AuthenticationInterceptor authenticationInterceptor() { return new AuthenticationInterceptor(); } }
* 注意:因为可能会拦截css,js,img 等静态资源,所有要将不拦截的路径配置到excludePathPatterns 中
3、在登录校验成功的地方保存session值
public String checkUser(@RequestParam(value = "userName", required = false) String userName, @RequestParam(value = "password", required = false) String password, HttpServletRequest request,HttpSession session) { try { LoginUserVO user = userService.selectByUserNameAndPassword(userName, password); if (user == null) { throw new BusinessException(); } } catch (BusinessException e) { log.error("登陆失败"); return "error/error"; } // 设置session session.setAttribute(WebRequestConfigurer.SESSION_KEY, userName); return "redirect:/login/main"; }
相关推荐
项目描述 学生成绩管理系统,有三...spring boot+spring mvc+mybatis+layui+jquery+thymeleaf http://localhost:8080/Sys/loginView 管理员账号 admin admin 老师登录 2020031920 111111 学生账号登录 20200319 111111
spring boot+mybatis+spring mvc整合开发超市订单后台管理系统 项目描述 超市订单管理系统 运行环境 jdk8(jdk7)+mysql+Eclipse+maven+tomcat7 项目技术(必填) springboot+spring mvc+mybatis+jquery+jsp ...
《基于Spring Boot+MyBatis的CRM客户管理系统详解》 在现代企业中,客户关系管理(Customer Relationship Management,简称CRM)系统是至关重要的工具,它帮助企业有效地管理与客户的交互,提高销售效率,优化客户...
本文将详细讲解如何使用Spring Boot、MyBatis、Spring MVC和Bootstrap技术栈开发一个停车位管理系统,并结合百度地图API实现车位的定位与导航功能。这些技术是现代Web开发中常用且强大的工具,它们各自承担着不同的...
Spring Boot、Spring Cloud、Spring MVC和MyBatis是Spring生态系统中的关键组成部分,它们各自扮演着不同的角色,共同构建了一个完整的微服务架构。 1. **Spring Boot**:Spring Boot简化了Spring应用程序的初始...
Spring Boot、MyBatis 和 Spring MVC 是三个在Java开发领域广泛应用的开源框架,它们共同构建了一个高效、便捷的Web应用程序开发环境。让我们深入探讨这三个框架的核心功能和它们如何协同工作。 **Spring Boot** ...
这是一个基于Spring Boot、Apache Shiro、Spring MVC、MyBatis、Quartz和Druid的数据源管理框架的示例项目,名为"renren-security"。这个DEMO提供了完整的权限管理和任务调度解决方案,下面是这些技术栈的核心知识点...
spring+spring mvc+mybatis+bootstrap+jquery+html+springboot+thymeleaf http://localhost:8080/index 前台地址:http://localhost:8080/user/login 账号张三 密码11111 后台地址:...
优质项目spring boot+mybatis+spring mvc+bootstrap开发停车位管理系统(调用百度地图API) 项目描述 随着时代和科技的进步,人们的生活水平越来越高,私家车的数量不断上涨,随之产生了一些问题,其中就包括停车难...
项目描述 随着时代和科技的进步,人们的生活水平越来越高,私家车的数量不断上涨,随之产生了一些问题,其中就包括停车难,很多地方人们根本...spring+spring mvc+mybatis+bootstrap+jquery+html+springboot+thymeleaf
spring boot + mybatis+ spring mvc 整合有些冗余的地方见谅,毕竟是我从完整项目中剥出来的。运行里面的Application.java就可以启动项目 。我用了 mybatis generator 插件,在pom中也依赖了,不会用的请自行百度。
Java EE企业级应用开发是构建大型、复杂系统的关键技术,其中Spring、Spring MVC和MyBatis是核心组件,常被组合使用,形成了SSM(Spring + Spring MVC + MyBatis)框架栈。这个教程源代码提供了深入理解这些技术的...
项目描述 学生成绩管理系统,有三个用户,学生,管理员,教师。...spring boot+spring mvc+mybatis+layui+jquery+thymeleaf 端口号 8080 管理员账号 admin admin 老师账号:10000 123456 学生账号登录20200319 111111
基于 SpringBoot + Spring + SpringMvc + Mybatis + Shiro+ Redis 开发单点登录管理系统 基于 SpringBoot + Spring + SpringMvc + Mybatis + Shiro+ Redis 开发单点登录管理系统 基于 SpringBoot + Spring + ...
《基于Spring Boot+Mybatis+Spring MVC+Bootstrap的Java停车位管理系统》 本系统是一个完整的Java停车位管理系统,采用现代化的技术栈,旨在提供高效、便捷的车位管理解决方案。项目框架由Spring Boot、Mybatis、...
这是一个基于Spring MVC、Mybatis和Spring框架实现的个人博客系统,涵盖了Web开发中的后端架构设计、数据库管理和前端展示等多个方面。以下将详细介绍这个系统的关键知识点: **1. Spring MVC** Spring MVC是Spring...
《基于Spring Boot、Mybatis、Spring MVC和Bootstrap的Mysql停车位管理系统详解》 在现代城市生活中,停车位管理是一项至关重要的任务。本系统采用先进的技术栈,包括Spring Boot、Mybatis、Spring MVC和Bootstrap...
SSM框架是Java开发中常用的一种组合,由Maven、Spring、Spring MVC和MyBatis四个组件构成,加上MySQL作为数据库支持,形成了一个强大的企业级应用开发基础。下面将详细介绍这些组件及其在搭建环境中扮演的角色。 1....
按标签检索电影 根据电影选择场次 根据场次选择座位 购票 查看个人订单 申请退票 发布评论、修改评论、删除评论 后台: 用户管理:增、删、改、查 电影管理:添加电影、修改和下架前台在映的电影 ...