我是jEE的新手,这是我第一个使用spring的jEE代码。下面的代码工作正常。当我进入本地主机时,他只是打印字符串索引。否则他会打印处理错误。
我的问题是:如果我使用@Controller
而不是@RestController
,为什么该代码不再起作用
我在Spring的文档中找不到任何简单的解释,我希望有人可以对此进行解释。
我觉得没有像thymeleaf这样的东西(我知道如果我正在使用thymeleaf的话,字符串索引将被ressources文件夹中的索引页替换)就无法单独运行控制器。 xml或json或其他内容。
谢谢
@RestController
public class HelloController implements ErrorController {
@RequestMapping("/")
public String index() {
return "index";
}
@RequestMapping("/error")
public String error() {
return "gestion erreur";
}
@Override
public String getErrorPath() {
return "/error";
}
}
答案 0 :(得分:0)
mylist = ['Hello', 'what', 'is', 'your', 'name']
mylist = [(mylist[i][1:] + mylist[i][0:1]) for i in range(0,len(mylist))]
print(mylist)
的工作是创建模型对象的Map并查找视图,但是['elloH', 'hatw', 'si', 'oury', 'amen']
只是返回对象,而对象数据则以JSON或XML的形式直接写入HTTP响应中。
@Controller
是一个通用注释,用于将类标记为Spring MVC Controller,而@RestController
是RESTFul Web服务中使用的特殊控制器,等效于@Controller
+ { {1}}。
如果您想要不使用@RestController
的相同功能,则可以使用@Controller
和@ResponseBody
。
@RestController