控制器里的具体路径用于渲染对应的请求。
简单的控制器代码:
@Path("/") public class TestController { @Get("hello") public String test(){ return "@a"; } }
http://localhost/hello
将会返回:a。就是这么简单。
一个贴吧功能的Controller如下:
@Path("myforum") public class ForumController { @Get("topic") public String getTopics() { //显示主帖列表 return "topiclist"; } @Get("topic/{topicId:[0-9]+}") public String showTopic(@Param("topicId") int topicId) { //显示单个主帖和它的跟贴 return "topic"; } @Get("topic/{topicId:[0-9]+}/comment/{commentId:[0-9]+}") public String showComment(@Param("topicId") int topicId, @Param("commentId") int commentId) { //显示单个跟贴 return "comment"; } @Post("topic") public String createTopic(){ //创建一个主帖 return "topic"; } @Post("topic/{topicId:[0-9]+}/comment") public String createComment(@Param("topicId") int topicId){ //创建一个跟贴 return "comment"; } }
Controller方法的返回值:
rose中,controller方法的返回值有下面几种规则:1.返回普通字符串,如上所述,最常用的做法,渲染视图文件并返回。
2.以“@”开头的字符串,比如“return "@HelloWorld";”,会将“@”后面的字符串“HelloWorld”作为结果返回。
3.以“@json:”开头的字符串。