package com.jontian.demo; import com.fasterxml.jackson.databind.Module; import com.fasterxml.jackson.datatype.hibernate5.Hibernate5Module; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @SpringBootApplication @Configuration public class Application { /* NOTE: FetchType.LAZY won't work because Jackson will try to run getter. Thanks chrismarx http://stackoverflow.com/questions/21708339/avoid-jackson-serialization-on-non-fetched-lazy-objects Add this bean solves this issue. */ @Bean public Module datatypeHibernateModule() { return new Hibernate5Module(); } public static void main(String[] args) { SpringApplication.run(Application.class, args); } }