modelandview

spring mvc2

匿名 (未验证) 提交于 2019-12-02 23:49:02
web拦截方式 springconfig.xml <!--不拦截静态资源--> <mvc:default-servlet-handler/> /拦截所有不包含jsp ,包括今天资源,css,js,图片 web.xml <!-- 配置SpringMVC前端控制器 --> <servlet> <servlet-name>spring_mvc_test</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/springconfig.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>spring_mvc_test</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> @RequestMapping 通过@RequestMapping注解可以定义不同的处理器映射规则。 @RequestMapping(“”)作用

SpringMVC详解(一)

匿名 (未验证) 提交于 2019-12-02 23:47:01
SpringMVC是Spring框架内置的MVC的实现.SpringMVC就是一个Spring内置的MVC框架. MVC框架,它解决WEB开发中常见的问题(参数接收、文件上传、表单验证、国际化、等等),而且使用简单,与Spring无缝集成。 支持 RESTful风格的 URL 请求 。 采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性。 MVC模式:(Model-View-Controller):为了解决页面代码和后台代码的分离. 在没有使用SpringMVC之前我们都是使用的Servlet在做Web开发。但是使用Servlet开发在接受请求数据参数,数据共享,页面跳转等操作相对比较复杂。 SpringMVC 底层就是的Servlet ,SpringMVC 就是对Servlet 进行更深层次的封装 MVC模式最早开始是在CS 架构上面 20世纪70+年代 下面为原始的mvc模式. 目前web应用中,99%的项目都会使用mvc模式开发. WEB开发从20世纪90+年代开始,也是使用MVC模式。在最原始的MVC上有一些改进 优秀的框架改变了这种模式,将model更广泛的使用,这样会比原始的mvc好多了. 像现在一些优秀的mvc的框架,如Struts2,springMVC 在客户端提交也使用了模型来请求参数 spring MVC 也实现的相关的功能 创建动态Web项目

SpringMvc

匿名 (未验证) 提交于 2019-12-02 23:47:01
⑴ 用户发送请求至前端控制器DispatcherServlet ⑵ DispatcherServlet收到请求调用HandlerMapping处理器映射器。 ⑶ 处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。 ⑷ DispatcherServlet通过HandlerAdapter处理器适配器调用处理器 ⑸ 执行处理器(Controller,也叫后端控制器)。 ⑹ Controller执行完成返回ModelAndView ⑺ HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet ⑻ DispatcherServlet将ModelAndView传给ViewReslover视图解析器 ⑼ ViewReslover解析后返回具体View ⑽ DispatcherServlet对View进行渲染视图(即将模型数据填充至视图中)。 ⑾ DispatcherServlet响应用户。 1,servetDispatcher extends HttpServlet 3,servlet Java Servlet Web Web HTTP HTTP Servlet Servlet ―> ―> ―> init Servlet init()

SpringBoot2.0 基础案例(05):多个拦截器配置和使用场景

匿名 (未验证) 提交于 2019-12-02 23:40:02
一、拦截器简介 1、拦截器定义 拦截器,请求的接口被访问之前,进行拦截然后在之前或之后加入某些操作。拦截是AOP的一种实现策略。 拦截器主要用来按照指定规则拒绝请求。 2、拦截器中应用 Token令牌验证 请求数据校验 用户权限校验 放行指定接口 二、SpringBoot2.0拦截器用法 1、编写两个拦截器 自定义类实现HandlerInterceptor接口 1)OneInterceptor 拦截器 import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** 拦截器一 */ public class OneInterceptor implements HandlerInterceptor { private static final Logger LOGGER = LoggerFactory.getLogger

SpringMVC拦截器拦截静态资源的解决方法

匿名 (未验证) 提交于 2019-12-02 23:34:01
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/DmxExcalibur/article/details/90522415 最近写项目,添加了某个拦截器之后,发现css、js、img等静态资源被拦截: 现象: 项目添加登录验证的拦截器之后,清空浏览器缓存数据,再次运行项目,login页面会丢失样式、图片、js等静态资源,如果成功登录,以上静态资源会被浏览器加载并缓存,再次跳转到login.jsp会发现静态资源都已正常。 原因: 第一次登录静态资源被拦截,因此样式乱。 解决方案: 拦截器中遇到静态资源请求放行: String requestURI = request.getRequestURI(); //请求参数 示例代码如下: package com.ssm.interceptor; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; //配置拦截器 public class

一起学SpringMVC之文件上传

匿名 (未验证) 提交于 2019-12-02 21:52:03
概述 在Web系统开发过程中,文件上传是普遍的功能,本文主要以一个简单的小例子,讲解SpringMVC中文件上传的使用方法,仅供学习分享使用,如有不足之处,还请指正。 文件上传依赖包 如下所示,文件上传依赖的jar包主要有两个: commons - fileupload - 1.4 . jar commons - io - 2.6 . jar SpringMVC支持文件上传操作步骤 1. 配置支持文件上传的Bean 如下所示:主要配置默认的编码方式,和上传文件的限制大小 1 <!-- 文件上传支持 --> 2 < bean id = "multipartResolver" class = "org.springframework.web.multipart.commons.CommonsMultipartResolver" > 3 < property name = "defaultEncoding" value = "UTF-8" ></ property > 4 <!-- 设置最大上传内容,单位是 byte --> 5 < property name = "maxUploadSize" value = "1024000" ></ property > 6 </ bean > 2. 在处理方法中,以MultipartFile 进行接收 如下所示

SpringBoot2.0 基础案例(05):多个拦截器配置和使用场景

匿名 (未验证) 提交于 2019-12-02 21:40:30
拦截器,请求的接口被访问之前,进行拦截然后在之前或之后加入某些操作。拦截是AOP的一种实现策略。 拦截器主要用来按照指定规则拒绝请求。 Token令牌验证 请求数据校验 用户权限校验 放行指定接口 自定义类实现HandlerInterceptor接口 1)OneInterceptor 拦截器 import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * 拦截器一 */ public class OneInterceptor implements HandlerInterceptor { private static final Logger LOGGER = LoggerFactory.getLogger(OneInterceptor.class.getName()); @Override public

SSM统一异常处理方式

£可爱£侵袭症+ 提交于 2019-12-02 15:10:56
**系统遇到异常时,在程序中手动抛出,dao抛给service,service再抛给Controller,最后Controller抛给前端控制器,前端控制器调用全局异常处理器** import org . apache . shiro . authz . UnauthorizedException ; import org . springframework . stereotype . Component ; import org . springframework . web . servlet . HandlerExceptionResolver ; import org . springframework . web . servlet . ModelAndView ; import javax . servlet . http . HttpServletRequest ; import javax . servlet . http . HttpServletResponse ; @Component public class CustomExceptionResolver implements HandlerExceptionResolver { public ModelAndView resolveException ( HttpServletRequest

记录请求时间

戏子无情 提交于 2019-12-02 14:38:45
统计记录接口的请求时间: package com.onloon.data.centralization.web.interceptor; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import com.onloon.summer.common.utils.JsonUtil; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * 请求拦截器 * * @author <a href="mailto:taojiagui@loonxi.com">云启</a> * @version 1.0 2017年5月12日 * @since 1.0 */ public class RequestInterceptor implements HandlerInterceptor { private Logger logger = LoggerFactory

图解 Spring:HTTP 请求的处理流程与机制【4】

守給你的承諾、 提交于 2019-12-02 14:05:12
4. HTTP 请求在 Spring 框架中的处理流程 在穿越了 Web 容器和Web 应用之后,HTTP 请求将被投送到 Spring 框架,我们继续剖析后续流程。Web 应用与 Spring MVC 的衔接是通过配置文件 mvc-servlet.xml 完成的,我们通过这份配置文件定义构成 Spring MVC 的各种核心组件和初始化配置,其中包括:控制器 Controller、视图解析器 ViewResolver、视图 View 等等。不同组件分别承担不同的功能,在介绍 Spring 框架处理 HTTP 请求流程之前,我们照例先了解一下这些核心组件。 4.1 Spring 框架核心组件简介 我们应用开发者在使用 Spring 时接触最多的就是各种注解,包括:@Component、@Controller、@Service、@Repository 等,这些都是 Spring 的核心组件。除此之外,我们还会使用 @RequestMapping、@RequestParam、@PathVariable、@RequestBody 等辅助性注解: 模型 Model:封装了业务数据,主要以 POJO 形式存在。 控制器 Controller:主要负责具体业务流程的调度控制,以及调用业务逻辑服务 Service。 控制器 Controller 处理完 HTTP 请求之后返回