springmvc配置

SpringMVC

依然范特西╮ 提交于 2020-01-21 23:19:24
三层架构 服务器端分成三层架构 表现层 业务层 持久层 SpringMVC Spring MyBatis MVC设计模型架构 Model View Controller 模型 视图 控制器 JavaBean jsp… servlet SpringMVC概述 Spring MVC 的入口是Servlet,而Struts2是Filter Spring MVC 是基于方法设计的,而Struts2是基于类创建稍微慢一点 Spring MVC 使用更加简洁,同时还支持JSR303,处理ajax的请求更方便 Struts2的OGNL表达式使页面的开发效率相比Spring MVC 更高,但执行效率并没有比JSTL提升,尤其是Struts2的表单标签,远没有HTML执行效率高 SpringMVC的入门 add maven Property配置archetypeCatalog:internal 解决创建项目过慢 12345678910111213141516 web.xml 配置前端控制器<web-app><servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param

SpringMVC源码阅读RequestMappingHandlerAdapter如何处理Handle(八)

十年热恋 提交于 2020-01-21 18:31:31
接口 public interface HandlerAdapter { /** * 是否能处理指定Handler * @param var1 * @return */ boolean supports(Object var1); /** * 处理Handler * @param var1 * @param var2 * @param var3 * @return * @throws Exception */ @Nullable ModelAndView handle(HttpServletRequest var1, HttpServletResponse var2, Object var3) throws Exception; /** * 获取资源最后一次更新时间 * @param var1 * @param var2 * @return */ long getLastModified(HttpServletRequest var1, Object var2); } 类图 我们回到Dispatcher开始看起 DispatcherServlet doDispatch org.springframework.web.servlet.FrameworkServlet#service -> org.springframework.web.servlet.FrameworkServlet

SpringMVC学习笔记(二)---什么是SpringMVC

醉酒当歌 提交于 2020-01-21 16:11:56
2. 什么是SpringMVC 2.1 概述 Spring MVC是Spring Framework的一部分,是基于Java实现MVC的轻量级Web框架。 查看官方文档: https://docs.spring.io/spring/docs/5.2.0.RELEASE/spring-framework-reference/web.html#spring-web 我们为什么要学习SpringMVC呢? Spring MVC的特点: 轻量级,简单易学 高效 , 基于请求响应的MVC框架 与Spring兼容性好,无缝结合 约定优于配置 功能强大:RESTful、数据验证、格式化、本地化、主题等 简洁灵活 Spring的web框架围绕 DispatcherServlet [ 调度Servlet ] 设计。 DispatcherServlet的作用是将请求分发到不同的处理器。从Spring 2.5开始,使用Java 5或者以上版本的用户可以采用基于注解形式进行开发,十分简洁; 正因为SpringMVC好 , 简单 , 便捷 , 易学 , 天生和Spring无缝集成(使用SpringIoC和Aop) , 使用约定优于配置 . 能够进行简单的junit测试 . 支持Restful风格 .异常处理 , 本地化 , 国际化 , 数据验证 , 类型转换 , 拦截器 等等…所以我们要学习 .

SSM框架面试题及答案整理

那年仲夏 提交于 2020-01-20 21:26:03
一、Spring面试题 1、Spring 在ssm中起什么作用? Spring:轻量级框架 作用:Bean工厂,用来管理Bean的生命周期和框架集成。 两大核心: ①. IOC/DI(控制反转/依赖注入) :把dao依赖注入到service层,service层反转给action层,Spring顶层容器为BeanFactory。 ②. AOP:面向切面编程 2、Spring的事务? 编程式事务管理:编程方式管理事务,极大灵活性,难维护。 声明式事务管理:可以将业务代码和事务管理分离,用注解和xml配置来管理事务。 3、IOC 在项目中的作用? 作用:Ioc解决对象之间的依赖问题,把所有Bean的依赖关系通过配置文件或注解关联起来,降低了耦合度。 4、Spring的配置文件中的内容? 开启事务注解驱动 事务管理器 开启注解功能,并配置扫描包 配置数据库 配置SQL会话工厂,别名,映射文件 不用编写Dao层的实现类 5、Spring下的注解? 注册:@Controller @Service @Component 注入:@Autowired @Resource 请求地址:@RequestMapping 返回具体数据类型而非跳转:@ResponseBody 6、Spring DI 的三种方式? 构造器注入:通过构造方法初始化 <constructor-arg index="0" type=

springmvc

 ̄綄美尐妖づ 提交于 2020-01-19 18:50:02
SpringMVC 第一章 1.1 三层架构 表现层:web层,用来和客户端进行数据交互的,一般采用MVC的设计模式 业务层:处理公司具体的业务逻辑的 持久层:操作数据库的 1.2 MVC模型 Model:用来进行数据封装 View:用来展示数据给用户 Controller:用来接收用户请求,整个流程的控制器,进行数据校验等 1.3 SpringMVC的优势 清晰的角色划分 前端控制器(DispatcherServlet) 控制流程的中心,有它调用其他组件处理用户的请求,解耦 请求到处理器映射(HandlerMapping) 负责根据用户请求找到Handler即处理器,SpringMVC 提供了不同的映射器实现不同的 映射方式,例如:配置文件方式,实现接口方式,注解方式等 处理器(Handler) 由DispatcherServlet把用户请求转发到Handler,由Handler对具体的用户请求进行处理 处理器适配器(HandlerAdapter) 充当接口作用 视图解析器(ViewResolver) 负责将处理结果生成 View 视图,View Resolver 首先根据逻辑视图名解析成物理视图名 即具体的页面地址,再生成 View 视图对象,最后对 View 进行渲染将处理结果通过页面展示给用户 视图(view) SpringMVC 框架提供了很多的 View 视图类型的支持

springMVC小项目实例

假如想象 提交于 2020-01-19 08:35:52
一、什么是 Spring MVC Spring MVC 属于 SpringFrameWork 的后续产品,已经融合在 Spring Web Flow 里面,是一个强大灵活的 Web 框架。Spring MVC 提供了一个 DispatcherServlet 作为前端控制器来分配请求。通过策略接口,Spring 框架是高度可配置的。Spring MVC 还包含多种视图技术,如 Java Server Pages(JSP)、Velocity、Tiles、iText 和 POI 等。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。 Spring MVC 框架主要由 DispatcherServlet、处理器映射器、处理器适配器、处理器(控制器)、视图解析器、视图组成。 二、Spring MVC 执行流程 Spring MVC 高层次的请求处理工作流程如下(图来自 Spring 官网 ): 细分后,Spring MVC 执行流程如下,共包括八步: Spring MVC 相关接口解释: (1)DispatcherServlet 前端控制器,所有的请求都有经过它来统一分发,请求会被分发给对应的 Handler。 (2)HandlerMapping(处理器映射器) 解析请求链接,然后根据请求链接找到执行这个请求的类

SpringMVC拦截器详解

淺唱寂寞╮ 提交于 2020-01-19 08:06:00
拦截器是每个Web框架必备的功能,也是个老生常谈的主题了。 本文将分析SpringMVC的拦截器功能是如何设计的,让读者了解该功能设计的原理。 重要接口及类介绍 1. HandlerExecutionChain类   由HandlerMethod和Interceptor集合组成的类,会被HandlerMapping接口的getHandler方法获取。 2. HandlerInterceptor接口      SpringMVC拦截器基础接口。  3. AbstractHandlerMapping   HandlerMapping的基础抽象类。 4. AsyncHandlerInterceptor   继承HandlerInterceptor的接口,额外提供了afterConcurrentHandlingStarted方法,该方法是用来处理异步请求。当Controller中有异步请求方法的时候会触发该方法。 楼主做过测试,异步请求先支持preHandle、然后执行afterConcurrentHandlingStarted。异步线程完成之后执行preHandle、postHandle、afterCompletion。 有兴趣的读者可自行研究。 5. HandlerInterceptorAdapter   实现AsyncHandlerInterceptor接口的抽象类

SpringMVC中转发和重定向

和自甴很熟 提交于 2020-01-19 04:01:25
在SpringMVC中正常的页面转发是通过视图解析器的,视图解析器对view的名字进行拼接,加上前缀和后缀 <!-- 视图解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <!-- 前缀匹配--> <property name="prefix" value="/WEB-INF/jsp/"/> <!-- 后缀匹配--> <property name="suffix" value=".jsp"/> </bean> 对应的Controller类 @Controller public class ControllerTest3 { @RequestMapping("/hello1") public String test1(Model model) { model.addAttribute("msg", "Test1"); return "test"; } } 下面我们来演示通过SpringMVC实现页面的转发和重定向,而不用视图解析器,这里给出修改过的配置文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns

SpringMVC框架(一)

北城余情 提交于 2020-01-19 00:14:26
1、SpringMVC介绍 简单处理流程 2、入门程序 项目中的dao层 和pojo 通过数据库表使编译器自己生成 导入包 web.xml配置(前端控制器配置) springmvc.xml配置 controller层 jsp页面 3、Spring构架 我们写(配置)的是下面三个: 4、Springmvc配置三大组件 配置了视图解释器之后,下面的路径就不需要写长路径了。 5、SpringMVC + mybatis整合 整合目标 :控制层采用springmvc、持久层使用mybatis 先整合spring 和mybatis 之后将springmvc.xml粘贴上就好了,不需要整合。 6、查询商品列表 applicationContext.xml service层 controller层 7、参数绑定 实现列表中信息修改 7.1、默认参数绑定 service层 controller层 7…2、简单类型绑定 7.3、绑定pojo类型 将页面修改后的商品信息保存到数据库中。需要pojo中的变量名称和jsp 页面的name 属性一一对应。 service层 controller层 7.4、解决post提交乱码问题 7.5、绑定包装pojo 使用包装的pojo接收商品信息的查询条件 pojo类 controller层 jsp修改 7.6、自定义参数绑定 在商品修改页面可以修改商品的生产日期