Angularjs:$resource-发送日期作为参数

Angularjs:$resource-发送日期作为参数,angularjs,spring,Angularjs,Spring,是否可以从Angularjs$资源向Spring MVC api发送日期 我正在这样做 Angularjs: MyFactory.get({nomProduit:$scope.produit, dateDebut:$filter('date')($scope.dateDebut, 'yyyy-MM-dd'), dateFin:$filter('date')($scope.dateFin, 'yyyy-MM-dd')}); 春天: /** * GET /rest/arrondis/:

是否可以从Angularjs$资源向Spring MVC api发送日期

我正在这样做
Angularjs:

MyFactory.get({nomProduit:$scope.produit, dateDebut:$filter('date')($scope.dateDebut, 'yyyy-MM-dd'), dateFin:$filter('date')($scope.dateFin, 'yyyy-MM-dd')});
春天:

/**
     * GET  /rest/arrondis/:id -> get the "id" arrondi.
     */
    @RequestMapping(value = "/statVenteProduit/{nomProduit}/{dateDebut}/{dateFin}",
            method = RequestMethod.GET,
            produces = MediaType.APPLICATION_JSON_VALUE)
    @Timed
    public void statVenteProduit(@PathVariable String nomProduit, @PathVariable LocalDate dateDebut, @PathVariable LocalDate dateFin ) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
            Date parsed;
            LocalDate dateDebut = null;
            LocalDate dateFin = null;
if (!dateDebutS.equals("null")){
                parsed = format.parse(dateDebutS);
                dateDebut = new org.joda.time.LocalDate(parsed.getTime());
            }
            if (!dateFinS.equals("null")){
                parsed = format.parse(dateFinS);
                dateFin = new org.joda.time.LocalDate(parsed.getTime());
            }
    }
我认为这是相当肮脏的代码。 难道不能直接以日期格式发送这两个日期吗


谢谢

您需要为LocalDate注册一个自定义日期转换器并定义解析模式,然后自动转换应该可以正常工作


请参见和

好的,谢谢,一旦转换器完成,我不知道如何告诉StatventProduit将此转换器用于两个参数DateFirst和dateFin。-特别是,最后一个答案还显示了如何仅通过使用注释转换日期Hanks我也找到了最后一个解决方案。