springmvc注解

《SpringMVC从入门到放肆》九、SpringMVC注解式开发(简单参数接收)

…衆ロ難τιáo~ 提交于 2020-02-14 16:32:55
上一篇我们学习了注解式开发的配置方式并写了一个小Demo跑起来。今天我们来学习注解开发的参数接收。处理器方法中的常用参数有五类,这些参数会在系统调用时由系统自动赋值,即程序员可以在方法中直接使用。具体如下: 1:HttpServletRequest 2:HttpServletResponse 3:HttpSession 4:用户承载数据的Model 5:请求中所携带的请求参数 在进行参数接收之前我们先在/WebRoot/index.jsp下添加如下内容: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'index.jsp' starting page</title> </head> <body> <form action="${pageContext.request.contextPath }/user/register.do"> 姓名:<input name="name" type="text" /> 年龄:<input name="age" type="text" /> <input type=

SpringMVC 进阶

旧街凉风 提交于 2020-02-13 20:09:39
请求限制 一些情况下我们可能需要对请求进行限制,比如仅允许POST,GET等... RequestMapping注解中提供了多个参数用于添加请求的限制条件 value 请求地址 path 请求地址 method 请求方法 headers 请求头中必须包含指定字段 params 必须包含某个请求参数 consumes 接受的数据媒体类型 (与请求中的contentType匹配才处理) produce 返回的媒体类型 (与请求中的accept匹配才处理) 案例: @RequestMapping(value = "/editCourse",method = RequestMethod.POST,headers = {"id"},params = {"name"},consumes = {"text/plain"},produces = {"text/html"}) //含义:url为/editCourse 请求方法为POST hander必须包含id字段 参数必须包含name 只接受text/plain类型数据 返回数据类型为text/html 为了简化书写,MVC还提供了集合路径和方法限制的注解,包括常见的请求方法: PostMapping GetMapping DeleteMapping PutMapping 例: @PostMapping("/editCourse")

java详细面试题

时间秒杀一切 提交于 2020-02-13 06:00:23
struts和springMVC区别? stringbuffer和stringbuilder区别? mybatis原理? soa原理? dubbo的原理? solr怎么搭建,倒序索引? MQ消息队列? SQL语句? maven以及本地仓库? final关键字? 为什么使用ssm而不用ssh? struts2和springmvc区别? 开发工具,jvm,gc,设计模式,平时开发工程是你自己搭建吗? 项目中用到的技术dubbo,zookeeper,solr等? 这三年工作中你统计过自己的代码量大概有多少? redis是多例的还是单例的,在多线程时怎么使用? hashmap线程冲突怎么解决? 介绍一下spring,mybatis。aop用的是静态代理还是动态代理? 介绍电商项目,开发周期多长?技术人员有多少?任务怎么分配什么时候上线?项目模块? 说说你负责的模块的具体代码? 数据库表熟悉吗?有哪些字段? 为什么不使用HttpApi进行项目通信而使用dubbo? TCP和UDP的区别? http,https,ftp,sftp分别使用哪个协议? 给你一个mysql数据库,不使用硬件也不使用软件如何优化? SQL语句的执行顺序? 给你两个表写出笛卡尔积的结果? redis的list数据类型是双向队列,完全可替代MQ,为何还要使用MQ,dubbo的底层原理和实现?

SpringMVC

穿精又带淫゛_ 提交于 2020-02-12 22:00:22
Spring MVC 一、概述 1.使用Java语言基本上都是开发B/S架构的程序,B/S架构又分成了三层架构 2.三层架构 表现层:WEB层,用来和客户端进行数据交互的。表现层一般会采用MVC的设计模型 业务层:处理公司具体的业务逻辑的 持久层:用来操作数据库的 表现层框架(MVC设计模式) M model 模型 javabean V view 视图 如jsp C Controller 控制器 Servlet 二、组件 SpringMVC框架基于组件方式执行流程 1.DispatcherServlet:前端控制器 用户请求到达前端控制器,它就相当于 mvc 模式中的 c,dispatcherServlet 是整个流程控制的中心,由它调用其它组件处理用户的请求,dispatcherServlet 的存在降低了组件之间的耦合性。 2.HandlerMapping:处理器映射器 HandlerMapping 负责根据用户请求找到 Handler 即处理器,SpringMVC 提供了不同的映射器实现不同的 映射方式,例如:配置文件方式,实现接口方式,注解方式等。 3.Handler:处理器 : 它就是我们开发中要编写的具体业务控制器。由 DispatcherServlet 把用户请求转发到 Handler。由 Handler 对具体的用户请求进行处理。 4.HandlAdapter

SSM整合

空扰寡人 提交于 2020-02-12 00:07:44
SSM整合 在这之前我们已经学习了如何整合Spring和web项目,若要整合Spring,SpringMVC,Mybatis时,只需要在其基础上加入SpringMVC和MyBatis就可以了; 整合步骤: 1.准备空的web项目 2.在web.xml中配置Spring容器 3.在web.xml中配置SpringMVC核心控制器 4.整合MyBatis与Spring pom依赖: 主要依赖类别:,webmvc(会自动依赖Spring其他核心jar) , web基础的(jstl,jsp,servlet),mybatis ,事务管理, AspectJ <dependencies> <!-- spring + springwebmvc--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.2.RELEASE</version> </dependency> <!-- mybatis--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.3</version> </dependency>

SpringMVC 参数映射与文件上传

落爺英雄遲暮 提交于 2020-02-11 23:50:10
handler参数映射: 接下来就是Spring的各个处理细节了,无论框架如何疯转其实我们处理请求的流程是不变的,设计到的操作也是固定的,举个例子,当我们要实现一个登陆功能时: 创建一个用于处理登录请求的Servlet 实现doget等其他http方法(一些情况可能根据业务需要限制请求方法) 从request对象中取出数据 处理编码 验证参数是否符合要求 对参数数据类型进行转换(需要时) 开始业务逻辑处理(登录) 可能需要操作session来完成 组织响应给数据,可能是html可能是json, 异常处理 Header与cookie的处理 整个SpringMVC其实就是帮我们对上面的操作进行封装,当然了SpringMVC也提供了更多的功能,如国际化.. Handler方法特殊参数 在handler方法中我们可以添加一下参数,用于获取一些特殊的对象: HttpServletRequest,HttpServletResponse HttpSession Model ModelMap ​ model 是框架帮我们创建好的的Model对象,若使用该参数作为返回的model,则需要修改方法返回值为String用于指定视图名称; 案例: @RequestMapping("/courseList2.action") public String courseList(Model model) {

RequestMapping专题

浪子不回头ぞ 提交于 2020-02-10 03:02:20
1、springMVC使用@RequestMapping注解为控制器指定可以处理哪些URL请求 DispatcherServlet截获请求后就通过控制器上@RequestMapping提供的映射信息确定请求所对应的处理方法 @RequestMapping不仅可以修饰方法还可以修饰类 1)类定义处:提供初步的请求映射信息,相对于web应用的根目录 2)方法定义处:提供进一步的细分映射信息,相对于类定义处的URL,若类定义处未标记@RequestMapping,则方法标记的URL相对于WEB应用的根目录 1)修饰方法 1 package com.atguigu.springmvc.handlers; 2 3 import org.springframework.stereotype.Controller; 4 import org.springframework.web.bind.annotation.RequestMapping; 5 6 @Controller //这样标识后HelloWorld成为控制器,在springmvc叫做handler处理器或请求处理器 7 public class HelloWorld { 8 /** 9 * 1、使用@RequestMapping注解来映射请求的URL 10 * 2、返回值会通过视图解析器解析为实际的物理视图

【SpringMVC】SpringMVC系列2之@RequestMapping 映射约束请求

让人想犯罪 __ 提交于 2020-02-10 02:56:54
@RequestMapping 映射约束请求 2.1、映射请求URL Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些 URL 请求,在控制器的类定义及方法定义处都可标注。 类定义处:提供初步的请求映射信息。相对于 WEB 应用的根目录 方法处:提供进一步的细分映射信息。相对于类定义处的 URL。若类定义处未标注 @RequestMapping,则方法处标记的 URL 相对于WEB 应用的根目录 DispatcherServlet 截获请求后,就通过控制器上 @RequestMapping 提供的映射信息确定请求所对应的处理方法。简单示例如下: 2.2、映射请求方法、请求头、请求参数 @RequestMapping 除了可以使用请求 URL 映射请求外,还可以使用请求方法、请求参数及请求头映射请求。 @RequestMapping 的 value、method、params 及 heads分别表示请求 URL、请求方法、请求参数及请求头的映射条件,他们之间是与的关系,联合使用多个条件可让请求映射更加精确化。 params 和 headers支持简单的表达式: param1: 表示请求必须包含名为 param1 的请求参数 !param1: 表示请求不能包含名为 param1 的请求参数 param1 != value1: 表示请求包含名为

Spring Boot2 系列教程(一)纯 Java 搭建 SSM 项目

眉间皱痕 提交于 2020-02-10 02:55:28
在 Spring Boot 项目中,正常来说是不存在 XML 配置,这是因为 Spring Boot 不推荐使用 XML ,注意,并非不支持,Spring Boot 推荐开发者使用 Java 配置来搭建框架,Spring Boot 中,大量的自动化配置都是通过 Java 配置来实现的,这一套实现方案,我们也可以自己做,即自己也可以使用纯 Java 来搭建一个 SSM 环境,即在项目中,不存在任何 XML 配置,包括 web.xml 。 环境要求: 使用纯 Java 来搭建 SSM 环境,要求 Tomcat 的版本必须在 7 以上。 快速体验 1 创建工程 创建一个普通的 Maven 工程(注意,这里可以不必创建 Web 工程),并添加 SpringMVC 的依赖,同时,这里环境的搭建需要用到 Servlet ,所以我们还需要引入 Servlet 的依赖(一定不能使用低版本的 Servlet),最终的 pom.xml 文件如下: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.1.6.RELEASE</version> </dependency> <dependency> <groupId>javax.servlet<

springmvc学习(二)——使用RequestMapper请求映射

若如初见. 提交于 2020-02-10 02:52:27
本次内容是@RequestMapping,后面会有实例代码 Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些 URL 请求在控制器的类定义及方法定义处都可标注@RequestMapping @RequestMapping不仅可以修饰类,还可以修饰方法。 类定义处 :提供初步的请求映射信息。相对于 WEB 应用的根目录 方法处 :提供进一步的细分映射信息。相对于类定义处的 URL。若类定义处未标注 @RequestMapping,则方法处标记的 URL 相对于WEB 应用的根目录 DispatcherServlet 截获请求后,就通过控制器上 @RequestMapping 提供的映射信息确定请求所对应的处理方法。 映射请求参数、请求方法或请求头 @RequestMapping 除了可以使用请求 URL 映射请求外, 还可以使用请求方法、请求参数及请求头映射请求 @RequestMapping 的 value、method、params 及 headers 分别表示请求 URL、请求方法、请求参数及请求头的映射条件,他们之间是与的关系,联合使用多个条件可让请求映射更加精确化。 params 和 headers支持简单的表达式: param1: 表示请求必须包含名为 param1 的请求参数 !param1: 表示请求不能包含名为 param1