点击上方“IT咸鱼”,星标公众号每天分享技术栈,开发工具等

简单急记几个小点:RequestMapping注解的使用和里面涉及到的参数用途和写法

@RequestMapping("/url")

源码:

@Target({ElementType.METHOD, ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented @Mapping public @interface RequestMapping { }

作用:用于建立请求URL和处理请求方法之间的对应关系。出现位置:类上, 请求URL的第一级访问目录。此处不写的话,就相当于应用的根目录。写的话需要以/开头。属性: value:用于指定请求的URL。它和path属性的作用是一样的。method:用于指定请求的方式。 params:用于指定限制请求参数的条件。它支持简单的表达式。要求请求参数的key和value必须和配置的一模一样。例如:params = {"accountName"},表示请求参数必须有accountName params = {"moeny!100"},表示请求参数中money不能是100。 headers:用于指定限制请求消息头的条件。注意:以上四个属性只要出现2个或以上时,他们的关系是与的关系。

ModelAttribute和SessionAttribute 

知道这两个的作用吗ModelAttribute和SessionAttribute 相信有基础的人都应该知道ModelAttribute当表单提交数据不是完整的实体类数据时是保证没有提交数据的字段使用数据库对象原来的数据。栗子:我们在编辑一个用户时,用户有一个创建信息字段,该字段的值是不允许被修改的。在提交表单数据是肯定没有此字段的内容,一旦更新会把该字段内容置为null,此时就可以使用此注解解决问题。SessionAttribute作用:用于多次执行控制器方法间的参数共享。属性:value:用于指定存入的属性名称 type:用于指定存入的数据类型。我们近来常常能听到说使用这个Restful风格写代码让我们的代码变得更优雅,更简洁明了结构清晰、符合标准、易于理解、扩展方便,得到越来越多网站的采用。在这里就搞搞这个。RESTful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种url设计风格。基于这个风格设计的软件可以更简洁,更有层次。资源:互联网所有的事物都可以被抽象为资源 url(只要互联网上的事物可以用一个url来表示,那么它就是一个资源)资源操作:使用POST、DELETE、PUT、GET不同方法对同一资源(同一url)进行操作。分别对应 添加、 删除、修改、查询资源(Resources):网络上的一个实体,或者说是网络上的一个具体信息。它可以是一段文本、一张图片、一首歌曲、一种服务,总之就是一个具体的存在。可以用一个URI(统一资源定位符)指向它,每种资源对应一个特定的 URI 。要获取这个资源,访问它的URI就可以,因此 URI 即为每一个资源的独一无二的识别符。表现层(Representation):把资源具体呈现出来的形式,叫做它的表现层(Representation)。比如,文本可以用 txt 格式表现,也可以用 HTML 格式、XML 格式、JSON 格式表现,甚至可以采用二进制格式。状态转化(State Transfer):每 发出一个请求,就代表了客户端和服务器的一次交互过程。HTTP协议,是一个无状态协议,即所有的状态都保存在服务器端。因此,如果客户端想要操作服务器,必须通过某种手段,让服务器端发生“状态转化”(State Transfer)。而这种转化是建立在表现层之上的,所以就是 “表现层状态转化”。具体说,就是 HTTP 协议里面,四个表示操作方式的动词:GET、POST、PUT、DELETE。它们分别对应四种基本操作:GET 用来获取资源,POST 用来新建资源,PUT 用来更新资源,DELETE 用来删除资源。传统方式操作资源操作啥(原来url)?操作谁(传入的参数)url中先定义动作,然后传递的参数表明这个动作操作的是哪个对象(数据)先定位动作,然后定位对象http://localhost:8080/springmvc02/user/queryUserById.action?id=1查询http://localhost:8080/springmvc02/ user /saveUser.action 新增http://localhost:8080/springmvc02/ user /updateUser.action 更新http://localhost:8080/springmvc02/ user /deleteUserById.action?id=1 删除 使用RESTful操作资源先定义对象http://localhost:8080/springmvc02/user/1操作的对象)查询,GEThttp://localhost:8080/springmvc02/ user新增,POSThttp://localhost:8080/springmvc02/ user更新,PUThttp://localhost:8080/springmvc02/ user /1删除,DELETEhttp://localhost:8080/springmvc02/ user /1    删除,DELETE‍‍‍‍‍‍‍‍‍‍

Http主要的请求方式
get 主要是想做select
post 主要是想做insert
put 主要是想做update
delete 主要是想做delete

以上是http协议的标准请求方式,当然你用post请求也完全可以完成crud操作(因为归根结底无非就是把参数传递到后台对应处理即可)

HiddentHttpMethodFilter过滤器 

作用:由于浏览器 form 表单只支持 GET 与 POST 请求,而DELETE、PUT 等 method 并不支持,Spring3.0之后添加了一个过滤器,可以将浏览器请求改为指定的请求方式,发送给我们的控制器方法,使得支持 GET、POST、PUT 与DELETE 请求。第一步:在web.xml中配置该过滤器

第二步:请求方式必须使用post请求第三步:增加请求参数_method,该参数的取值就是我们需要的请求方式

<div><h2>SpringMVC对Restful风格url的支持h2><fieldset><p>测试用例Use_case11:SpringMVC对Restful风格url的支持p>

第四步:后台接收

@RequestMapping(value = "{id}",method = RequestMethod.GET)

Json数据交互 

Json数据是咱们企业级开发数据交互经常使用的一种方式,它比较轻量级,格式比较清晰Json数据交互:方向一:前端传递json字符串到后台,后台如何能够自动转换为pojo对象;方向二:后台return 对象,能否前端直接接收到json格式的字符串@RequestBody注解作用:用于获取请求体(按照http协议进行一个完整的封装,往往都是由请求头+请求体等组成)内容,不适用于Get请求方式更多的是用于将JSON字符串转换为POJO对象

引入json相关jar坐标<dependency>  <groupId>com.fasterxml.jackson.coregroupId>  <artifactId>jackson-coreartifactId>  <version>2.9.0version>dependency><dependency>  <groupId>com.fasterxml.jackson.coregroupId>  <artifactId>jackson-databindartifactId>  <version>2.9.0version>dependency><dependency>  <groupId>com.fasterxml.jackson.coregroupId>  <artifactId>jackson-annotationsartifactId>  <version>2.9.0version>dependency>

@ResponseBody注解作用:该注解用于将Controller的方法返回的对象转换为json字符串返回给客户端代码:

"sendJsonStr")

要应用案例主页嘀嘀作者哦!!!

Spring框架中的SpringMVC案例及小点解释 (一)

2020-11-11

Servlet详解(一)之基本概念

2020-10-22

专攻知识小点——回顾JavaWeb中的servlet(二)

2020-10-24

专攻知识小点——回顾JavaWeb中的servlet(三)

2020-10-25

温故知新之javaweb中的servlet(四)

2020-10-27

HttpServletRequest详解 外加请求转发和重定向口述讲解(五)

2020-10-28

END
如果看到这里,说明你喜欢这篇文章,请 转发、点赞。同时 标星(置顶)本公众号可以第一时间接受到博文推送。
我知道你 “在看

layuiajax提交表单控制层代码_究竟怎么用Restful风格编代码必看这篇。(二)相关推荐

  1. layuiajax提交表单控制层代码_有奖直播TI最新低成本 C2000特性解读,快速上手精细电源与电机控制!...

    在不断发展的汽车和工业电源转换市场中,设计人员正在寻求能够帮助他们应对两个关键设计挑战的创新:如何轻松扩展实时控制资源?以及如何构建和维护长期的平台解决方案? 长按下方二维码,预约直播:TI最新C20 ...

  2. layuiajax提交表单控制层代码_Ninja Forms:免费的联系表单插件,却提供了付费表单才有的功能【视频+图文】...

    Ninja Forms不仅能够可视化创作询盘表单,还能记录询盘.添加隐藏字段.添加反垃圾验证.提交表单时可设置多个动作,这在Wpforms插件中可都是付费功能,同时,Ninja Form激活安装量一百 ...

  3. layuiajax提交表单控制层代码_漏洞预警|ThinkPHP 5.0 远程代码执行

    漏洞预警|ThinkPHP 5.0 远程代码执行 2019-01-11 事件来源 2019年1月11日,ThinkPHP Github仓库发布了新的版本v5.0.24,包含重要的安全更新,山石安服团队 ...

  4. layuiajax提交表单控制层代码_无代码搭建系统(一)——流程表单搭建

    迎着2020疫情带来的线上办公.远程协同办公,把无代码带上风口浪尖,众多无代码厂商迅速发展起来,推出自己的无代码产品.实现全民开发,是无代码发展的愿景和目标.数字化和网络化使各行各业的客户对应用开发的 ...

  5. 提交表单到mysql数据库_记录第一次实现表单数据提交到数据库

    ​经过几周的Web前端学习我初步对.html文件.php文件有了一定的了解.首先我们来复习一下学过的知识. HTML页面实际上就是静态的网页页面,我们可以用html+css(层叠样式表)来创作出具有不 ...

  6. html提交表单使用python计算_教你使用Python实现新个税计算器

    自从采用新个税计算方法后,每个月发工资你是否真的清楚扣多少税? 今天跟大家分享下如何计算,希望大家喜欢. 计税方法科普 个税方法 这里需要知道的知识点: 1.个税起征点调到 5000: 2.累积预扣法 ...

  7. html提交表单使用python计算_使用python+tushare计算期权隐含波动率并作图

    前言 这其实是我们一次课程作业,以上证50ETF期权为例说明波动率微笑现象.按习惯我先上网搜了一下看有没有前辈写过这样的代码,毕竟重复造轮子不好嘛.没想到真的有,原文链接:https://www.ji ...

  8. php程序layer,php 提交表单 关闭layer弹窗iframe的实例讲解

    介绍一款非常好用的前端弹窗插件: 根据官方的API:layer的iframe弹窗 //iframe层-父子操作 layer.open({ type: 2, area: ['700px', '530px ...

  9. VIEW层AJAX提交表单到Controller的实体(AJAX传递序列化的输入元素)

    在MVC环境中,AJAX方式添加一个对象,这个对象在Models中是一个视图模型,在前台显示时是这样的代码: <%using (Html.BeginForm())       { %>   ...

最新文章

  1. 画一个皮卡丘项目小结(4)
  2. php离开界面监听,js实现用户离开页面前提示是否离开此页面的方法(包括浏览器按钮事件)...
  3. python输出键值列表_Python 键值分组或分区数据
  4. 寻找内存泄漏:一个案例研究
  5. 【实践案例】Databricks 数据洞察在美的暖通与楼宇的应用实践
  6. stream+springmvc实现文件断点续传
  7. 邹建的实现分页的通用存储过程
  8. CSS样式小项目实战 - 网页变色小按钮
  9. 固态硬盘ssd的寿命如何计算,固态硬盘质量怎么检测?
  10. 每天努力再多一点,每天坚持再久一点
  11. 22长安杯——个人赛
  12. 解密回声消除技术--转
  13. java多线程-线程的停止【interrupt】
  14. oppor9桌面布局设置_oppor9添加桌面图标
  15. OSCHINA开源中国
  16. 随笔-OC获取系统时间,获取绝对时间,获得真实时间
  17. 2016年西安地区各互联网公司薪资概况
  18. 图解ReentrantLock底层公平锁和非公平锁实现原理
  19. 比百度地图.api更方便的测量面积方法
  20. 2022-2028年中国植物工厂行业发展动态及投资规划分析报告

热门文章

  1. Android面试知识点(转)
  2. XOOM MZ606 刷机
  3. user-select介绍
  4. [公告]向大家汇报服务器的情况
  5. Uva10191 复合词
  6. vb 搜索指定目录下的指定类型文件
  7. 20080330 - strong-typing and weak-typing
  8. 关于树论【LCA树上倍增算法】
  9. 机智云5.0推出IoT套件GoKit4.0 可实现物联网应用协同开发
  10. 移植opencv2.4.9到itop4412开发板