@Controller和@RestController

@RestController=@Controller+@ResponseBody

1.使用RestController时,返回到前端的内容是Return里的内容,无法返回jsp/html等页面,

此时的在application-spring.xml的配置文件中,不需要配置视图解析器

1  <!-- 3.配置jsp 显示ViewResolver -->
2 <bean id="viewResolver"
3           class="org.springframework.web.servlet.view.UrlBasedViewResolver">
4         <property name="viewClass"
5                   value="org.springframework.web.servlet.view.JstlView" />
6         <property name="prefix" value="/WEB-INF/jsp/" />
7         <property name="suffix" value=".jsp" />
8 </bean>

注释:视图解析器会根据控制层返回的字符串进行解析,如果返回的是return "hello",经过解析器会自动加上前缀和后缀,变成/WEB-INF/view/hello.jsp。

2.如果需要返回指定页面,可使用@Controller,配合上述的视图解析器, 如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。

猜你喜欢

转载自www.cnblogs.com/alice-cj/p/11485918.html