SpringMVC
胖头鱼小子
看世界,也找自己
展开
-
Spring,SpringMVC,Jquery实现分页功能
一. 需求在项目当中,我们经常会碰到数据分页的需求。今天,我们就通过Spring,SpringMVC,Jquery实现数据的分页。这是一个买书小案例,实现书籍数据的分页显示。具体效果:二. 思路首先,分页的操作是在数据访问层实现,前端负责传递参数,即当前显示第几页,每页显示的数据笔数。我们通过4个按钮来改变当前第几页。我们要查询所有的数据笔数,用于计算总页数。当前为第一页时,首页和上一页的按钮失效,当前为最后一页时,尾页和下一页的按钮失效。三. 具体实现首先,数据访问层:pub原创 2020-07-20 19:13:49 · 377 阅读 · 0 评论 -
SpringMVC执行流程
一. SpringMVC执行流程由图可知,SpringMVC执行流程可以这样分析:前端发送请求到DispatcherServlet(前端控制器)前端控制器判断是否有对应的映射存在,如果不存在,则会在SpringMVC上下文寻找是否配置mvc:default-servlet-handler,如果没配置,则出现404错误,如果配置了,就去获取目标资源,如果目标资源不存在,则出现404错误。如果存在请求相对应的映射,前端控制器DispatcherServlet将调用处理器适配器HandlerMappi原创 2020-07-19 20:25:27 · 89 阅读 · 0 评论 -
SpringMVC异常解析器
一. 前言我们在程序开发的时候,控制层难免会出现异常,出现异常之后直接在页面显示500肯定不合适,如果显示的内容不是500,而是一些友好的提示性信息,比较合适。二. ExceptionHandler注解SpringMVC上下文中,已经装配好了异常解析器对象:ExeceptionHandlerExceptionResolver,所有的其他装配异常解析器都是ExeceptionHandlerExceptionResolver的子类。异常处理步骤① 编写异常处理器@ControllerAdvice原创 2020-07-19 20:22:23 · 206 阅读 · 0 评论 -
SpringMVC之拦截器
一. 前言最擅长使用拦截器框架就是Struts2,因为Struts2的几乎所有的功能都是靠Struts2的拦截器完成的。SpringMVC里面也有定义一些拦截器,完成一些功能,比如进行国际化操作时的本地化拦截器。SPringMVC的拦截器会对请求进行拦截,用户也可以自定义拦截器来实现特定的功能,SpringMVC中提供了一个拦截器的接口:HandlerInterceptor,所有的拦截器都必须实现这个接口:preHandle():在执行处理器的目标方法之前执行,可以对用户的请求进行处理。postH原创 2020-07-19 20:20:54 · 131 阅读 · 0 评论 -
Springmvc实现文件上传
一. 前言在SpringMVC中,我们是通过FileUpload组件来进行文件上传的。二. 文件上传的步骤SpringMVC中,为文件的上传提供了直接的支持,这种支持是使用可插拔的组件MultipartResolver实现的,SPring使用FileUpload实现了MultipartResolver接口,实现类名称叫做CommonsMultipartResolver,SpringMVC上下文中并没有默认装配MultipartResolver,因此默认情况是进行不了文件上传的,需要我们在SpringM原创 2020-07-17 23:09:56 · 134 阅读 · 0 评论 -
SpringMVC实现国际化
一. 国际化概述国际化并不是对内容进行国际化,而是对本身要显示的文字进行国际化,需要在SpringIOC容器中配置国际化资源文件的bean,国际化是具体通过Locale完成。SpringMVC为国际化提供了本地化拦截器和本地化解析器,以便完成通过超链接切换方式完成国际化。本地化解析器:SessionLocaleResovler本地化拦截器LocaleChangeInterceptor二. 通过切换超链接进行国际化配置国际化资源文件username=usernamepassword=p原创 2020-07-17 23:07:58 · 245 阅读 · 0 评论 -
SpringMVC进行文件下载
在SpringMVC中,提供了两种方式进行文件下载ResponseEntity@ResponseBody注解前端请求界面:<a href="${pageContext.request.contextPath }/testFileDownLoad">Download file</a>第一种方式实现: @RequestMapping("testFileDownLoad") public ResponseEntity<byte[]> testFileDown原创 2020-07-16 18:58:19 · 1940 阅读 · 0 评论 -
SpringMVC返回JSON数据格式及HttpMessageConverter介绍
一. 返回JSON数据格式现在的开发中,几乎都是前后端分离的形式,越来越多的请求使用Ajax的异步请求,而不再是传统的跳转,使用Ajax异步请求之后,我们后端处理结果大多以JSON的形式进行响应,响应给前端,前端得到响应结果后,进行处理和渲染。在SpringMVC中,使用JSON非常的简单,SpringMVC中可以将集合等数据自动的转换成JSON数据格式,当然我们需要加入JSON相关的jar包。jackson-annotations-2.1.5.jarjackson-core-2.1.5.jarj原创 2020-07-16 18:55:31 · 355 阅读 · 0 评论 -
SpringMVC显示错误消息以及错误消息格式化
一. 前言SpringMVC会将错误消息绑定到BindingResult中,除此之外还会降错误消息加入到隐含模型,那么我们页面上获取表单提交验证的错误消息就是通过这个隐含模型中提取错误消息,在页面上显示,在页面上显示可以通过springMVC的表单标签:<f:errors path=”*”/> 表示显示所有的错误消息<f:errors path=”empName”/> 显示empName属性验证的错误消息例:<!-- 显示所有的错误消息 --> <原创 2020-07-15 20:37:49 · 661 阅读 · 0 评论 -
SpringMVC进行数据格式化以及数据校验
一. 数据格式化数据格式也属于类型转换的范畴,Spring在格式化模块中定义了一个实现ConversionService接口的FormattingConversionService实现类,该实现了即有类型转换的功能,也有格式化的功能,这个实现了拥有一个工厂FormattingConversionServiceFactoryBean工厂类,该工厂类就是用于Spring中构造FormattingConversionService实现类的。该工厂类中已经在内部注册了:@NumberFormat注解,用于进行原创 2020-07-15 20:23:03 · 223 阅读 · 0 评论 -
数据流程绑定以及自定义类型转换器
一. 数据流程绑定分析前端表单传递过来的数据为什么能够自动的封装成实体类的对象?为什么能够进行自动的类型转换?数据绑定流程:①:SpringMVC框架将ServletRequest对象及目标方法的入参实例传递给WebDataBinderFactory实例,以便创建DataBinder对象②:DataBinder调用装配在SpringMVC上下文中的ConversionService组件进行数据类型转换和数据类型格式化操作,将ServletRequest请求参数绑定到对应目标方法的入参对象中③:调原创 2020-07-15 19:49:53 · 153 阅读 · 0 评论 -
SpringMVC视图解析器
一. 视图解析器的流程分析对于视图解析器来说,我们目前用到的是InternalResourceViewResolver,使我们最熟悉的,可以通过配置这个类的bean,属性注入前缀和后缀,就能够将目标方法返回的逻辑视图名解析成实际的物理视图并进行转发,这个流程:通过视图解析器解析的视图是用来渲染数据的,将数据模型里面的数据呈现给客户,那么就是视图的作用,在SpringMVC中为了实现视图和数据模型的解耦合操作,SpringMVC定义了一个高度抽象的org.springframework.web.serv原创 2020-07-15 19:47:43 · 322 阅读 · 1 评论 -
SpringMVC处理数据模型
前言SpringMVC的请求处理器 会调用Service层,Service层调用数据访问层,最终页面上要得到的结果一般就是数据访问层的结果。那么SpringMVC是如何将数据模型加入到请求域和session域的呢?一. 处理数据模型之ModelAndView请求处理器方法的返回结果如果为ModelAndView,则既包含数据模型,也包含视图信息。ModelAndView类中添加数据模型的方法:addObject(String,Object) 添加单个数据,第一个参数表示数据模型名称,第二个参数就是原创 2020-07-14 20:56:08 · 580 阅读 · 0 评论 -
RequestParam注解以及将ServletAPI作为入参
一. RequestParam注解我们之前在使用Servlet的时候,会传递多个参数,使用request.getParameter(参数名)的方式在Servlet中接收请求参数,那么SpringMVC有这么麻烦吗?肯定是没有的,SpringMVC为参数的获取进行了封装,使得获得请求参数非常简便。/** * 在请求处理器的目标方法中,通过入参就可以获取请求参数的信息 * - 约定:目标方法入参参数名和 请求参数名称一致,就会自动匹配 * - 指定方式:使用@ReuqestParam注原创 2020-07-13 21:10:51 · 732 阅读 · 0 评论 -
RequestMapping注解以及HiddenHttpMethodFilter过滤
一. RequestMapping修饰类SpringMVC使用@RequestMapping注解为请求处理器指定映射的URL,我们的HelloWorld程序中,@RequestMapping注解是修饰在目标方法上,实际上此注解也可以修饰在类上。@Controller //表示是一个控制器@RequestMapping("/hello")public class HelloWorld {/** * sayHello 我们称之为请求处理器的 目标方法,每一个带有@RequestMapping注解的原创 2020-07-13 20:37:23 · 637 阅读 · 0 评论 -
SpringMVC简介及入门小程序
SpringMVC概述SpringMVC为展示层(显示层和控制层)提供了基于MVC设计里面的优秀的Web框架,是目前最流行的MVC框架,没有之一。Spring3.0之后全面超越了Struts2(Action),称为了最优秀的MVC框架,SpringMVC是通过一套MVC的注解,让普通的JavaBean称为请求控制器(请求处理器,Handler),而无需事先任何的Spring接口,SpringMVC是支持RestFul风格的URL请求(目前请求风格主流有两种:RPC和RestFul,RestFul更适合互原创 2020-07-07 22:53:08 · 190 阅读 · 0 评论