2016-05-15 5 views
1

Я использую spring, spring restcontroller, у меня есть перечисление на Java.Получить перечисление и отправить значение перечисления

public enum PaymentModeEnum { 
    CASH, DEBIT, CHECK, CREDITCARD; 
} 

Как получить значение перечисления в javascript и отправить значение enum в java?

+0

передать его в виде строки, как метод 'CASH', а в контроллере покоя' (@RequestParam PaymentModeEnum перечисление) {} ' –

ответ

0

С вашего вопроса Я предполагаю, что у вас есть интерфейс с некоторым javascript, который вызывает конечную точку REST, написанную на Java, используя Spring. Я не знаю, как делиться перечнем между javascript и Java (это разные языки), но вы можете либо отправить его порядковое значение, либо имя значения enum. Я поеду с последним.

Таким образом, вы можете просто получить его как параметр запроса в своей конечной точке. Как так:

@RequestMapping(
    path = some/path 
    method = GET) 
public SomeTypeAsResponse method(@RequestParam(name = "payment_mode") PaymentModeEnum paymentMode) { 
    ... 
} 
0

1.Для извлечения Enum в JavaScript сделать что-то, как показано ниже:

var enumvar = document.inputId.Packages.com.MyClass$MyEnumYesNo.YES 

2.Для отправки Enum из Javscript в RestController, передать его в виде строки непосредственно и затем отобразить его как a Enum в параметре ввода методов в контроллере.

1

Если вы пытаетесь установить/получить перечислимое значение с помощью Javascript REST вызова Spring API-

  • имени Enum можно установить с помощью переменного пути или строку запроса. Ниже приведен пример строки запроса. //https://localhost:8444/getByEnumVal?enumVal1=CASH @RequestMapping(value = "/getByEnumVal", method = RequestMethod.GET) public String setEnum( @RequestParam(value="enumVal1", required=false) String enumVal1) { Service.methodcall(enumVal1); ... }
  • значение Enum может быть возвращен как JSON непосредственно, либо путем установки его в POJO @RequestMapping(value = "/getEnumVal", method = RequestMethod.GET) public String getEnumVal() { return PaymentModeEnum.CASH; }
Смежные вопросы