今天看教程,学spring返回json,但是教程中,人家是用的spring3。然而跟我用的版本一点都不相同,所以我没办法,一个一个的报错异常就来了。
小五同学就一个一个排错。后来发现,实际上是包的问题。
在以前的使用的json包为:
jackson-core-asl.jar
jackson-mapper-asl.jar
但是我用这俩包配上后不行,各种原因。
貌似新版本需要用这三个包:
- <pre name="code" class="html"> jackson-annotations
解决办法:
maven依赖
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-core</artifactId>
- <version>2.7.4</version>
- </dependency>
-
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-annotations</artifactId>
- <version>2.7.4</version>
- </dependency>
-
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-databind</artifactId>
- <version>2.7.4</version>
- </dependency>
springmvc-servlet.xml
- <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping">
- </bean>
- <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
- <property name="messageConverters">
- <list>
- <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter" />
- </list>
- </property>
- </bean>
java类:
- @Controller
- public class JsonController {
-
- @ResponseBody
- @RequestMapping("getJson")
- public User getUserInfo(){
- User user = new User();
- user.setName("xiaowu");
- user.setPassword("123456");
- return user;
- }
- }
就是这样!