Angularjs:$ resource - 将Date作为参数发送

时间:2015-06-17 09:57:04

标签: angularjs spring

是否可以从Angularjs $ resource向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());
            }
    }

我认为这是非常脏的代码。 是不是可以直接以日期格式发送这两个日期?

由于

1 个答案:

答案 0 :(得分:0)

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

请参阅CustomDateEditorLocalDateConverter