没有输出 - 尝试使用java中的参数生成报告

时间:2015-08-18 05:03:10

标签: java jasper-reports

我正在尝试使用我的文本字段中的参数输入生成 JasperReports 的报告。它似乎无法使用带参数的查询。

是否有其他方法可以使用 Java 中的参数通过 JasperReports API 生成报告?我设置我的报告接受参数值为字符串。

public void reportDefault() {
    try {
        String searchreport = searchtextField.getText();
        JasperDesign jd = JRXmlLoader.load("D:\\reports\\supplierlist.jrxml");
        String sql = "SELECT * FROM businfo WHERE busname='%"+searchreport+"%'";
        JRDesignQuery newQuery = new JRDesignQuery();
        newQuery.setText(sql);      
        jd.setQuery(newQuery);
        JasperReport jr = JasperCompileManager.compileReport(jd);
        JasperPrint jp = JasperFillManager.fillReport(jr,null,conn);
        JasperViewer jv = new JasperViewer(jp,false);
        jv.viewReport(jp, false);
    } catch(Exception e) {
        e.printStackTrace();
    }
}

1 个答案:

答案 0 :(得分:0)

您似乎有SQL语法错误 - 您已使用通配符运算符marriagestatus而不是@model kadrws.ViewModels.SocialViewModels @using (Html.BeginForm()) { .. @Html.HiddenFor(m => m.ID) @Html.DropDownListFor(m => m.MarriageStatus, Model.MarriageStatusList) .... @Html.EditorFor(m=> m.Rehber) <input type="submit" value="Save" class="btn btn-default" /> } 而不是[HttpPost] [ValidateAntiForgeryToken] public ActionResult Edit(SocialViewModels model) { if (!ModelState.IsValid) { // repopulate your select lists return View(model); } // Get your data models, map the view model properties it // Save and redirect } 。见http://www.w3schools.com/sql/sql_wildcards.asp