Fork me on GitHub

spring mvc

spring mvc 406

使用Spring MVC返回 JSON 数据有时候会在页面报出以下 406 错误。具体错误信息如下: 最常见的问题就是缺少 Jackson 工具包,它的作用是把 Java 对象转换成 JSON 输出到页面。当然这是最常见的情况,下面我就来介绍一下项目中出现的问题。由于项目遗留原因,项目请求中 URI 都是以 .htm 结尾。之前都是使用 HttpServletResponse 操作原生 Servlet 来返回 JSON 数据,而不是使用 Spring MVC 提供的...

20、Spring MVC 之 Configuring

在之前的Blog – Spring MVC 之 一些特殊的Bean中的”WebApplicationContext中一些特殊的Bean”和”默认的DispatcherServlet配置”中已经解释了Spring MVC中的一些特殊的Bean以及DispatcherServlet中的使用的一些默认实现。在这个部分中你将学到配置Spring MVC的2种额外的方法。也就是MVC Java配置和MVC XML命名空间。 MVC Java配置和MVC会命名空间提供类似的配置用来...

19、Spring MVC 之 Container Config

在Servlet 3.0+的环境里,你可以选择以编程的方式配置Servlet容器或者结合web.xml文件。下面是是一个注册DispatcherServlet的例子: 123456789101112131415import org.springframework.web.WebApplicationInitializer;public class MyWebApplicationInitializer implements WebApplicationInitializ...

18、Spring MVC 之 HTTP caching support

一个好的HTTP缓存策略可以显著的提高一个web应用的性能以及客户体验。HTTP响应头'Cache-Control',条件头'Last-Modified'以及'ETag'通常负责这个. HTTP响应头'Cache-Control'建议私有的cache(e.g. 浏览器),公共的cache(e.g. 代理)它们可以缓存HTTP响应来再次使用。 MVC配置的静态资源,ETag(实体标签)是一个HTTP/1.1允...

17、Spring MVC 之 COC support

对于很多项目,坚持既定的约定,并设置合理的默认值是他们(项目)所需要的东西。并且Spring WEB MVC已经明确的支持约定优于配置(or Convention over configuration)。这意味着如果你建立一组命名约定等,你可以充分的减少大多数配置。其中必要的设置包含handler mappings,view resolvers, ModelAndView实例等等。对于快速原型这是一个被视为很好的,提供一定程度的(总是好)一致性代码库。你应该选择把它推行...

16、Spring MVC 之 Web Security

Spring Security是一个单独的项目,它可以无缝的和Spring MVC集成。Spring Security提供会特性保护web应用来自恶意的攻击。具体可以参看Spring Security的参考文档的章节,例如“CSRF protection”,“Security Response Headers”和“Spring MVC Integration”.注意:使用Spring Security去保护应用不是针对所有的特性。例如CSRF保护可以通过简单的添加Csr...

15、Spring MVC 之 Handling exceptions

1、HandlerExceptionResolverSpring中的HandlerExceptionResolver会处理发生在Controller中意想不到的Exceptions。HandlerExceptionResolver有点像exception的映射,你能够定义它到web应用描述文件web.xml中。但是,它们提供了一个更加灵活的方法。例如当异常被thrown的时候,它们提供哪个handler正在被执行的信息。而且,当request转发到另外一个URL之前,编...

14、Spring MVC 之 multipart (file upload) support

1、IntroductionSpring在web应用程序的内置支持处理multipart文件上传.你可以使用定义在org.springframework.web.multipart包里面的MultipartResolver对象可插拔的支持处理multipart文件上传。Spring提供了一个是基于Commons FileUpload的MultipartResolver实现使用,另一个是基于Servlet 3.0的multipart语法解析。 默认情况下Spring不支持...

13、Spring MVC 之 Using themes

1、themes概述你可以使用Spring Web MVC框架的整体外观主题设定你的应用程序,从而提高用户体验。一个theme是静态资源的集合,通常样式表和图片,影响应用程序的视觉风格。 2、定义themes要在你的web应用程序中使用的主题,必须建立一个实现org.springframework.ui.context.ThemeSource接口。这个WebApplicationContext接口扩展ThemeSource但将责任委托给专门的实现。默认代理实现是org....

12、Spring MVC 之 Using locales

Spring MVC的架构是支持i18n的。DispatcherServlet让你能够使用客户端的locale自动解析message.主要是通过LocalResolver这个对象办到的。 当前端请求到来,DispatcherSevlet寻找一个locale解析器。如果它找到了,它就会试图用它来设置locale。使用RequestContext.getLocale()方法,你可以检索locale然后可以使用locale解析器解析。 除了自动locale解析,在特殊情况下你...