springmvc实例之删除雇员相关信息(三)

接上一节。

  • 我们进行删除操作使用DELETE请求

要想将POST请求转换成PUT、DELETE请求,需要在web.xml中配置过滤器:

    <!-- 配置 HiddenHttpMethodFilter: 把 POST 请求转为 DELETE、PUT 请求 -->
    <filter>
        <filter-name>HiddenHttpMethodFilter</filter-name>
        <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>HiddenHttpMethodFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

由于在list.jsp中:

<td><a class="delete" href="emp/${emp.id}">Delete</a></td>

这种通过超链接发送的请求是GET请求,因此我们要将其转换成DELETE请求。首先已经在web.xml配置相关的过滤器了。

然后我们在springmvc.xml中配置静态资源处理:

    <!-- 配置静态资源 -->
    <mvc:default-servlet-handler/>

然后在WebContent目录下新建一个scripts文件夹,将jquery-1.9.1.min.js放置进去。这样静态资源文件就可以被访问到了。

但是,由于配置了这个,会导致原有的通过Handler方式访问的方式失效,所以接下来要在springmvc.xml配置文件中配置:

<mvc:annotation-driven></mvc:annotation-driven>

接下来在list.jsp页面中编写相关js代码使的POST请求转换成DELETE请求:

首先是新建一个表单:type为hidden,name为_method,value为DELETE

    <form action="" method="POST">
        <input type="hidden" name="_method" value="DELETE"/>
    </form>

然后引入js,并编写相关的js代码:

<script type="text/javascript" src="scripts/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
    $(function(){
        $(".delete").click(function(){
            var href = $(this).attr("href");
            $("form").attr("action", href).submit();
            return false;
        });
    })
</script>

这段js代码的意思是:在点击class名为delete的超链接时,获取该超链接的href属性,并将该属性赋予form标签的action属性,然后提交该表单。

最后,我们在EmployeeHandler.java中编写删除的方法:

    @RequestMapping(value="/emp/{id}")
    public String delete(@PathVariable("id") Integer id) {
        employeeDao.delete(id);
        return "redirect:/emps";
    }

启动服务器之后:

依次点击删除最后的三项:

出现这个列表表明删除操作是成功的。

原文地址:https://www.cnblogs.com/xiximayou/p/12182632.html

时间: 2024-11-10 13:31:58

springmvc实例之删除雇员相关信息(三)的相关文章

springmvc实例之添加雇员相关信息(二)

接上一节. 添加雇员信息有两个操作: 首先在显示页面中添加--添加雇员信息连接. 然后通过发送请求到Handler,在Handler中跳转到添加信息的页面. 需要注意的是使用springmvc自带的form标签来进行添加页面的编写.同时在toAddEmployeePage需要传入departmen的信息,因为这是要进行选择的.springmvc自带的form是会进行回显的,因此还要传入一个新建的Employee对象,指定的名字要与fomr中指定的modelAttribute属性中的相同,否则会抛

springmvc实例之修改雇员相关信息(四)

接上一节. 首先是在List.jsp中点击编辑,然后在EmployeeHandler.java中有一个toEditEmployeePage方法,该方法接收传入过来的id,并把相关信息传给add.jsp界面. 由于springmvc的form标签会自动进行回显,因此传入给add.jsp一个根据id得到的employee对象以及获取departments对象. 可以和增加雇员信息共用一个add.jsp界面,但要进行相应的修改. 我们默认是不修改lastname属性. 为了使得更新时默认lastnam

Java集合-5. (List)已知有一个Worker 类如下: 完成下面的要求 1) 创建一个List,在List 中增加三个工人,基本信息如下: 姓名 年龄 工资 zhang3 18 3000 li4 25 3500 wang5 22 3200 2) 在li4 之前插入一个工人,信息为:姓名:zhao6,年龄:24,工资3300 3) 删除wang5 的信息 4) 利用for 循

第六题 5. (List)已知有一个Worker 类如下: public class Worker { private int age; private String name; private double salary; public Worker (){} public Worker (String name, int age, double salary) { this.name = name; this.age = age; this.salary = salary; } public

SSM框架-SpringMVC 实例文件上传下载

SSM框架-SpringMVC 实例文件上传下载 2017-04-17 09:38 4497人阅读 评论(6) 收藏 举报  分类: java基础(3)  目录(?)[+] 目录(?)[+] 林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 本文详细讲解了SpringMVC实例单文件上传.多文件上传.文件列表显示.文件下载. 本文工程免费下载 一.新建一个Web工程,导入相关的包 springmvc的包+commons-fileupload

Hibernate的一些相关信息(续)

深入Session session概述 Session接口时Hibernate向应用程序提供的操纵对数据库的最主要的接口,他提供了基本的保存,更新,删除和加载Java对象的方法. 理解Session的缓存. 在session借口的实现中包含一些列的Java集合,这些Java集合构成了Session缓存,只要Session实力没有结束生命周期,存放在它缓存中的对象也不会结束生命周期 当session的save()方法持久化一个对象时,该对象被载入缓存,以后即使程序中不在引用该对象,只要缓存不清空,

如何优雅的备份账号相关信息

前言: 最近遇到实例迁移的问题,数据迁完后还需要将数据库用户及权限迁移过去.进行逻辑备份时,我一般习惯将MySQL系统库排除掉,这样备份里面就不包含数据库用户相关信息了.这时候如果想迁移用户相关信息 可以采用以下三种方案,类似的 我们也可以采用以下三种方案来备份数据库账号相关信息.(本文方案针对MySQL5.7版本,其他版本稍有不同) 1.mysqldump逻辑导出用户相关信息 我们知道,数据库用户密码及权限相关信息保存在系统库mysql 里面.采用mysqldump可以将相关表数据导出来 如果

SpringMVC在使用JSON时报错信息为:Content type &#39;application/json;charset=UTF-8&#39; not supported

直接原因是:我的(maven)项目parent父工程pom.xml缺少必要的三个jar包依赖坐标. 解决方法是:在web子模块的pom.xml里面添加springMVC使用JSON实现AJAX请求. <!--spring mvc-json依赖--> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifact

python获取豆瓣电影TOP250的所有电影的相关信息

参考文档:https://weread.qq.com/web/reader/37132a705e2b2f37196c138k98f3284021498f137082c2e 说明:我才接触网络爬虫,在看<python网络爬虫入门到实践>一书时,作者写了个实例获取豆瓣电影TOP250的所有电影的电影名称,我在此基础上进行了更进一步的改进,获取了所有的相关信息,并用表格将这些信息保存下来. 相关知识: 网络爬虫分为三个步骤: 第一步:伪装为浏览器访问:第二步:解析网页代码:第三步:存储数据. (1)

sqlserver表、视图、索引(创建、修改、删除)相关示例

一.表相关 1.创建 USE [test] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Ceshi]( [id] [int] NOT NULL, [name] [varchar(30)] NULL,  CONSTRAINT [PK_Ceshi] PRIMARY KEY CLUSTERED  ( [id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMP