`

SpringMVC_3.x_入门指南_6

阅读更多

SpringMVC 3.x

博文目录

  1. 使用Ajax发出delete请求
  2. 重定向传值问题

使用Ajax发出非get,post请求!

我们知道浏览器只能发出get,post请求,但是我们可以通过Ajax来实现发出put,delete等请求,我们以最简单的例子来演示一下!

我们将上篇博文中的删除改成ajax请求删除!

我们在我们的user.jsp页面引入jquery.js,使用jquery来发出ajax请求:
user.jsp页面修改如下:(只改动删除的a标签和script部分)

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>用户列表</title>
  </head>
  <body>
    <h1>用户列表--<a href="/user/add">添加用户</a></h1>
    <ul>
    	<c:forEach items="${userList }" var="user">
    		<li>用户名:${user.username }----密码:${user.password }----<a href="/user/edit/${user.id}">修改用户</a>----<a href="javascript:;" class="del" ref="${user.id }">删除用户</a></li>
    	</c:forEach>
    </ul>
    <img alt="" src="/static/img/1.jpg">
    <script type="text/javascript" src="http://cdn.staticfile.org/jquery/1.9.1/jquery.min.js"></script>
    <script>
    	$(function(){
    		$(".del").click(function(){
    			var id=$(this).attr("ref");
    			$.ajax({
    				type:"delete",
    				url:"/user/del/"+id,
    				success:function(e){
    					alert(e);
    				}
    			});
    		});
    	});
    </script>
  </body>
</html>

 

 将我们的UserController里的del方法改动如下:

@RequestMapping(value="/del/{id}",method=RequestMethod.DELETE)
@ResponseBody
public String del(@PathVariable Integer id){
	userService.del(id);
	return "1";
}

 

返回给页面的是json数据!!启动服务器,删除对象,会弹出1。
注意:ajax请求,页面是不刷新的,删除后的用户仍然在页面,但是已经不再数据库了,刷新页面,刚才删除的用户才会消失。

最后补充说一点:
重定向到一个方法上时,如何给页面传值,我们知道,经过model传值是request空间传值,重定向值就消失了。
我们使用一个新的对象来进行重定向的传值:(RedirectAttributes
我们以add方法为例:

@RequestMapping(value="/add",method=RequestMethod.POST)
public String add(@Valid User user,BindingResult bindingResult,RedirectAttributes redirectAttributes){
	if(bindingResult.hasErrors()){
		return "user/add";
	}
	userService.save(user);
	redirectAttributes.addFlashAttribute("message", "数据更新成功");
	return "redirect:/user";
}

 

 值可以直接传到user.jsp,使用EL表达式接收即可!!

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>用户列表</title>
  </head>
  <body>

	<!--跨页面传值message-->
	<h1>${message }</h1>
    <h1>用户列表--<a href="/user/add">添加用户</a></h1>
    <ul>
    	<c:forEach items="${userList }" var="user">
    		<li>用户名:${user.username }----密码:${user.password }----<a href="/user/edit/${user.id}">修改用户</a>----<a href="javascript:;" class="del" ref="${user.id }">删除用户</a></li>
    	</c:forEach>
    </ul>
    <img alt="" src="/static/img/1.jpg">
    <script type="text/javascript" src="http://cdn.staticfile.org/jquery/1.9.1/jquery.min.js"></script>
    <script>
    	$(function(){
    		$(".del").click(function(){
    			var id=$(this).attr("ref");
    			$.ajax({
    				type:"delete",
    				url:"/user/del/"+id,
    				success:function(e){
    					alert(e);
    				}
    			});
    		});
    	});
    </script>
  </body>
</html>

 

分享到:
评论

相关推荐

    springmvc_4\springmvc_4.part1.rar

    springmvc_4\springmvc_4.part1.rar

    springmvc_learning.rar

    SpringMVC和MyBatis是Java开发中两个非常重要的框架,它们在构建高效、可维护的Web应用程序中扮演着核心角色。SpringMVC是Spring框架的一部分,主要用于处理HTTP请求和响应,而MyBatis则是一个优秀的持久层框架,...

    SpringMvc_Maven.zip_java项目_maven_maven springmvc_springmvc maven

    6. **创建模型和视图**:在控制器方法中,你可以创建模型对象,并使用 @ModelAttribute 注解传递到视图。视图通常是 JSP 页面,它使用 EL(Expression Language)和 JSTL 标签来展示数据。 7. **截图说明**:文档...

    tmp_springmvc_maven.rar

    《SpringMVC与Spring整合及Maven项目结构详解》 在Web开发领域,SpringMVC作为Spring框架的一部分,被广泛用于构建高效的、模块化的后端控制器。本项目以"tmp_springmvc_maven.rar"为载体,展示了如何利用SpringMVC...

    SpringMVC_Upload.rar_shipvu7_springmvc_springmvc upload

    总的来说,"SpringMVC_Upload.rar_shipvu7_springmvc_springmvc upload"示例涉及了Spring MVC框架下的多文件上传、返回值处理以及与数据库交互的关键知识点。通过学习和实践这些内容,你可以构建出健壮的Web应用程序...

    SpringMVC_JDBC.zip_springmvc

    SpringMVC是一个基于Java的轻量级Web应用框架,它为构建模型-视图-控制器(MVC)架构的应用程序提供了强大的支持。SpringMVC旨在简化开发,通过解耦业务逻辑、视图呈现和数据访问,使开发者可以更加专注于应用程序的...

    springmvc_demo.zip

    SpringMVC是Spring框架的一部分,专门用于处理Web应用程序的请求和响应。在Java世界中,SpringMVC作为轻量级的MVC(Model-View-Controller)架构模式,被广泛应用于构建高性能、可维护的企业级应用。在这个...

    Tomcat 部署 war 源文件 springmvc_war.zip

    【标题】:Tomcat部署WAR源文件:SpringMVC应用 【描述】:在Java Web开发中,Tomcat是一款广泛使用的轻量级应用服务器,它能够运行Servlet和JSP应用程序。这里我们关注的是如何在Tomcat上部署一个名为"springmvc_...

    SpringMVC_01.rar

    这个名为"SpringMVC_01.rar"的压缩包文件显然是一个针对初学者的Spring MVC学习项目,它包含了实现Spring MVC基本功能所需的代码示例,非常适合入门学习。 在Spring MVC中,主要涉及以下几个核心概念: 1. **...

    springmvc_4\springmvc_4.part2.rar

    springmvc

    Spirng_SpringMVC_Mybatis.zip

    Spring、SpringMVC和Mybatis是Java开发中广泛使用的三大框架,它们的整合(SSM)为开发者提供了高效且灵活的Web应用开发解决方案。在这个案例中,我们将深入探讨这三个框架如何协同工作,以及如何实现基本的用户管理...

    springmvc_demo.7z

    【标题】"springmvc_demo.7z"是一个包含SpringMVC项目源码的压缩包,意味着它提供了使用SpringMVC框架构建的Web应用程序的完整代码结构。SpringMVC是Spring框架的一部分,主要用于处理Web请求,提供模型-视图-控制器...

    SpringMVC_4.rar.rar

    SpringMVC是Spring框架的一个模块,专为构建Web应用程序而设计。它提供了模型-视图-控制器(MVC)架构模式的实现,帮助开发者将业务逻辑、数据展示和用户界面分离,提高代码的可维护性和可测试性。下面将详细讨论...

    springmvc_day01_01_start.zip

    《SpringMVC 入门教程:从零开始学习SpringMVC》 在IT行业中,SpringMVC作为一款强大的Web应用程序框架,被广泛应用于Java后端开发。本教程以"springmvc_day01_01_start.zip"为起点,旨在帮助初学者快速掌握...

    SpringMVC_beetl.rar_beetl_sheep8on_springmvc

    3. 注册视图解析器:在SpringMVC配置中,添加一个BeetlViewResolver的bean,用于将处理后的结果转换为Beetl模板并渲染。 4. 使用模板:在控制器方法中,返回模板名而不是具体的视图,如"index",SpringMVC会根据...

    2021全新SpringMVC教程

    1.1_SpringMVC_课程介绍.mp4 1.2_SpringMVC_导学.mp4 02_SpringMVC_回顾MVC.mp4 04_SpringMVC_SpringMVC的特点.mp4 06_SpringMVC_HelloWorld:创建maven工程.mp4 10_SpringMVC_HelloWorld:配置springMVC配置文件....

    1. 尚硅谷_佟刚_SpringMVC_概述.zip

    SpringMVC是Spring框架的一个模块,专为构建Web应用程序而设计。它提供了模型-视图-控制器(MVC)架构,使开发者能够将业务逻辑、数据处理和用户界面分离,从而实现更清晰、更可维护的代码结构。在这个尚硅谷的教程...

    springMVC_netty.rar

    3. **SpringMVC与Netty集成**:在SpringMVC应用中集成Netty,通常是为了实现高效的后台服务,例如,通过TCP通信进行大数据传输或实时通信。集成的关键在于创建一个独立于SpringMVC的Netty服务器,作为后台服务,处理...

    springmvc_2020.rar

    1. 登录验证,(同时ajax的异步验证) 2. 老师和学生登录后有不同的界面 3. 学生可以给老师留言,并查看自己留言的状态 4. 老师可以对学生进行增删改查,对留言进行处理 5.资源中提供数据库

Global site tag (gtag.js) - Google Analytics