springmvc注解

SpringMVC

谁说我不能喝 提交于 2020-01-18 04:40:31
简介 Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框架,如Struts1(现在一般不用),Struts 2(一般老项目使用)等。 简单使用 注意:以下步骤及编写的内容不全,只为说明框架相关的步骤,内容作为参考,请勿直接CV,实际内容以自己项目中为准(例如XML的版本、Spring的版本等) 1.导入相关依赖 <!-- Spring的版本 --> <properties> <spring.version>4.3.20.RELEASE</spring.version> </properties> <!-- SpringMVC的依赖 --> <dependencies> <dependency> <!-- 属于SpringFrameWork项目 --> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <!-- 与properties中的Spring的版本一致 --> <version>$

SpringMVC环境搭建

旧巷老猫 提交于 2020-01-17 15:24:39
SpringMVC需要用到的jar包下载: click SpringMVC执行过程分析 : 1、客户端发送请求到tomcat服务器。 2、SpringMVC的前端控制器收到所有请求,看请求地址和哪个RequestMapping匹配,就利用反射执行对应方法。 3、方法执行完后,SpringMVC利用视图解析器拼接字符串得到目标地址,前端控制器帮我们转发到目标页面。 注意 :index.jsp中的跳转链接 不能以 / 开头 ,否则会认为是根路径。而RequestMapping注解中value的 / 可加可不加。 一、IDEA的SpringMVC工程 1、创建工程并导入jar包 2、修改文件目录 3、改配置 ① web.xml配置(tomcat端) ② Spring配置 *.xml: < ? xml version = "1.0" encoding = "UTF-8" ? > < beans xmlns = "http://www.springframework.org/schema/beans" xmlns : xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns : context = "http://www.springframework.org/schema/context" xsi : schemaLocation =

SpringMVC的执行流程

谁都会走 提交于 2020-01-17 08:16:46
文章目录 SpringMVC的执行流程 **springMVC是什么:** SpringMVC的执行流程 1.用户请求进来,会先经过Dispatcherservlet (中央处理器) 2.Dispatcherservlet 去请求HandlerMapping找到具体的Handler(就是对应的RequestMapping)并返回给DispatcherServlet 3.Dispatcherservlet本身是不能直接调用Handler的,只能通过HandlerAdatper(处理器适配器)去调用,Handler处理完之后会返回一个ModelAndView给DispatcherServlet 4.Dispatcherservlet去找ViewResolver(视图解析器),视图解析器处理完之后返回一个view 5.Dispatcherservlet在将这个视图进行渲染(即将模型数据填充至视图中) 6.最后返回给页面 很多人可能对执行流程有疑惑,解释一下各个组件的作用 1. 前端控制器DispatcherServlet 作用:接收请求,响应结果,相当于转发器,中央处理器。有了dispatcherServlet减少了其它组件之间的耦合度。 用户请求到达前端控制器,它就相当于mvc模式中的c,dispatcherServlet是整个流程控制的中心,由它调用其它组件处理用户的请求

SpringMVC -> 处理及响应请求

萝らか妹 提交于 2020-01-17 08:00:37
一、基本操作 1.响应请求的方式 序号 响应方式 说明 1 不响应 void+ @ResponseBody 注解 2 ModelAndView 通过 setViewName 方法 3 直接指定响应页面 返回值为String类型,返回结果指定跳转地址 4 重定向 跳转地址前加 redirect: 前缀即可 5 HttpServletRequest和HttpServletResponse 形参中声明这两个变量。然后通过相关api跳转 ModelAndView @RequestMapping ( "/query" ) public ModelAndView query ( ) { System . out . println ( "query" ) ; ModelAndView mv = new ModelAndView ( ) ; mv . setViewName ( "/index.jsp" ) ; return mv ; } 返回void 返回值为void时,方法中可以不用做任何返回,例如下面代码: @RequestMapping ( "/test1" ) public void test1 ( ) { System . out . println ( "test1" ) ; } 此时,在浏览器端请求/test1接口,springmvc会默认去查找和方法同名的页面作为方法的视图返回

struts2和springmvc的区别

北城余情 提交于 2020-01-17 05:29:00
struts2和springmvc的区别 一、拦截机制的不同   Struts2是类级别的拦截,每次请求就会创建一个Action,和Spring整合时Struts2的ActionBean注入作用域是原型模式prototype,然后通过setter,getter吧request数据注入到属性。Struts2中,一个Action对应一个request,response上下文,在接收参数时,可以通过属性接收,这说明属性参数是让多个方法共享的。Struts2中Action的一个方法可以对应一个url,而其类属性却被所有方法共享,这也就无法用注解或其他方式标识其所属方法了,只能设计为多例。   SpringMVC是方法级别的拦截,一个方法对应一个Request上下文,所以方法直接基本上是独立的,独享request,response数据。而每个方法同时又何一个url对应,参数的传递是直接注入到方法中的,是方法所独有的。处理结果通过ModeMap返回给框架。在Spring整合时,SpringMVC的Controller Bean默认单例模式Singleton,所以默认对所有的请求,只会创建一个Controller,有应为没有共享的属性,所以是线程安全的,如果要改变默认的作用域,需要添加@Scope注解修改。   Struts2有自己的拦截Interceptor机制

springMVC + Spring + MyBatis 整合

一曲冷凌霜 提交于 2020-01-16 17:54:31
整理下SSM(基于注解)的整合 1. web.xml 配置文件 1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 5 http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> 6 7 <!-- log4j 配置 --> 8 <context-param> 9 <param-name>log4jConfigLocation</param-name> 10 <param-value>classpath:log4j.properties</param-value> 11 </context-param> 12 <context-param> 13 <param-name>log4jRefreshInterval</param-name> 14 <param-value>60</param-value> 15 </context-param> 16 <listener>

SpringMVC

旧时模样 提交于 2020-01-16 11:29:20
控制器接收各类请求参数 RESTful 风格,它往往会将参数写入到请求路径中,而不是以HTTP 请求参数传递,也有些应用需要传递的是JSON 接收普通请求参数 1.通过参数名称和 HTTP 请求参数的名称保持一致来获取参数,如果不一致是没法获取到的,这样的方式允许参数为空。 2.当HTTP请求参数过多的情况下,可以考虑虑使用一个 POJO 来管理这些参数,SpringMVC也有映射 POJO 能力,POJO 的属性需和 HTTP 参数一一对应 使用@RequestParam 注解获取参数 @RequestParam获取一个Http请求的参数,为其重新绑定规则,默认的情况下该参数不能为空,如果为空则系统会抛出异常。如果希望允许它为空,那么要修改它的配置项required=false 使用 URL 传递参数(符合RESTFUL风格) 需要@RequestMapping和PathVariable 两个注解共同协作完成 @RequestMapping ("/getRole /{id}") /{id}:代表处理器需要接受一个由 URL 组成的参数,且参数名称为 id,id值代表的是角色编号,只是它在 URL 中传递 (@PathVariable (“id”) Long id):表示将获取这个在@RequestMapping 中定义名称为 id 的参数,这样就可以在方法内获取这个参数 传递

ssm框架的整合(spring+ springMVC+MyBatis)

不羁岁月 提交于 2020-01-16 08:50:34
SSM框架整合 1.搭建环境 1.1 创建数据表 使用的是MySQL数据库,创建数据库名为ssm,再创建一张名为account的表。 CREATE DATABASE ssm; USE ssm; CREATE TABLE account( id INT PRIMARY KEY auto_increment, NAME VARCHAR(20), money DOUBLE ); 1.2 创建项目 本项目使用的是编写工具为IDEA,基于maven的WEB项目,首先新建项目new Project,如下图; [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SP4JsZQt-1579081351866)(C:\Users\yulu\Desktop\临时\img_1.png)] 然后选择Next,界面如下,填写项目有关信息; [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hN4kd2I9-1579081351867)(C:\Users\yulu\Desktop\临时\img_2.jpg)] 然后选择Next,界面如下,选择对应的maven版本; [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-n0TSHUre-1579081351867)(C:\Users\yulu\Desktop\临时\img_3.png

SpringMVC 入门

本秂侑毒 提交于 2020-01-16 05:35:29
MVC 简介 1、MVC 是一种架构模式 程序分层,分工合作,既相互独立,又协同工作,分为三层:模型层、视图层和控制层 2、MVC 是一种思考方式 View:视图层,为用户提供UI,重点关注数据的呈现,为用户提供界面 Model:模型层,业务数据的信息表示,关注支撑业务的信息构成,通常是多个业务实体的组合 Controller:控制层,调用业务逻辑产生合适的数据(Model),传递数据给视图用于呈现 MVC 设计模式在 B/S 下的应用: ①:浏览器发送请求到控制器(这里要知道控制器的作用) ②:控制器不能处理请求必须交给模型层来处理接着去访问数据库 ③:模型层将处理好的结果返回给控制层 ④:控制层将逻辑视图响应给浏览器(浏览器显示的是渲染过的视图) MVC 本质:MVC 的核心思想是业务数据抽取同业务数据呈现相分离;分离有利于程序简化,方便编程 前端控制器模式 前端控制器模式(Front Controller Pattern)是用来提供一个集中的请求处理机制,所有的请求都将由一个单一的处理程序处理。该处理程序可以做认证/授权/记录日志,或者跟踪请求,然后把请求传给相应的处理程序。 前端控制器(Front Controller)- 处理应用程序所有类型请求的单个处理程序,应用程序可以是基于 web 的应用程序,也可以是基于桌面的应用程序。 调度器(Dispatcher) -

struts2和springmvc的区别

我只是一个虾纸丫 提交于 2020-01-16 05:02:20
一、拦截机制的不同   Struts2 是 类级别 的拦截,每次请求就会创建一个Action,和Spring整合时Struts2的ActionBean注入作用域是原型模式prototype,然后通过setter,getter吧request数据注入到属性。 Struts2中,一个Action对应一个request,response上下文,在接收参数时,可以通过属性接收,这说明属性参数是让多个方法共享的。 Struts2中Action的一个方法可以对应一个url,而其类属性却被所有方法共享,这也就无法用注解或其他方式标识其所属方法了,只能设计为多例。    SpringMVC是 方法级别 的拦截,一个方法对应一个Request上下文,所以方法直接基本上是独立的,独享request,response数据。而每个方法同时又何一个url对应,参数的传递是直接注入到方法中的,是方法所独有的。处理结果通过ModeMap返回给框架。 在Spring整合时,SpringMVC的Controller Bean默认单例模式Singleton,所以默认对所有的请求,只会创建一个Controller,有应为没有共享的属性,所以是线程安全的,如果要改变默认的作用域,需要添加@Scope注解修改。    Struts2有自己的拦截Interceptor机制,SpringMVC这是用的是独立的Aop方式