servlet向js输出json数据时总是执行error(data)

在servlet向js输出json数据时总是执行error(data),实现的模块是管理员添加课程并显示。在添加成功后,最初是在AddCourseServlet中进行跳转到另一个ShowCourseServlet,然后在ShowCourseServlet中查询数据库显示数据,将显示的数据跳转到相应的show_course.jsp页面,在此处贴上出错代码:

AddCourseServlet:

if(search){
System.out.println(“插入课程信息成功!”);
resp.sendRedirect(“servlet/ShowCourse”);
//不能req.getRequestDispatcher(“servlet/ShowCourse”).forward(req, resp);

    }

注:下篇博文解释resp.sendRedirect(“servlet/ShowCourse”);与req.getRequestDispatcher(“servlet/ShowCourse”).forward(req, resp);因为在测试中也犯过错。对两个方法理解模糊

ShowCourseServlet:
while(rs.next()){
Course cs=new Course();
int courseId=rs.getInt(“courseId”);
String courseName = rs.getString(“courseName”);
String teacher = rs.getString(“teacher”);
System.out.println(“课程id为:”+courseId+“课程名为:”+courseName+“老师为:”+teacher);
cs.setCourseId(courseId);
cs.setCourseName(courseName);
cs.setTeacher(teacher);
list.add(cs);

        }
        JSONArray jsonarray = JSONArray.fromObject(list);    
        //将json对象转为字符串,以便将字符串输出
         String data = jsonarray.toString();
        System.out.println(data);
        out.write(data);
        req.getRequestDispatcher("/views/show_course.jsp").forward(req, resp);
        show_course.jsp:

function showresult(){

//测试document.write(Date());
$.ajax({
//提交方式
type : “GET”,
//提交的Action
url : “servlet/ShowCourse”,
data : {
//提交的数据
},
//返回数据类型
dataType : “json”,

                success : function(data) {
                    alert("success");
                    var d = eval(data);
                    for ( var i in d) {
                        var str = '<tr><td>'
                                + d[i].courseId
                                + '</td><td>'
                                + d[i].courseName
                                + '</td><td>'
                                + d[i].teacher
                                + '</td></tr>';
                        $('#tbody').append(str);
                        }
                    
                },
                error : function(data)

{ alert(“fail”);
},
});

}
</script>

正确逻辑应为:AddCourseServlet添加课程成功后跳转到展示页面show_course.jsp,在此页面请求ShowCourseServlet

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值