Em circunstâncias normais, os parâmetros passados pelo front -end podem ser recebidos diretamente pelo SpringMVC, mas também haverá alguns casos especiais, como o objeto de data. Quando uma data é transmitida do meu front -end, o servidor precisa personalizar a ligação dos parâmetros e converter a data do front end. A ligação personalizada de parâmetros também é muito simples e é dividida em duas etapas:
1. Conversor de parâmetro personalizado
O conversor de parâmetros personalizado implementa a interface do conversor, como segue:
classe pública DateConverter implementa conversor <string, date> {private SimpleDateFormatAmat MELLEDAFORMATAT = new SimpleDateFormat ("AAAYYY-MM-DD"); @Override public Data Convert (String s) {if ("" .equals (s) || s == null) {return null; } tente {return SimpleDateFormat.parse (s); } catch (parseException e) {e.printStackTrace (); } retornar nulo; }}O método Convert recebe um parâmetro de sequência, que é a string de data enviada do front end. Essa sequência satisfaz o formato AAAA-MM-DD e depois converte essa string em um objeto de data e retorna através do SimpleDateFormat.
2. Configure o conversor
WebMVCConfig personalizado herda o webmvcConfigureRAdapter e o configura no método AddFormatters:
@ConfigurationPublic Classe webmvcConfig estende WebMVCConfigureRAdApter {@Override public void AddFormatters (FormatterRegistry Registry) {Registry.addConverter (new DateConverter ()); }}OK, após as duas etapas acima, podemos receber uma data de string do front -end e convertê -la em um objeto de data em Java. O controle da data do front -end é o seguinte:
<el-date-picker v-model = "emp.birthday" size = "mini" value-format = "yyyy-mm-dd hh: mm: ss" type = "date" springholder = "Data de nascimento"> </el-date-picker>
A interface do servidor é a seguinte:
@RequestMapping (Value = "/EMP", Method = requestMethod.post) public respbean addemp (funcionário) {if (empuncie.addemp (funcionário) == 1) {return new respbean ("sucessor", "add bem -sucedido!"); } Retorne o novo respbean ("Erro", "Adicionar falhou!");}Há um atributo chamado aniversário em funcionário, e o tipo de dados desse atributo é uma data