在java中将日期转换为mysql格式并将其传递给函数

在java中将日期转换为mysql格式并将其传递给函数,java,mysql,Java,Mysql,我想根据日期筛选订单。 我的密码是 if ( filterObject != null ) { if ( !AgileUtil.isEmpty( filterObject.getCustid() ) ) { query.append( "AND ORD.CUSTID = '" ).append( filterObject.getCustid() ).append( "' " ); } if ( !AgileUtil.

我想根据日期筛选订单。 我的密码是

    if ( filterObject != null ) {
        if ( !AgileUtil.isEmpty( filterObject.getCustid() ) ) {
            query.append( "AND ORD.CUSTID = '" ).append( filterObject.getCustid() ).append( "' " );
        }
        if ( !AgileUtil.isEmpty( filterObject.getPid() ) ) {
            query.append( "AND ORD.OID IN ( SELECT OD.OID FROM ORDERDETAIL OD WHERE ORD.OID = OD.OID AND OD.PID = '" )
            .append( filterObject.getPid() )
            .append( "' ) " );
        }
        if ( filterObject.getFromDate() != null ) {
            //AppConstants.DATEFORMAT.format( obj.getCreated() );

            query.append( "AND ORD.OID IN(SELECT OD.OID FROM ORDERDETAIL OD WHERE ORD.OID = OD.OID AND OD.CREATED > FROMDATE '" )
            .append( filterObject.getFromDate() )
            .append( "' " );

        }
        if ( filterObject.getToDate() != null ) {

            query.append( "AND ORD.OID IN(SELECT OD.OID FROM ORDERDETAIL OD WHERE ORD.OID = OD.OID AND OD.CREATED < TODATE '" )
            .append( filterObject.getToDate() )
            .append( "' " );
        }
        if ( ( filterObject.getFromDate() != null ) && ( filterObject.getToDate() != null ) ) {
            query.append( "AND ORD.OID IN(SELECT OD.OID FROM ORDERDETAIL OD WHERE ORD.OID = OD.OID AND OD.CREATED BETWEEN FROMDATE AND TODATE '" )
                .append( filterObject.getFromDate() );
        }
        if ( filterObject.getAmount() != null ) {
            query.append( "AND ORD.TOTAL = " ).append( filterObject.getAmount() );
        }
    }

现在我面临的主要问题是如何将2015年8月31日这样的日期转换为mysql格式0000-00-00,并将其传递给filterObject.getFromDate、filterObject.getToDate,以便将此日期与数据库中的表列“CREATED”进行比较。

和java.sql.date,并让驱动程序处理它Google link:Dude。先用谷歌搜索“SQL注入攻击”,然后轻笑,然后用PreparedStatement找出如何做到这一点,它允许您直接使用Java日期对象,而不依赖于您所在的任何数据库。@BobKuhar谢谢。那个xkcd让我很开心。