如何为具体控制器配置ViewResolver

时间:2013-10-29 14:15:58

标签: java spring rest spring-mvc configuration

我有spring mvc应用程序。我有2个控制器 -

首先使用标准视图解析器并渲染到jsp

第二个使用resolver for creatin RestFull wev service

我如何配置它?

更新

第一个控制器

@Controller
@RequestMapping("/controllerPath")
public class MyController {

    @RequestMapping("/sayHello")
    public String sayHello(Model model){
        model.addAttribute("name", "Vasya");
        return "hello";
    }

}

它使用

<bean id="viewResolver"
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix">
            <value>/WEB-INF/views/</value>
        </property>
        <property name="suffix">
            <value>.jsp</value>
        </property>
    </bean>

我需要添加一个控制器,它将作为restful webservice工作并将json返回给客户端

1 个答案:

答案 0 :(得分:0)

您只需在类路径中包含Jackson库并将要序列化的对象返回到JSON,或者使用@ResponseBody注释指示您的返回对象应该用作HTTP响应的“正文”直接。

使用杰克逊

@RequestMapping("/myRestful")
MyDomainObject myRestfulService() {
   // .. do some stuff... //
   return new MyDomainObject(); // <- Return some object
}

使用@ResponseBody

@RequestMapping("/myRestful")
@ResponseBody String myRestfulService() {
   // .. do some stuff... //
   return new "This is some string that will be returned, as-is, to the client"; // <- Return some data
}

希望有所帮助