springmvc请求的处理流程
1)发起some.do
2) tomcat(web.xml–url-pattern知道*.do的请求给DispatcherServlet)
3)DispatcherServlet(根据springmvc.xml配置知道some.do—dosome()方法)
4)框架执行dosome()把得到的ModelAndView进行处理,转发到show.jsp

上面的过程简化的方式:
some.do–>DispatcherServlet–>MyController


实现步骤
1:新建web maven工程
2:加入依赖:
spring-webmvc依赖,间接把spring的依赖加入到项目
jsp,servlet依赖
3:重点:在web.xml中注册springmvc框架的核心对象DispatcherServlet
1)DispatcherServlet:中央调度器,是一个Servlet,它的父类继承httpServlet
2)DispatcherServlet页叫前端控制器(front controller)
3)DispatcherServlet负责接收用户提交的请求,调用其他的控制器对象,并把处理结果显示给用户
4:创建一个发起请求的页面 index.jsp
5:创建控制器类
1)在类上加入@controller注解,创建对象,并springmvc容器中
2)在类中的方法上加@RequestMapping注解
6:创建一个作为结果的jsp,显示请求的处理结果
7:创建springmvc的配置文件(与spring的配置文件一样)
1)声明组件扫描器,指定@Controller所在的包名
2)声明视图解析器,帮助处理视图

接收请求参数,使用处理器方法的形参
1)HttpServletRequest
2)HttpServletResponse
3)HttpSession
4)用户提交的数据

接收用户提交的数据
1:逐个接收
2:对象接收

注意:在提交请求参数的时候,get请求方式中文没有乱码
使用post请求方式时,中文乱码,需要使用过滤器处理乱码问题
过滤器可以自定义,也可以使用框架中提供的过滤器CharacterEncodingFilter
逐个接收请求参数
要求:处理器(控制器)方法的形参名与请求中参数名必须一致,同名的请求参数赋值给同名的形参
架构接收请求参数
1)使用request对象接收请求参数
String strName = request.getParameter(“name”)
String strAge = request.getParameter(“age”)
2) springmvc框架通过DispatcherServlet调用 Mycontroller的dosome()方法
调用方法时,按名称对应,把接收的参数赋给形参
dosome(strName,Integer.valueof(strAge))
框架会提供类型转换的功能,把String转换成int、long、float等类型
问:请求中参数名与处理器方法的形参名不一样怎么解决?
使用@RequestParam:
属性:1.value: 请求中的参数名称
2.required:boolean类型,默认为true
true表示请求中必须包含此参数
使用位置:
在处理器方法形参定义的前面

Springmvc开发流程(入门)相关推荐

  1. SpringMVC开发流程

    SpringMVC开发流程 1. SpringMVC概述 1.1 SpringMVC概念 1.2 SpringMVC原理 1.3 SpringMVC优势 2. MVC模式回顾 3. 入门程序 3.1 ...

  2. springMVC请求流程详解

    SpringMVC框架是一个基于请求驱动的Web框架,并且使用了'前端控制器'模型来进行设计, 再根据'请求映射规则'分发给相应的页面控制器进行处理.核心流程: 第一步:发起请求到前端控制器(Disp ...

  3. 如何做推荐系统 java_Java程序员的日常——SpringMVC+Mybatis开发流程、推荐系统

    今天大部分时间都在写业务代码,然后算是从无到有的配置了下spring与mybatis的集成. SpringMVC+Mybatis Web开发流程 配置数据源 在applicationContext.x ...

  4. SpringMVC+Mybatis框架集成开发基础——项目开发流程——01

    项目开发一般流程: 1.描述项目的主要功能及各个模块的功能 2.系统采用的技术方案 3.创建E-R模型图(实体关系模型图,数据库)​​​​​​ 4.搭建数据库环境.创建数据库表及表间约束 5.搭建项目 ...

  5. 给硬件工程师的入门课-硬件开发流程

    矩不正,不可为方:规不正,不可为圆.--淮南子 成功开发一款电子产品,最重要的是什么?为什么华为涉足哪个领域,(计算.光伏.汽车.手机.手表等),都能做的很强呢? 我认为重要的一点是流程.华为很早就向 ...

  6. 《51单片机应用开发从入门到精通》——1.1 单片机开发流程

    本节书摘来异步社区<51单片机应用开发从入门到精通>一书中的第1章,第1.1节,作者:张华杰 ,更多章节内容可以访问云栖社区"异步社区"公众号查看 1.1 单片机开发流 ...

  7. linux内核开发入门二(内核KO模块介绍、开发流程以及注意事项)

    linux内核开发入门二(内核KO模块介绍.开发流程以及注意事项) 一.什么是内核模块 内核模块:ko模块(Kernel Object Module)是Linux内核中的可加载模块,它可以动态地向内核 ...

  8. 【FPGA入门教程】(二)FPGA学习路线及开发流程

    一.FPGA学习路线 工具使用 -> 语法学习 -> 逻辑设计 -> IP使用 ->接口设计 -> 时序分析 -> 片上系统 1.工具使用 Altera:Quart ...

  9. 新手入门必读:一款手游的开发流程是怎样的?

    手游行业的爆发,让很多人对这个高流水的捞金行业趋之若鹜,其中有刚毕业的小青年,也有半路出家转行进来的,不论怎样对于手游行业来说他们都是"新人",所以基础知识就变得尤为重要了.本文将 ...

最新文章

  1. WinCE5.0移动平台开发笔记(c#中使用多线程访问winform中控件的若干问题(zt))
  2. 判断SIM卡属于哪个移动运营商
  3. 第五次课:Python 数据类型(一)
  4. GitHub学习笔记
  5. 玩转Mixly – 3、Arduino AVR编程 之 控制
  6. 辅助类BinaryTreeNodeLeftChildRightSibling(左孩子右兄弟,二叉树结点)
  7. python中的命名空间_深入理解Python中的命名空间和范围
  8. tomcat启动(五)Catalina分析-service.init
  9. VisualStudio异常处理 —— LNK1112 模块计算机类型“x64”与目标计算机类型“X86”冲突
  10. Eclipse 取消import自动补全具体的类名
  11. java 将汉字编码_JAVA中的汉字编码问题
  12. 全球首个用户分享区块链+AI大数据体系,专业跨境医疗机构“海医通”发布XMC“海医链”
  13. CSP 202112-3 登机牌条码 (详细图解)
  14. InstallShield vs2015 的安装与激活
  15. 京东前端:三级列表页持续架构优化
  16. Android 微信支付加密
  17. wifi 小程序 透传_微信小程序实现的一键连接wifi功能示例
  18. 虚拟化、虚拟机等概念理解
  19. 使用Maven控件proguard-maven-plugin给可执行jar文件混淆
  20. 梦几月,醒几年,今夕是何年。又一年,任时光流逝,回首已是2022年

热门文章

  1. 22、R329刷机受阻和测试仿真环境demo
  2. Shell文件查找之find命令(1)
  3. 小米6设置位置服务器,小米6手机这样设置最科学
  4. Spring Boot入门教程(四十六): @Async
  5. Struct复杂数据类型的UDF编写、GenericUDF编写
  6. windows下安装weblogic11g集群 BEA-149509报错
  7. BZOJ4833 [Lydsy1704月赛]最小公倍佩尔数
  8. 归一化处理的目的和意义及其MATLAB方法
  9. 如何从Confluence数据库手动删除陈旧草稿
  10. 计算机硬件 软件指什么,什么叫软件,什么又叫硬件呀?(是电脑知识)