Akka/play(activator) 2.5.3 创建工程 2

Akka/play(activator)2.5.3 创建工程


2016-5-19



4. 测试自带的Controller

首先,我们看一下交互

[root@xuyongshimytest]# curl -X GET http://127.0.0.1:9000/message

Hi![root@xuyongshimytest]#

[root@xuyongshimytest]# curl -X GET http://127.0.0.1:9000/count

0[root@xuyongshimytest]#

[root@xuyongshimytest]# curl http://127.0.0.1:9000/count

1[root@xuyongshimytest]#


4.1 conf/routes文件

这个配置指明了url地址和 controller及里面的方法之间的关系。

如: GET /count controllers.CountController.count

客户端使用GET动词访问/count的时候,由controllers.CountController类的count方法响应。


packagecontrollers 下 有

Controller

|

CountController

对应的函数如下:

publicResult count() {

returnok(Integer.toString(counter.nextCount()));

}


在浏览器中,直接访问http://localhost:9000/count,页面显示一个数字。


4.2 写一个简单的controller

conf/routes文件中添加如下定义:

PUT /:str1/:str2 controllers.MyController.myFunc(str1: String, str2: String)


app/ controllers目录下,添加MyController.java文件:

packagecontrollers;


importplay.Logger;

importplay.mvc.Controller;

importplay.mvc.Result;


publicclass MyController extends Controller {

/**

*Example: curl -X PUT http://localhost:9000/my1/my2

*@return

*/

publicResult myFunc(String str1, String str2) {

Logger.info("Class:[{}], Method: [{}], Message: [{}]",

"myController","myFunc", "para1: "+str1+", para2: "+str2);


returnok(""+ str1 + "\n" + str2 + "\n" +"hello again!\n");

}

}


打开一个终端,执行:curl -X PUThttp://localhost:9000/my1/my2


play能够自动感知变化,动态编译,加载配置,响应请求。

控制台输出如下:

[info]Compiling 4 Scala sources and 2 Java sources to/tmp/demo/mytest/target/scala-2.11/classes...

[info]Compiling 2 Scala sources to/tmp/demo/mytest/target/scala-2.11/classes...

[info]Compiling 1 Scala source to/tmp/demo/mytest/target/scala-2.11/classes...

---(RELOAD) ---

[info]application - ApplicationTimer demo: Stopping application at2016-05-19T06:41:25.830Z after 14203s.

[info]application - ApplicationTimer demo: Starting application at2016-05-19T06:41:26.141Z

[info]play.api.Play - Application started (Dev)

[info]application - Class: [myController], Method: [myFunc], Message:[para1: my1, para2: my2]


客户端输出如下:

[root@xuyongshicontrollers]# curl -X PUT http://localhost:9000/my1/my2

my1

my2

helloagain!



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值