
java>spring>mvc
mvc
和代码去流浪
这个作者很懒,什么都没留下…
展开
-
SpringMVC源码研究之注解mvc:argument-resolvers
1. 起因 最近在看开涛大神的《跟我学Shiro》系列文章的源码时,发现这样的一个技巧: 通过一个继承自Shiro自定义PathMatchingFilter的SysUserFilter类将当前用户的信息推入到本次请求Request实例中;然后使用自定义注解@CurrentUser和和继承自HandlerMethodArgumentResolver的CurrentUserMethodArgumentResolver来参与SpringMVC的参数解析逻辑。在检测到用户在Controller层的方法参数中使用转载 2020-10-14 15:10:11 · 471 阅读 · 0 评论 -
springmvc4的validation配置
有两种配置,一种是继承一个验证类,一种是注解,这里主要讲注解。 同时注解方式也可细分,一种是将提示信息硬编码到代码里,这种配置简单,另外一种稍微麻烦点,但可以把错误提示信息写到配置文件里。 首先上pom <!--注解规范javax及验证--> <dependency> <groupId>javax.validation</groupI...转载 2019-09-19 22:28:06 · 390 阅读 · 0 评论 -
SpringMVC上传文件的三种方式
commonsmultipartresolver 的源码,可以研究一下http://www.verysource.com/code/2337329_1/commonsmultipartresolver.java.html 前台: 1 2 3 4 5 6 7 8 9 10 11 12 ...转载 2019-09-19 22:31:29 · 95 阅读 · 0 评论 -
Spring MVC异常统一处理(包括普通请求异常以及ajax请求异常)
通常SpringMVC对异常的配置都是返回某个jsp视图给用户,但是通过ajax方式发起请求,即使发生异常,前台也无法获得任何异常提示信息。因此需要对异常进行统一的处理,对于普通请求以及ajax请求的异常都有效。 1.Spring MVC的异常处理机制 Spring MVC 通过HandlerExceptionResolver处理程序的异常,包括处理器映射,数据绑定以及处理器执行时发生的异常。...转载 2019-09-21 00:11:14 · 298 阅读 · 0 评论 -
SpringMVC异常处理
为了统一处理代码运行过程中出现的异常,给用户一个更友好的异常界面,需要引入springMVC的异常处理功能,为了演示这个功能,本文实现一个比较常用的需求。 将所有的异常归为两类,一类是程序员自己创建的异常类,另一类是系统或框架定义的异常类。程序员自己定义的异常类在界面上输出异常信息,而系统定义好的异常全部统一输出“未知错误”。 引发异常后,跳转到异常页面,并且进行读秒,三秒后自动跳转到请求发生的页...转载 2019-09-21 00:18:20 · 99 阅读 · 0 评论 -
spring+springMVC,声明式事务失效,原因以及解决办法
一.声明式事务配置: [html] view plaincopy [html] view plaincopy <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <...转载 2019-09-21 00:19:57 · 363 阅读 · 0 评论 -
SpringMVC使用maven配置SLF4J和Log4J2
理论知识 关于两版的区别 两版的不同,直接的表现是在Maven仓库中log4j 表示第一版,org.apache.logging.log4j 表示第二版。另外应当注意: Log4J2.4及更高版本需要Java 7,版本2.0-alpha1至2.3需要Java 6 XML配置已被简化,与Log4j 1.x不兼容 版本2.4开始支持通过属性文件进行配置,但与Log4j 1.x不兼容 支持通过JSON...转载 2019-09-23 23:02:32 · 1066 阅读 · 0 评论 -
Spring MVC 配置HttpMessageConverter和Conversion-service的问题
最近开始学习spring mvc,配置HttpMessageConverter来转换json和xml,以及配置conversion-service来格式化数据,这个两个配置总不能都测试通过,要么是第一个转换json和xml出错,格式化数据通过,那么就是第一个通过,第二个就不能通过 下面是httpMessageConverter测试通过而conversion-service测试不通过的相关配置 ...转载 2019-09-23 23:04:12 · 605 阅读 · 0 评论 -
Spring的AOP,Struts2的拦截器(Interceptor),以及springMVC的(interceptor)
1.首先,spring的AOP作用范围很广,可以使用Aspectj的execution表达式自定以切面的位置。 比如下面的配置service方法执行日志: 1 <!-- 系统日志 --> 2 <bean id="logUtils" class="com.tabchanj.crm.utils.SystemLogUtils"> 3 <pr...转载 2019-09-23 23:06:10 · 198 阅读 · 0 评论 -
SpringMVC之类型转换Converter
1. 摘要 在spring 中定义了3中类型转换接口,分别为: Converter接口 :使用最简单,最不灵活; ConverterFactory接口 :使用较复杂,比较灵活; GenericConverter接口 :使用最复杂,也最灵活; 可参考链接:http://blog.youkuaiyun.com/renhui999/article/details/9...转载 2019-09-24 22:56:13 · 182 阅读 · 0 评论 -
关于Spring属性编辑器详解
最近刚在研究Spring的编辑器,发现很有意思,刚好galaxystar起了一个这样贴,我想对PropertyEditor作一个详细的整理会对大家有益,特定启了这个新帖。 所谓的PropertyEditor,顾名思义,就是属性编辑器。由于Bean属性通过配置文档以字符串了方式为属性赋值,所以必须有一个“东东”负责将这个字符串转换为属性的直接对象,如属性的类型为int,...转载 2019-09-24 22:57:12 · 441 阅读 · 0 评论 -
spring(springmvc) Editor Converter使用区别
使用spring 加载配置项、springmvc 请求入参过程中,String 转需要的类,就是通过内置的Editor Converter完成。 Editor和Converter都可以完成StringToXXX的转换,但效果又不同。 比如:StringToCollection,Editor转换后的结果比Converter差。因此使用场景需要注意,否则会花时间调试。 总结: 1. springmvc...转载 2019-09-24 22:59:14 · 273 阅读 · 0 评论 -
SpringMVC注解式控制器的数据验证、类型转换及格式化
7.1、简介 在编写可视化界面项目时,我们通常需要对数据进行类型转换、验证及格式化。 一、在Spring3之前,我们使用如下架构进行类型转换、验证及格式化: 流程: ①:类型转换:首先调用PropertyEditor的setAsText(String),内部根据需要调用setValue(Object)方法进行设置转换后的值; ②:数据验证:需要显示调用Spring的Valida...转载 2019-09-26 21:15:14 · 310 阅读 · 0 评论 -
SpringMVC工作原理:HandlerMapping和HandlerAdapter
一、HandlerMapping 作用是根据当前请求的找到对应的 Handler,并将 Handler(执行程序)与一堆 HandlerInterceptor(拦截器)封装到 HandlerExecutionChain 对象中。在 HandlerMapping 接口的内部只有一个方法,如下: HandlerExecutionChain getHandler(HttpServl...转载 2019-09-26 21:17:28 · 269 阅读 · 0 评论 -
Spring MVC-从零开始-view-ViewResolver
主要ViewResolver简介 InternalResourceViewResolver 将逻辑视图名解析为一个路径 BeanNameViewResolver 将逻辑视图名解析为bean的name属性,从而根据name属性去找对应的bean ResourceBundleResolver 和BeanNameViewResolver一样,只不过定义的vie...转载 2019-09-26 21:19:39 · 111 阅读 · 0 评论 -
SpringMVC源码总结 ViewResolver介绍
首先我们先看看ModelAndView中重要的View接口。 View接口: Java代码 String getContentType(); /** *&nbs...转载 2019-09-27 22:02:27 · 261 阅读 · 0 评论 -
SpringMVC - 处理静态资源的几种方式
【1】第一种示例与解决办法 将DispatcherServlet请求映射设置为 / ,将会拦截所有的请求。不能访问静态资源。 解决办法: 在SpringMVC的配置文件中配置如下标签解决 <mvc:default-servlet-handler/> 其XSD文档说明如下: /*配置一个handler通过转发请求到servlet容器的默认servlet来处理静态资源*/ Configur...转载 2019-09-27 22:04:00 · 222 阅读 · 0 评论 -
SpringMVC学习记录(六)--Validator验证
SpringMVC服务器验证一种是有两种方式,一种是基于Validator接口,一种是使用Annotaion JSR-303标准的验证,下面主要是学习这两种,工作中推荐后者,方便很多 一.基于Validator接口的验证. 首先创建User实例,并加入几个属性 public class User { private String username; private String ...转载 2019-09-19 22:27:02 · 213 阅读 · 0 评论 -
SpringMVC 几种页面跳转方式
SpringMVC 几种页面跳转方式总结如下: 1.不使用ModelAndView 1)、通过HttpServletResponse的API直接输出(不需要配置渲染器) @Controller public class RequestController{ @RequestMapping("/resp") public void test(HttpServletRequest req...转载 2019-09-18 22:35:31 · 183 阅读 · 0 评论 -
跟我学SpringMVC目录汇总贴
第一章 Web MVC简介 第二章 Spring MVC入门 第三章 DispatcherServlet详解 第四章 Controller接口控制器详解(1) 第四章 Controller接口控制器详解(2) 第四章 Controller接口控制器详解(3) 第四章 Controller接口控制器详解(4) 第四章 Controller接口控制器详解(5) 第四章 Contr...转载 2019-09-12 23:47:12 · 194 阅读 · 0 评论 -
Spring3 MVC请求参数获取的几种方法
一、 通过@PathVariabl获取路径中的参数 @RequestMapping(value="user/{id}/{name}",method=RequestMethod.GET) public String printMessage1(@PathVariable String id,@PathVariable String name, ModelMap mo...转载 2019-09-12 23:48:17 · 112 阅读 · 0 评论 -
SpringMVC 控制器向视图传值的方式
在SpringMVC中,控制器向视图传值一般有三中方式,分别是通过ModelAndView、ModelMap、Session,下面将讲述三种传值方式 ModelAndView 将控制器方法的返回值设为ModelAndView,并且向ModelAndView中添加数据,在视图的requestScope中将可以访问到放入的数据。 控制器方法示例如下: @RequestMapping("/getTim...转载 2019-09-15 00:07:15 · 633 阅读 · 0 评论 -
SpringMVC的几种返回方式
package com.boventech.learning.controller; import java.util.HashMap; import java.util.Map; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springfram...转载 2019-09-15 00:09:50 · 113 阅读 · 0 评论 -
SpringMVC返回json数据的三种方式
1、第一种方式是spring2时代的产物,也就是每个json视图controller配置一个Jsoniew。 如:<bean id="defaultJsonView" class="org.springframework.web.servlet.view.json.MappingJacksonJsonView"/> 或者<bean id="defaultJsonView" cl...转载 2019-09-15 00:11:43 · 175 阅读 · 0 评论 -
SpringMVC学习系列(8) 之 国际化
在系列(7)中我们讲了数据的格式化显示,Spring在做格式化展示的时候已经做了国际化处理,那么如何将我们网站的其它内容(如菜单、标题等)做国际化处理呢?这就是本篇要将的内容—>国际化。 一.基于浏览器请求的国际化实现: 首先配置我们项目的springservlet-config.xml文件添加的内容如下: <bean id="messageSource" class="org...转载 2019-09-15 23:16:40 · 122 阅读 · 0 评论 -
springMVC基于Session实现动态国际化
1.在spring配置文件中配置资源文件properties的位置及公共名,下列配置指定的properties文件处于src目录下的resources文件夹中,名字为message_info_*.properties。 <bean id="messageSource"class="org.springframework.context.support.ResourceBundleMes...转载 2019-09-15 23:18:27 · 242 阅读 · 0 评论 -
Spring Mvc——Controller中常规方法示例
一,简单无参数地址访问 首先来看下类标记: /** * Created by LiuHuiChao on 2016/3/21. */ @Controller @RequestMapping("/hello") public class HelloMvcController { 简单进行类中方法的访问: /*简单访问示例*/ @RequestMapping("/mvc") pu...转载 2019-09-15 23:19:30 · 165 阅读 · 0 评论 -
springMVC在Controller中获取WebApplicationContext
1、applicationContext在web.xml中使用listener配置<context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value></...转载 2019-09-16 23:18:07 · 613 阅读 · 0 评论 -
springMVC:将controller中数据传递到jsp页面
1> 将方法的返回值该为ModelAndView在返回时,将数据存储在ModelAndView对象中如: newModelAndView("/WEBINF/jsp/showData.jsp","message",message) 其中第一个参数为url,第二个参数为要传递的数据的key,第三个参数为数据对象。 在这里要注意的是 数据是默认被存放在request中的。 示例:...转载 2019-09-16 23:19:35 · 1513 阅读 · 0 评论 -
SpringMVC中的统一异常处理
我们知道,系统中异常包括:编译时异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主要通过规范代码开发、测试通过手段减少运行时异常的发生。在开发中,不管是dao层、service层还是controller层,都有可能抛出异常,在springmvc中,能将所有类型的异常处理从各处理过程解耦出来,既保证了相关处理过程的功能较单一,也实现了异常信息的统一处理...转载 2019-09-16 23:21:09 · 190 阅读 · 0 评论 -
基于SpringMVC的拦截器(Interceptor)和过滤器(Filter)的区别与联系
一 简介(1)过滤器:依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作,获取我们想要获取的数据,比如:在过滤器中修改字符编码;在过滤器中修改HttpServletRequest的一些参数,包括:过滤低俗文字、危险字符等关于过滤器的一些用法可以参考我写过的这些文章:继承HttpServ...转载 2019-09-17 21:53:55 · 138 阅读 · 0 评论 -
解决springmvc加载JS,CSS等文件问题
这个可以说是很多初学Springmvc的人都会碰到一个令人头痛的问题 那就是为什么我配置好web.xml中的dispatchservlet后,js,css,甚至gif都不能正常显示了 我们来看看我们配置的web.xml [html] view plaincopy <!--核心控制器--> <servlet> <servl...转载 2019-09-17 21:55:07 · 307 阅读 · 0 评论 -
Spring MVC 下设置默认访问页面的3种方式
1.默认tomcat容器的默认页面。 <welcome-file-list> <welcome-file>/index.html</welcome-file> </welcome-file-list> 这种方式适合访问静态的页面(也包括JSP)或者说是没有任何参数的页面。 2.spirng mvc 默认index contro...转载 2019-09-17 21:57:06 · 431 阅读 · 0 评论 -
SpringMVC访问不到默认页的问题
在web.xml中配置了 <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list> 也访问不到静态资源。 原来是spirngmvc框架原因。 在springmvc.xml配置文件中加上 <mvc:...转载 2019-09-18 22:32:06 · 312 阅读 · 0 评论 -
Spring mvc4使用jackson绑定controller返回
1、spring MVC4以上,使用的json包有变更。 2、使用之前的json包出现Java.lang.NoClassDefFoundError: com/fasterxml/jackson/core/JsonProcessingException错误。 3、新用到包为jackson-annotations-2.5.0.jar, jackson-core-...转载 2019-09-18 22:34:39 · 295 阅读 · 0 评论 -
DispatcherServlet详解
3.1、DispatcherServlet作用 DispatcherServlet是前端控制器设计模式的实现,提供Spring Web MVC的集中访问点,而且负责职责的分派,而且与Spring IoC容器无缝集成,从而可以获得Spring的所有好处。具体请参考第二章的图2-1。 DispatcherServlet主要用作职责调度工作,本身主要用于控制流程,主要职责如下: 1、文件上...转载 2019-09-12 23:45:47 · 581 阅读 · 0 评论