Java 使用<;及>;xml中的符号

Java 使用<;及>;xml中的符号,java,sql,xml,Java,Sql,Xml,我正在开发一个需要从数据库生成报告的系统。我一直试图查询一个数据库,根据添加日期和到期日期显示数据。问题是报告中没有显示数据。该查询在.jrxml文件中如下所示: <parameter name="dopened" class="java.lang.String"/> <parameter name="dended" class="java.lang.String"/> <queryString> <![CDATA[SELECT

我正在开发一个需要从数据库生成报告的系统。我一直试图查询一个数据库,根据添加日期和到期日期显示数据。问题是报告中没有显示数据。该查询在.jrxml文件中如下所示:

   <parameter name="dopened" class="java.lang.String"/>
   <parameter name="dended" class="java.lang.String"/>
   <queryString>
    <![CDATA[SELECT * FROM CASES WHERE date_due < $P{dended} ORDER BY case_no]]>
  </queryString>*

我使用日期选择器来选择日期。请帮忙指出我可能遗漏了什么。谢谢

你试过用
代替括号吗?

只是猜测一下:你在使用jasperreports或类似的解决方案

查询显示一个带有日期比较的“where”子句,该比较需要一个日期对象。参数“dended”是一个字符串。您正在使用dend.getDate().toString()转换“dended”,但数据库肯定需要另一种日期格式(想想yy/mm/dd和yyy-mm-dd)


解决方案:将参数更改为java.util.Date或java.sql.Date并省略转换。

尝试替换CDATA中的
,特殊字符的行为与普通字符串相同,因此无需使用
或任何ascii代码。很好。问题可能在其他地方。请注意,这些需要是
(尽管存在堆栈溢出编辑规则)。标记不是问题,因为我们在标记中。问题是sql语句没有返回任何结果
    params.put("dopened", dopen.getDate().toString());
    params.put("dended", dend.getDate().toString());