首先我在controller中有一个添加数据的方法:

@RequestMapping(value="/emp",method=RequestMethod.POST)
    public String  addEmpl(Employee employee) {
        System.out.println("添加的员工数据:"+employee);
        employeeService.addEmp(employee);
        return "redirect:/emps";
    }
    

目的:我要用ajax请求数据封装到该方法中,并且添加完成后回到含有添加数据后的页//模态框保存按钮的事件

                $("#emp_save_btn").click(function() {
                    $.ajax({
                        type : "post",
                        url : "${APP_PATH}/emp",
                        data : $("#empAddModal form").serialize(),//序列化模态框中的数据  方便解析到employee对象
                        // async : false,
                        success : function(result) {
                        }
                    });
                    //关闭模态框
                    $("#empAddModal").modal('hide');
                });

结果:无事发生  数据的确添加到数据库中 但是controller内部请求转发并没有执行

原因:ajax  他只是对数据的处理  在执行完成后会把所有的结果放到result中  对数据的操作  因此整个过程中数据添加成功,但是并没用继续执行controller内部的重定向

造成的影响:需要重新刷新才能看到添加后的数据。

解决办法:在result内部执行页面跳转,同时也可以在添加后立马看到数据所在的页面

//模态框保存按钮的事件
                $("#emp_save_btn").click(function() {
                    $.ajax({
                        type : "post",
                        url : "${APP_PATH}/emp",
                        data : $("#empAddModal form").serialize(),
                        // async : false,
                        success : function(result) {
                            window.location.href="${APP_PATH}/emps?pn="+${pageInfo.pages};
                        }
                    });
                    //关闭模态框
                    $("#empAddModal").modal('hide');
                });

总结:在配合rest风格实现数据的crud上  使用ajax无疑实现开发效率倍增 ,好的模版插件的应用将开发效率增加到最大

SSM项目中用ajax尝试实现controller请求中重定向不起作用的问题的更多相关文章

  1. SSM项目用ajax来显示数据

    <script type="text/javascript"> //1:页面加载完成后,直接去发送ajax请求,要到分页的数据 $(function(){ $.ajax ...

  2. SSM项目集成Lucene+IKAnalyzer在Junit单元测试中执行异常

    个人博客 地址:http://www.wenhaofan.com/article/20181108132519 问题描述 在项目运行以及main方法中能够正常运行,但是使用junit单元测试时却报如下 ...

  3. .net 网站首页,本次的项目中用到的一个网站首页中统计网页访问量的工具方法,我觉得它应该在pagebase里面,拿来用一下

    需要建立一个根文件夹 ~/xml/couter.txt #region 网站访问量         protected void pageviews() {             int count ...

  4. SSM框架开发web项目系列(七) SpringMVC请求接收

    前言 在上篇Spring MVC入门篇中,我们初步了解了Spring MVC开发的基本搭建过程,本文将针对实际开发过程的着重点Controller部分,将常用的知识点罗列出来,并配以示例.在这之前,我 ...

  5. 在项目中用过Spring的哪些方面?及用过哪些Ajax框架?

    在项目中用过Spring的哪些方面?及用过哪些Ajax框架? 解答:在项目使用过Spring IOC ,AOP,DAO,ORM,还有上下文环境. 在项目使用过Ext,Juery等Ajax框架.

  6. 搭建SSM项目框架全过程及思考

    1.前言 之前都是在现有框架下进行写代码或者总是看一些别人的架构,总会眼高手低.于是打算自己完整的走一遍流程,同时把所遇到的问题,思考的问题记下来,供大家参考.由于是工作年限不高,属于新手,不足之处还 ...

  7. Maven 搭建 SSM 项目 (oracle)

    简单谈一下maven搭建 ssm 项目 (使用数据库oracle,比 mysql 难,所以这里谈一下) 在创建maven 的web项目时,常常会缺了main/java , main/test 两个文件 ...

  8. idea ssm项目出现日志中文乱码,封装的json中的msg字段中文乱码(但是json封装的bean中的字段不乱码)等其他各种项目下的中文乱码解决方案

    开头划重点!(敲黑板):rebuild和mvn package的循环往复好几次的操作是解决这个问题的最主要的方法! 经过多次试验,发现这样做就可以正常显示中文了 我说为什么有时候乱码,有时候中文正常, ...

  9. SSM项目环境快速搭建

    SSM项目的环境搭建 环境搭建的目标 工程创建 创建父工程 创建空 maven工程 xxx-parent 作为父工程 修改父工程中的 pom.xml <!--?xml version=" ...

随机推荐

  1. 【Android】5.0 第一个工程学习——应用名称和图标修改、增加Buton控件、Toast信息提示

    1.0 搞了很多天,eclipse只能开发Android6.0以前的版本,可能是因为谷歌不再针对eclipse更新了,在虚拟机Android6.0以上版本都无法构建,所以转到Android Studi ...

  2. Objective C 中的BOOL, bool, Boolean理解

    一. 1.类型不同 BOOL为int型 bool为布尔型 2.长度不同 bool只有一个字节 BOOL长度视实际环境来定,一般可认为是4个字节 3.取值不同 bool取值false和true,是0和1 ...

  3. 关于js 中函数的参数

    var a = 100; function test(a){ a++; //a(形参)是局部变量 console.log(a); } test(a); console.log(a); //结果是 10 ...

  4. OOM android

    1.[原创]Android 系统稳定性 - OOM(一) 2.[原创]Android 系统稳定性 - OOM(二) 3.Android内存泄露分析(MemoryAnalyzer工具)

  5. Fidder详解之get和post请求

    前言 本文会对Fidder这款工具的一些重要功能,进行详细讲解,带大家进入Fidder的世界,本文会让你明白,Fidder不仅是一个抓包分析工具,也是一个请求发送工具,更加可以当作为Mock Serv ...

  6. C语言 字符串的声明与使用

    // 字符串的定义和初始化 void test() { // "mj" char s[] = {'m', 'j', '\0'}; // 字符串"mj" ] = ...

  7. spring boot 三种入参

    先来讲述下最简单的使用get请求用户信息的实现方式,代码如下,写好后直接在Application类点击右键有个RunAs,点击后会自动运行,运行成功后可以使用http发包工具进行测试,这里推荐使用ch ...

  8. log4j+AOP 记录错误日志信息到文件中

    AOP 采用异常通知切入,把指定包的异常记录到日志文件. 先看log4j.properties ,控制台输出的是普通信息, 文件输出的是异常信息. log4j.rootLogger=DEBUG, Co ...

  9. maven学习记录四——私服 nexus

    8       私服 nexus 安装nexus 启动服务 启动失败的解决方法: 登录nexus 用户名/密码  admin/admin123 仓库类型 Virtual   虚拟仓库 Proxy  代 ...

  10. 【luogu P2194 HXY烧情侣】 题解

    题目链接:https://www.luogu.org/problemnew/show/P2194 第一问:缩点并且统计其强连通分量里的最小耗费.把所有强连通分量的最小耗费加起来. 第二问:统计在每个强 ...