在Spring MVC中生成图像并将其与JSP中的其他内容一起显示在JSP中

时间:2012-12-01 15:23:57

标签: spring-mvc jfreechart jfreereport

我正在使用JFreeChart根据数据库中的某些数据生成动态图表。我有一个带有一个组合框的JSP,用户进行输入并提交它,并且Action处理它,生成图表的图像。 我需要在同一个JSP上显示这个图像,就像之前一样,在组合框下面。但是只有图形图像出现在页面上。我可以在同一页面上进行它吗?

我在我的webapp上使用spring。

提前致谢。

1 个答案:

答案 0 :(得分:1)

最简单的方法是使用JavaScript。提交表单后,通过JavaScript事件处理程序拦截提交,然后只需在页面中插入<img>标记,即可显示图表。此图像应包含生成图表的操作的URL。

使用jQuery,它看起来像这样:

$(document).ready(function() {
    $('#myForm').submit(function() {
        var url = '/actionWhichGeneratesTheGraph?selection=' + $('#theSelectBox').val();
        $('#theDivWhereTheGraphMustAppear').html('<img src="' + url + '"/>');
        return false;
    });
});

如果图表每次生成时都会更改,即使是类似的选择,也应该在URL的末尾添加一些随机参数,以防止浏览器缓存。