SpringMVC与ajax数据传递方式

UOS忘记密码别慌!用LiveCD工具5分钟搞定,附命令行救援模式详细步骤 本文详细介绍了UOS系统密码遗忘时的两种解决方案:图形化LiveCD工具和命令行救援模式。针对普通用户,LiveCD工具提供5分钟快速重置密码的便捷操作;而技术人员可通过命令行深度解析系统分区挂载与密码修改流程。文章还包含安全加固建议,帮助用户预防类似问题发生。 阅读详情

1.springmvc+ajax交互方式:

1.1.text类型数据

$.ajax({
          url:'${pageContext.request.contextPath}/zy/user/existLoginName',//请求地址
          type:'post',//请求类型
          data:{loginName:$("#loginName").val()},//传入后台数据
          dataType:'text',//后台返回数据类型
          success : function(data) {
         alert("成功!");
       },
          error:function(data){
              alert("服务器异常!");
          }
    })
@RequestMapping("/existLoginName")
    public void existLoginName(HttpServletRequest request,HttpServletResponse response){
        String zh = request.getParameter("loginName");
        User u = userService.selectUserByLoginName(zh);
        try {
            if(u!=null){
                response.getWriter().write("exist");
            }else{
                response.getWriter().write("ok");
            }
        } catch (IOException e) {
                e.printStackTrace();
        }    
    }

1.2.json类型数据

后台@ResponseBody传数据到前台

$.ajax({
         url:'${pageContext.request.contextPath}/user/existLname',
         type:'post',
         dataType:'json',
         data:{loginName:$("#loginName").val()},
         success:function(data){
            alert(data.msg);
          }
     //注意:这里不能加下面这行,否则数据会传不到后台
        //contentType:'application/json;charset=UTF-8',
        })
@RequestMapping("/existLname")
 @ResponseBody
 public Map<String, String> searchUser(String loginName){
    User u= userService.selectUserByLoginName(loginName);
     Map<String,String> map = new HashMap<String,String>();
     if(u!=null){
       map.put("msg", "no");
    }else{
      map.put("msg", "ok");
    }
    return map;
 }

@RequestBody接收数据

$.ajax({
                        url:'${pageContext.request.contextPath}/user/existLname',
                        type:'post',
                        contentType:'application/json;charset=UTF-8',//必须有
                        dataType:'json',
                        data:{loginName:$("#loginName").val()},
                        success:function(data){
                            alert(data.msg);
                        }
                    })
@RequestMapping("/existLname")
    @ResponseBody
    public String searchUser(@RequestBody String loginName){
        User u= userService.selectUserByLoginName(loginName);
        JSONObject jo = new JSONObject();
        if(u!=null){
            jo.put("msg", "no");
        }else{
            jo.put("msg", "ok");
        }
        return jo.toString();
    }

2、GET、POST、PUT、DELETE请求方式总结

1、GET

get请求是用来获取数据的,只是用来查询数据,不对服务器的数据做任何的修改,新增,删除等操作。
在这里我们认为get请求是安全的,以及幂等的。安全就是指不影响服务器的数据,幂等是指同一个请求发送多次返回的结果应该相同。
特点:
get请求会把请求的参数附加在URL后面,这样会产生安全问题,如果是系统的登陆接口采用的get请求,需要对请求的参数做一个加密。
get请求其实本身HTTP协议并没有限制它的URL大小,但是不同的浏览器对其有不同的大小长度限制

2、POST
post请求一般是对服务器的数据做改变,常用来数据的提交,新增操作。
特点:
post请求的请求参数都是请求体中
post请求本身HTTP协议也是没有限制大小的,限制它的是服务器的处理能力

3、PUT
put请求与post一样都会改变服务器的数据,但是put的侧重点在于对于数据的修改操作,但是post侧重于对于数据的增加。

4、DELETE
delete请求用来删除服务器的资源。

3、SpringMVC 页面数据传递到后台的几种方式

https://blog.youkuaiyun.com/benxiaohai888/article/details/78529295

方式一 通过@RequestParam注解来接收

方式二 直接用同名变量来接收

方式三 通过request来接收

下面我们借用a标签来携带数据传递到后台继续测试,a标签提交的方式为GET提交。

准备一个测试jsp页面index.jsp,内容如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
	<h3>SpringMV参数传递测试</h3>
	<a href="mfc/showwithparam?msg=welcomespringmvcparam">测试带参数(@RequestParam注解来接收)</a>
	<br />
	<a href="mfc/showwithparam2?msg=welcomespringmvcparam">测试带参数(同名变量来接收)</a>
	<br />
	<a href="mfc/showwithrequest?msg=welcomespringmvcparam">测试带参数(request来接收)</a>
	<br />
</body>
</html>

下面是分别使用三种方式接收数据的方式:

方式一 通过@RequestParam注解来接收

@Controller
@RequestMapping("mfc")
public class MyFirstController {
	/**
	 * 传递参数到控制器的的一种方式(@RequestParam注解来接收)
	 * 
	 * @param str
	 * @return
	 */
	@RequestMapping(value = "showwithparam")
	public String showWithParam(
			@RequestParam(value = "msg", required = false, defaultValue = "默认值") String str) {
		System.out.println("showwithparam...");
		System.out.println("接收页面传递的参数msg:" + str);
		return "main";
	}	
}

代码解释:通过@RequestParam来接收参数, 表示页面传递参数的名字叫msg,这里定义一个名叫str的变量来接收msg的值,这种方式,要求必须传递过来一个名叫msg的参数,没有传递这个参数的时候就会出现400错误

方式二 直接用同名变量来接收

@Controller
@RequestMapping("mfc")
public class MyFirstController {
 
 
	/**
	 * 传递参数到控制器的的二种方式(同名变量来接收)
	 * 
	 * @param msg
	 * @return
	 */
	@RequestMapping(value = "showwithparam2")
	public String showWithParam2(String msg) {
		System.out.println("showWithParam2...");
		System.out.println("接收页面传递的参数msg:" + msg);
		return "main";
	}
}

代码解释:这里添加了一个参数msg,这个参数和页面提交的数据的名称一致为msg,不管页面是否传递msg参数,都不会报错,传递了,就接收,没有传递,就是null。

方式三 通过request来接收

@Controller
@RequestMapping("mfc")
public class MyFirstController {
 
	/**
	 * 在业务方法中,如果需要使用到内置对象,只需要在方法中,定义对应的形参,即可。
	 * 
	 * @param request
	 * @return
	 */
	@RequestMapping(value = "showwithrequest")
	public String showWithRequest(HttpServletRequest request) {
		System.out.println("showwithrequest...");
		String msg = request.getParameter("msg");
		System.out.println("通过request接收的msg:" + msg);
		return "show";
	}
}
NTscan扫描工具 ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。 立即下载

相关推荐

Py6S安装失败?手把手教你解决‘6S executable not found‘错误

本文详细解析了Py6S安装过程中常见的'6S executable not found'错误,提供了从MinGW-w64安装到Fortran编译器配置的完整解决方案。通过优化编译环境和进阶技巧,帮助用户高效完成大气辐射传输建模,提升科学计算效率。

x1y2z的博客 642

MVC中Ajax的简单实现(多种传值方法)

这几天在练习下MVC中Ajax中视图与控制器之间传值问题,时不时有些写法错误,导致传值失败,特把成功传值实现方法写下。 Index.cshtml视图 $(function () { $('#tbx1').blur(function () { //使用$.post等同与$.ajax中type:post //

Coder 8909

高缺失率时空数据插补实战:从随机森林到扩散模型的性能对比

数据缺失是数据分析与机器学习建模中普遍面临的挑战,尤其在时空数据领域,传感器故障、传输中断等问题常导致数据不完整。数据插补技术旨在基于已知数据的模式和关联性,合理估算缺失值,为后续分析提供可靠基础。其核心原理在于利用数据的时空相关性(如时间周期性、空间邻近性)及与外部驱动因素(如交通、气象)的关联构建预测模型。这项技术的价值在于能将不完整的数据集转化为可用于高质量分析和预测的可用资产,广泛应用于环境监测、交通流量预测、金融风控等领域。本文聚焦于一个极具挑战性的场景——PM2.5监测数据缺失率高达82%,通过

weixin_30363285的博客 544

解决SpringMVC 发送方式post 请求头content-type = text/plain后端接收为乱码

如果不生效则检查是否放在过滤器最前面,如果还解决不了乱码,移步狂神彻底解决乱码。1、controller接收到中文乱码问题。配置springmvc中文乱码过滤器。2、controller返回中文乱码。@RequestMapping中配置。springmvc源码问题。

huan1213858的博客 848

BQ40Z50R2循环学习实战:量产文件生成与关键状态位解析

本文详细解析了TI BQ40Z50R2电量计循环学习(Golden Learning)的实战流程与量产文件生成方法。重点剖析了updateStatus状态位在充放电静置阶段的常见异常(如卡在0x04或跳至0x0E)及其根本原因,并提供了从环境控制、命令顺序到文件处理的完整避坑指南,帮助工程师高效完成量产配置。

weixin_29170327的博客 214

基于物联网技术智慧园林绿化养护管理信息平台

近几年来,随着经济不断的发展,城市面积不断的扩大,城市管理中的园林绿化工作也在这种趋势下不断的发生着深刻改变。管养企业是否按制定的管养计划严格执行?绿化事件整改是否及时到位?绿地面积是否在稳步增长?管养的效果如何?如何客观评价管养企业的管养工作?这些都是我们各级管理者需要面对的问题。   智慧园林绿化养护管理信息平台的开发思路以“考核”为核心,整个信息平台体现出“新、快、高、全、享”五个特点。   智慧园林绿化养护管理信息平台的整个开发理念为:依托五大技术手段(全球卫星定位系统技术、地理信...

Cesium的博客QQ2252224326 2459

SpringMVC与Ajax的交互详解

SpringMVC与Ajax的交互 一、ajax的实现 ajax异步请求 javaScript and xml 异步请求 1、同步请求和异步请求 1、异步请求 特点:请求响应回来页面不动 只刷新页面局部 2、同步请求 特点:响应回来全部刷新(地址栏,超链接,表单 js的location.href="") 3、通过Ajax发送的请求都是异步请求 多请求之间并行处理 请求之间不会相互影响 2、Ajax实现异步请求 Ajax发送请求 通过js的异步请求对象发送请求 xhr XMLHttpRequest js实现

程序员小王的博客 5468

汇川AM系列后台安全管理与用户权限的设置方法

汇川AM系列后台安全管理与用户权限的设置方法。

viixin的博客 8457

前后端传值的基本方法-基于springMVC,ajax 以及注意事项

外观简约:前端ajax异步传值以及后端接收参数的几种方式 - 姜飞祥 - 博客园 (cnblogs.com) 原文:ajax异步传值|前后台传值|EL表达式 - 简书 (jianshu.com) 注意事项: 后端注解是基于==SpringMVC==(@ResponseBody,@RequestParam…),Structs的话需要通过Response.getWriter().write来返回数据(ajax的success后需要接收后台的数据,springmvc用responseBody注解即可用write也

热干面 1322

ubuntu20.04升级OpenSSH

业务需求,需要将服务器的OpenSSH版本从8.2升级到最新版本(9.9),由于apt能提供的最新版本就是8.2,所以需要采用源码安装的方式。

xiamu66的博客 1525

Python爬虫案例:从39问医生网爬取口腔科的在线问答记录(单轮问答)

本次实验爬取39问医生网中口腔科分类下的所有在线单轮问答记录,每页32条,共100页,总数据量为3200条,最终结果以excel格式保存。

JieBao11的博客 1643

ajax传multipartfile,使用ajax文件上传和MultipartFile的Spring MVC

我的解决方案:@RequestMapping(value = "/create/upload", method = RequestMethod.POST, consumes="multipart/form-data", produces="application/json")@ResponseBody()public String handleImageUpload(@RequestParam(v...

weixin_42397024的博客 901

AIGC 算法工程师面试八股文全解析:Diffusion Models 原理、推导与实战要点

特性 | 重参数化技巧 (Reparameterization Trick) |本质| 将随机变量的采样过程从不可导的随机操作转换为可导的确定性函数与一个已知分布的随机噪声的组合。目的。

m0_71589036的博客 403

SpringMvc+ajax 实现json格式数据传递

SpringMvc+ajax 实现json格式数据传递: 传JSON对象 前   端 function test () { var param = {username : "yitop"}; $.ajax({ timeout : 20000, type : "POST", dataType : "JSON", ...

lelly52800的博客 611

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

springMvc 接收 ajax传递Map,list,对象的方式

一. Map 传递和接收 前端ajax写法: 错误写法 var submitMap=function () { var params={}; params['aa']="aa"; params['bb']="bb"; $.ajax({ url:"/acceptMap", data:{params:params}, ...

shan_zhi_jun的博客 1753

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

SpringMVC接收ajax传递的list或数组对象

SpringMVC通过ajax传递参数list对象或传递数组对象到后台 环境: 前台传递参数到后台 前台使用ajax,后台使用SpringMVC(版本为4.1.9) 传递的参数是N多个对象 JSON对象和JSON字符串在SpringMVC的区别: 在SpringMVC环境中,@RequestBody接收的是一个Json对象的字符串,而不是一个Json对象。 然而在ajax请求往往传的...

不抛弃、不放弃:Aaron莫言 734

spring mvc ajax登录验证,springMVC框架中的ajax验证

当然,你在使用springMVC之前需要进行环境的配置,这里就不讲了,直接上代码.在使用springMVC之前,我在使用ajax验证的时候,需要用到一个解析json的jar包:将数据通过ajax拿到后台servlet,再通过jsonObject对象进行来像前台进行数据的传递.像下面这样:JSONObject j = newJSONObject();request.setCharacterEncod...

weixin_39713833的博客 343

ajax参数传递与后台接收

ajax参数传递与后台接收

xc_oo0的博客 795

springmvc ajax传list,springMVC通过ajax传递参数list对象或传递数组对象到后台

springMVC通过ajax传递参数list对象或传递数组对象到后台环境: 前台传递参数到后台 前台使用ajax 后台使用springMVC 传递的参数是N多个对象 JSON对象和JSON字符串在SpringMVC环境中,@RequestBody接收的是一个Json对象的字符串,而不是一个Json对象。然而在ajax请求往往传的都是Json对象,用 JSON.stringify(data)的方...

weixin_35665984的博客 253

Ajax实例讲解与技术原理

AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。AJAX 是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。解决传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页页面。

Evankaka的专栏 1万+

SpringMVC通过ajax传递参数list对象或传递数组对象到后台

环境 前台传递参数到后台 前台使用ajax 后台使用springMVC 传递的参数是N多个对象 JSON对象和JSON字符串 在SpringMVC环境中,@RequestBody接收的是一个Json对象的字符串,而不是一个Json对象。然而在ajax请求往往传的都是Json对象,用 JSON.stringify(data)的方式就能将对象变成字符串。同时ajax请求的时候也要指定data...

junehappylove(王俊伟)的专栏 5319

SpringMVC框架学习笔记(四)(AJAX数据传递,数据转换,拦截器,异常,封装)

SpringMVC框架学习笔记(四)十、AJAX数据传递10.1 JSON数据传递自己处理数据引入`jquery.serializejson.js`,用`serializeJSON`方法序列化表单10.2 FormData数据传递 引入jquery.js 在核心配置文件中设置静态资源映射路径 <!--方式二:静态资源映射路径--> <mvc:resources mapping="/js/**" location="/resources/js/"/> 十、AJAX数据

qq_47267252的博客 631

SpringMVC_响应_ajax

springMVC中经过后端处理的封装数据,以便前端读取 方法一:Model (ModelMap )用户无需自己创建。一般来说,可以用model来接收各种类型的数据。 引用:https://blog.youkuaiyun.com/itbiggod/article/details/79685610 //传值方法一 @RequestMapping("listCategory2") public String listCategory2(Model model) { // 接.

239

springMVC系列之前台参数的传递——05

摘要:本文实现如何将前台数据传递到后台的几种方式、使用ajax传递参数时遇到点问题、、、、先弄好文件上传、待补充

Oscar Chen 2467

springMVC传递list对象三种情况使用方法

springMVC接收List对象以及List对象与其它对象一起传参数的使用方法, 传单个key-value,或基本类型的数组最简单,稍微复杂一点的是传对象数组(`[object]`),最复杂的是对象数组与key-value一起传到后台

陈袁的博客 3万+

springmvc处理ajax请求

springmvc与ajax的交互在实际开发中十分常见,以下是对springmvc与ajax交互时参数的传递与接收做的一些整理 jsp页面: &amp;amp;amp;amp;amp;lt;form id=&amp;amp;amp;amp;quot;login&amp;amp;amp;amp;quot; style=&amp;amp;amp;amp;quot;width:600px; border:1px solid #000;border-left:none;borde

weixin_39925381的博客 2450

jquery ajax向spring mvc controller中传值并接受及解析返回值

jquery ajax向spring mvc controller中传值并接受及解析返回值

SayNight 5万+
上一篇: shiro页面标签shiro:principal的使用
下一篇: 解决springmvc获取ajax发送DELETE或PUT请求时参数为NULL的情况
青衫落拓客
博客等级 码龄8年 41粉丝 74原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值