springmvc框架

SpringMVC面试题

我与影子孤独终老i 提交于 2020-03-31 20:08:16
1、简单介绍下你对springMVC的理解? Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。 2、SpringMVC的流程? 下图是springMVC的原理示意图: SpringMVC工作流程概述: 1、客户端向web服务器(如tomcat)发送一个http请求,web服务器对http请求进行解析,解析后的URL地址如果匹配了DispatcherServlet的映射路径(通过web.xml中的servlet-mapping配置),web容器就将请求交给DispatcherServlet处理。 2、DispatcherServlet接收到这个请求后,再对URL进行解析,得到请求资源标识符(URI)。然后调用相应方法得到的HandlerMapping对象,再根据URI,调用这个对象的相应方法获得Handler对象以及它对应的拦截器。(在这里只是获得了Handler对象,并不会操作它,在SpringMVC中,是通过HandlerAdapter对Handler进行调用、控制的) 3、DispatcherServlet根据得到的Handler对象

SpringMVC 使用验证框架 Bean Validation(上)

大城市里の小女人 提交于 2020-03-27 04:32:44
SpringMVC 使用验证框架 Bean Validation(上) 对于任何一个应用而言在客户端做的数据有效性验证都不是安全有效的,这时候就要求我们在开发的时候在服务端也对数据的有效性进行验证。 SpringMVC 自身对数据在服务端的校验(Hibernate Validator)有一个比较好的支持,它能将我们提交到服务端的数据按照我们事先的约定进行数据有效性验证,对于不合格的数据信息 SpringMVC 会把它保存在错误对象中(Errors接口的子类),这些错误信息我们也可以通过 SpringMVC 提供的标签(form:errors)在前端JSP页面上进行展示。或者使用拦截器 after 方法对处理错误信息进行处理后传递给页面(我们使用JSON请求的时候就需要这样做)。 本文来介绍,如何在 SpringMVC 中进行 Validator 的使用。 一、添加 POM 依赖 <!-- Hibernate Validator --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> </dependency> 二、配置要验证的实体 public class ValidatorTest { // message 直接提供错误信息 @NotNull

SpringMVC初写(二)映射类型、限制和数据绑定

百般思念 提交于 2020-03-24 04:58:49
映射路径 a)映射路径的概述 所谓的映射路径,就是匹配请求路径和执行方法关系的路径 请求路径:http://localhost:8080/springmvc-demo-cofig/say.do 映射路径:@RequestMapping(value=“/say.do”) 基于注解的映射路径可以忽略前后缀 例:@RequestMapping(value=“/say.do”)与下面三种表达式相同 1.@RequestMapping(value="say.do") 2.@RequestMapping(value="/say")推荐使用:“/”表示路径,不指定后缀,无论拦截规则如何更改均可拦截 3.@RequestMapping(value="say ") b)三种映射路径 1.标准的映射路径 不带通配符,不带路径变量的映射路径 例:@RequestMapping(value="say.do") 2.带通配符的映射路径 三种通配符: 通配符 说明 ? 匹配1个字符,仅匹配1个字符 * 匹配同一级目录下0~N个字符 ** 匹配多级路径目录 代码实例: index.jsp   Controller         运行结果         通配符的优先级,通配范围小的通配符大于通配范围大的通配符且被通配符 范围小的通配后,通配范围大的就不能通配了 没有通配符 > “?”>“*”>“**” 3

SpringMVC整合FreeMarker实例

不羁的心 提交于 2020-03-24 01:23:31
FreeMarker作为模板引擎,是比较常用的。 FreeMarker官方文档地址为:https://freemarker.apache.org/ 现在浏览器或者翻译工具这么多,对于英文方面,我想大多数天天敲代码的,奋战在前线的同志们,对于很多编程实用单词应该不陌生,如果语文老师不是XX老师教的,我想通过Google或者其他翻译工具翻译一些意思,我想大家应该是可以看的懂,和判断是否存在问题的。 其实我个人英语,也不怎么样,曾经就采取过这样一种策略,来记单词,称之为"趣味单词记录法",这个法,我想只要将Good morning 读成鬼德莫你的人,应该能够很好的体会这种乐趣,记得正是这种乐趣,使我从学校到现在工作,对于英语也不是特别恐惧,当然了,这样也会导致很多问题,比如发音不标准等等。 这里不作讨论,这里想表达的还是希望,计算机专业的同胞或者其他转行或者感兴趣的朋友们,不要因为英语而停止对其研究学习或者放弃。 比如那些常见的Java代码生成器,基本都是通过编写ftl文件,也就是FreeMarker模板文件,通过调用对应的方法来达到代码生成的目的。 其实FreeMarker同JSP或者Volocity整合SpringMVC,并无多大的区别,web.xml基本都是那一套。 spring.xml配置的基本是扫描dao,扫描service,整合MyBatis或MyBatis

SpringMVC 集成 Velocity 模板引擎

只谈情不闲聊 提交于 2020-03-24 01:23:13
本文通过 maven 项目中集成 1、引入 SpringMVC 与 Velocity 需要的依赖 <!-- SpringMVC --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.3.7.RELEASE</version> </dependency> <!-- velocity --> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity</artifactId> <version>1.7</version> </dependency> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-tools</artifactId> <version>2.0</version> </dependency> 2、在resources 目录下创建 SpringMVC 框架配置文件 dispatcherServlet.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www

SpringMVC(1):Web MVC简介

纵饮孤独 提交于 2020-03-22 15:16:23
原文出处: 张开涛 Web MVC简介 1.1、Web开发中的请求-响应模型: 在Web世界里,具体步骤如下: 1、 Web浏览器(如IE)发起请求,如访问 2、 Web服务器(如Tomcat)接收请求,处理请求(比如用户新增,则将把用户保存一下),最后产生响应(一般为html)。 3、web服务器处理完成后,返回内容给web客户端(一般就是我们的浏览器),客户端对接收的内容进行处理(如web浏览器将会对接收到的html内容进行渲染以展示给客户)。 因此,在Web 世界里: 都是Web客户端发起请求,Web服务器接收、处理并产生响应。 一般Web服务器是不能主动通知Web客户端更新内容。虽然现在有些技术如服务器推(如Comet)、还有现在的HTML5 websocket可以实现Web服务器主动通知Web客户端。 到此我们了解了在web开发时的请求/响应模型,接下来我们看一下标准的MVC模型是什么。 1.2、标准MVC模型概述 MVC 模型: 是一种架构型的模式,本身不引入新功能,只是帮助我们将开发的结构组织的更加合理,使展示与模型分离、流程控制逻辑、业务逻辑调用与展示逻辑分离。如图1-2 首先让我们了解下MVC (Model-View-Controller )三元组的概念: Model (模型): 数据模型,提供要展示的数据,因此包含数据和行为

Thymeleaf+Spring整合

亡梦爱人 提交于 2020-03-21 08:53:25
前言 这个教程介绍了Thymeleaf与Spring框架的集成,特别是SpringMvc框架。 注意Thymeleaf支持同Spring框架的3. 和4. 版本的集成,但是这两个版本的支持是封装在thymeleaf-spring3和thymeleaf-spring4这两个独立的库中,项目中需要根据实际情况分别引用。 样例代码针对的是spring4. ,但一般情况下,spring3. 也可以无缝使用,所需要的仅仅是改变一下引用库。 1 Thymeleaf同Spring的整合 Thymeleaf与Spring进行整合后,可以在SpringMVC应用中完全替代JSP文件。 集成后你将: 就像控制JSP一样,使用SpringMvc的@Controller注解来映射Thymeleaf的模板文件。 在模板中使用SpringEL表达式来替换OGNL 在模板中创建的表单,完全支持Beans和结果的绑定,包括使用PropertyEditor,转换,和验证等。 可以通过Spring来管理国际化文件显示国际化信息。 注意,在使用本教程之前,您应该充分了解Thymeleaf的标准方言。 2 Spring标准方言 为了更加方便,更快捷的集成,Thymeleaf提供了一套能够与Spring正确工作的特有方言。 这套方言基于Thymeleaf标准方言实现,它在类org.thymeleaf.spring

SpringMVC框架——转发与重定向

被刻印的时光 ゝ 提交于 2020-03-17 19:00:36
网上摘取一段大神总结的转发与重定向的区别,如下: 转发 (服务端行为) 形式:request.getRequestDispatcher().forward(request,response)     转发在服务器端发挥作用,通过forward()方法提交信息在多个页面之间进行传递;     地址栏不会改变;     转发只能转发到当前Web应用内的资源;     在转发过程中,可以将数据保存到 request 域对象中去;     转发只有一次请求;     转发是服务器端行为    2. 转发过程     客户端浏览器发送http;     web浏览器接受请求;     调用内部的一个方法在容器内部完成请求处理和转发动作;   需注意的是:转发的路径必须是同一个web容器下的url。在客户端浏览器路径栏显示的仍然是第一次访问的路径。转发行为是浏览器只做了一次访问请求。 重定向 (客户端行为)   1. 形式:response.sendRedirect("")     重定向地址栏会改变;      重定向可以跳转到当前web应用,甚至是外部域名网站;     不能在重定向的过程中,将数据保存到 request 域对象中;   2. 重定向过程      客户端发送http请求;      web服务器接收后,发送302状态吗响应以及新的location给客户端浏览器;    

Spring MVC上传和下载

爷,独闯天下 提交于 2020-03-17 09:03:01
某厂面试归来,发现自己落伍了!>>> 一、简介: Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的SpringMVC框架或集成其他MVC开发框架,如Struts1,Struts2等 优点:它是一个典型的教科书式的mvc构架,而不像struts等都是变种或者不是完全基于mvc系统的框架,对于初学者或者想了解mvc的人来说我觉得 spring是最好的,它的实现就是教科书!第二它和tapestry一样是一个纯正的servlet系统,这也是它和tapestry相比 struts所没有的优势。而且框架本身有代码,看起来容易理解。 二、SpringMVC几个核心类: 控制器核心类:org.springframework.web.servlet.DispatcherServlet - 配置web.xml 加载配置文件核心类:org.springframework.web.context.ContextLoaderListener – spring的配置文件 处理url影射核心类:org.springframework.web.servlet.handler

最新SpringMVC框架搭建入门教程

左心房为你撑大大i 提交于 2020-03-16 13:57:33
某厂面试归来,发现自己落伍了!>>> Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。 Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。 Spring MVC的易用性、功能强大等优点已经被越来越多的企业所接受,也成为一个使用广泛的mvc框架。 因此,尚学堂对于spring mvc的使用做了详细讲授,希望对大家的工作和学习起到一定的作用。 01、spring mvc介绍 02、spring mvc hello 03、使用注解开发 04、controller配置总结 05、结果跳转方式 06、数据处理 07、乱码及Restful 08、文件上传 09、ajax&json处理 10、拦截器简介 11、登录拦截器实现 12、整合spring mvc&spring&mybatis 13、整合的实现 14、案例1 15、案例2 本文来自 >> 尚学堂 ; 转载请注明: http://www.sxt.cn/u/13421/blog/8941 来源: oschina 链接: https://my.oschina.net/u/2622491/blog/653551