de intercâmbio de dados leve. É, um formato legível baseado em texto para representar estruturas de dados simples e matrizes associativas (chamados objetos).
criar a partir dos dados JSON. Nós usamos anotações para descrever como realizar o mapeamento. Usamos o @JsonAutoDetect dizer que os nomes dos membros campo mapear diretamente para nomes de campo JSON:
String nome; dob private String; Lista privada <EmailAddress> emailAddresses; Cadeia getName pública () {name retorno; } setName public void (String nome) {this.name = nome; } Cadeia getDob pública () {return dob; } setDob public void (dn String) {this.dob = dn; } Lista pública <EmailAddress> getEmailAddresses () {emailAddresses de regresso; } setEmailAddresses public void (List <EmailAddress> emailAddresses) {this.emailAddresses = emailAddresses; } } O objeto EmailAddress que é usado nos emailAddresses é apenas mais um JavaBean com a anotação @JsonAutoDetect. Neste ponto Mule pode descobrir se deseja realizar uma JSON transforma com base nos parâmetros do método que está sendo chamado. Por exemplo: PersonComponent classe pública {
acima em um ponto final, mula veria que Person.class é um objeto JSON anotada e que tinha recebido os dados JSON da fila JMS e executar a conversão. JSON Global Mapper Jackson executa mapeamentos através da ObjectMapper. Este é um objeto que pode ser configurado com outra configuração sobre como serialização de dados e definir mixins que adicionar anotações para objetos que você não pode mudar diretamente. É possível definir um ObjectMapper global; um único mapeador usado para todos os JSON transforma em sua aplicação. Isso não é necessário, uma vez Mule cria automaticamente um mapeador de um transformador, mas usando um mapeador global pode ser útil se você precisar configurar propriedades específicas sobre o mapeador ou uso mixins. Para criar um ObjectMapper compartilhada Adicione o seguinte ao seu arquivo de configuração mula:
realiza transformações JSON automáticas. Às vezes você pode querer interceptar a transformação. Para isso basta criar um transformador com um retorno de método ou tipo de parâmetro de sua classe JSON:
o contexto global para a sua aplicação é utilizada. Uma razão para isso seria a de retirar alguns elementos JSON e criar objetos a partir de um subconjunto do JSON recebido. Para mais informações sobre as transformações consulte a seção Usando Transformers. JsonPath Não há linguagem padrão atualmente para consultar gráficos de dados JSON, da mesma forma XPATH pode consultar documentos XML. Mule criou uma sintaxe de consulta simples para trabalhar com dados JSON em Java, chamados JsonPath. Esta sintaxe de consulta fornece uma maneira simples de navegar uma estrutura de dados JSON. Os seguintes dados JSON demonstra como usar consultas Caminho JSON:
nome Para acessar dados de matriz, use colchetes com um valor de índice ou seja, 1 emailAddresses [0] / tipo Ou em que o elemento de rota é uma matriz: 1 [0] / arrayElement Além disso, as matrizes multi-dimensionais podem ser acessados usando: 1 filtros [1] / init [1] [0] Isso é raro, mas se um nome de propriedade Json contém uma '/' o nome precisa besingle citou isto é, 1 resultados / 'http: //foo.com'/value JsonPath em expressões JSON Path pode ser usado em expressões de mula para consultar cargas úteis de mensagens JSON para filtrar ou enriquecimento. Por exemplo, para usar JSON Caminho para realizar roteamento baseado em conteúdo: