Last active
May 15, 2016 11:25
-
-
Save varren/4a76ec643f5a4b26e46475a110ebe281 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.test; | |
import com.fasterxml.jackson.annotation.JsonRootName; | |
import com.fasterxml.jackson.databind.DeserializationFeature; | |
import com.fasterxml.jackson.databind.SerializationFeature; | |
import org.springframework.boot.SpringApplication; | |
import org.springframework.boot.autoconfigure.SpringBootApplication; | |
import org.springframework.context.annotation.Bean; | |
import org.springframework.context.annotation.ComponentScan; | |
import org.springframework.context.annotation.Configuration; | |
import org.springframework.http.HttpStatus; | |
import org.springframework.http.MediaType; | |
import org.springframework.http.ResponseEntity; | |
import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; | |
import org.springframework.web.bind.annotation.RequestBody; | |
import org.springframework.web.bind.annotation.RequestMapping; | |
import org.springframework.web.bind.annotation.RequestMethod; | |
import org.springframework.web.bind.annotation.RestController; | |
@SpringBootApplication | |
@ComponentScan("com.test") | |
public class Application { | |
public static void main(String[] args) { | |
SpringApplication.run(Application.class, args); | |
} | |
@RestController | |
@RequestMapping(value="/") | |
public static class MyRestController { | |
@RequestMapping(value="test", method = RequestMethod.POST, | |
consumes = MediaType.APPLICATION_JSON_VALUE) | |
public ResponseEntity<User> testPost(@RequestBody User user) { | |
return new ResponseEntity<User>(user, HttpStatus.OK); | |
} | |
} | |
@Configuration | |
public static class JacksonConfig { | |
@Bean | |
public Jackson2ObjectMapperBuilder jacksonBuilder() { | |
Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder(); | |
builder.featuresToEnable(DeserializationFeature.UNWRAP_ROOT_VALUE); | |
return builder; | |
} | |
} | |
@JsonRootName("user") | |
public static class User { | |
private String name; | |
private int age; | |
public String getName() { | |
return name; | |
} | |
public void setName(String name) { | |
this.name = name; | |
} | |
public int getAge() { | |
return age; | |
} | |
public void setAge(int age) { | |
this.age = age; | |
} | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
group 'spring-boost-jackson' | |
version '1.0-SNAPSHOT' | |
buildscript { | |
repositories { | |
mavenCentral() | |
} | |
dependencies { | |
classpath("org.springframework.boot:spring-boot-gradle-plugin:1.3.2.RELEASE") | |
} | |
} | |
apply plugin: 'java' | |
apply plugin: 'idea' | |
apply plugin: 'spring-boot' | |
sourceCompatibility = 1.5 | |
repositories { | |
mavenCentral() | |
} | |
dependencies { | |
testCompile group: 'junit', name: 'junit', version: '4.11' | |
compile("org.springframework.boot:spring-boot-starter-web") | |
compile 'com.fasterxml.jackson.core:jackson-core:2.7.1' | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment