Springmvc中前端ajax请求后台的三种返回方式

ajax是一个重点又是自己薄弱的地方,记录一下

一、前端请求,三个test方法分别对应后台的三个方法返回值

	<button onclick="testAjax0()">Ajax0</button>
	<button onclick="testAjax1()">Ajax1</button>
	<button onclick="testAjax2()">Ajax2</button>

	<script type="text/javascript" src="../jquery.min.js"></script>
	<script type="text/javascript">
		function testAjax0(){
				$.post("ajax.do",null,function(data){
					alert(data);
				});
			}
		function testAjax1(){
			$.post("ajax1.do",null,function(data){
				alert(data);
			});
		}
		function testAjax2(){
			$.post("ajax2.do",null,function(data){
				alert(data);
			});
		}
	
	</script>

二、后台三种返回方式

/**
	 * ajax
	 * 方式一  通过servlet中的response返回数据
	 * @throws IOException 
	 */
	@RequestMapping(value="/ajax.do")
	public void Ajax(HttpServletResponse resp) throws IOException{
		resp.getWriter().write("hello  ajax");
	}

	//方式二  通过流的形式
	@RequestMapping(value="/ajax1.do")
	public void Ajax1(Writer out) throws IOException{
		out.write("hello ajax1");
	}

	//方三  通过注解的形式
	@RequestMapping(value="/ajax2.do")
	@ResponseBody  //返回值就是响应的内容
	public String Ajax2() throws IOException{
		return "hello  ajax2";
	}

三、测试结果

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先,您需要在前端页面上编写一个用户注册表单,该表单将用户输入的数据通过Ajax方式提交给后台SpringMVC的Controller处理。 在Controller,您需要编写一个方法来接收Ajax请求,并将用户输入的数据保存到数据库。然后,您需要将保存成功的数据通过JSON格式返回前端页面。 以下是一个SpringMVC Controller的示例代码: ```java @Controller public class UserController { @Autowired private UserService userService; @RequestMapping(value = "/register", method = RequestMethod.POST) public @ResponseBody Map<String, Object> register(User user) { Map<String, Object> result = new HashMap<String, Object>(); if (userService.isExist(user.getUsername())) { result.put("success", false); result.put("message", "Username already exists"); } else { userService.save(user); result.put("success", true); result.put("message", "Registration successful"); } return result; } } ``` 在上面的代码,我们首先注入了一个UserService对象,该对象用于处理用户注册的业务逻辑。 然后,我们编写了一个/register请求的处理方法,该方法通过@ResponseBody注解将返回结果转换为JSON格式。如果用户输入的用户名已经存在,则返回一个失败的结果;否则,将用户输入的数据保存到数据库,并返回一个成功的结果。 在前端页面,您可以通过jQuery的$.post方法来提交Ajax请求,并处理返回的JSON数据。以下是一个简单的示例代码: ```javascript $('#register-form').submit(function(e) { e.preventDefault(); $.post('/register', $(this).serialize(), function(data) { if (data.success) { alert('Registration successful'); // do something else } else { alert(data.message); } }); }); ``` 在上面的代码,我们首先阻止表单的默认提交行为,然后使用$.post方法提交Ajax请求。如果返回的结果包含了一个成功的标志,则弹出一个提示框并执行其他操作;否则,弹出一个错误提示框。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值