-->
  • 39141

    文章

  • 313

    评论

  • 27

    友链

  • 最近新加了换肤功能,大家多来逛逛吧~~~~
  • 喜欢这个网站的朋友可以加一下QQ群,我们一起交流技术。

关于playframework1.2.4 static 关键字使用的一些思考

喜欢本站的朋友可以收藏本站,或者加入QQ群:172816590Web网页设计师,我们大家一起来交流技术!

欢迎来到梁钟霖个人博客网站。本个人博客网站提供最新的站长新闻,各种互联网资讯。 还提供个人博客模板,最新最全的java教程,java面试题。在此我将尽我最大所能将此个人博客网站做的最好! 谢谢大家,愿大家一起进步!

在Play1.2.4中Controller中的方法需要static修饰符号才能成为一个Action。 所以像获取pageNum和searchword参数时只能够在Action中定义临时变量来存储参数。这样必然会存在大量重复的代码,比如像下面两个Action中就存在重复的代码。

 

有n多次我想把这几个变量定义到BaseController中去,然后在Action中直接使用,但没有成功。

这几个变量应当为Controller的私有属性,不能使用static关键字进行修饰,但是Action又是使用static进行修饰的,没法操作私有属性。

为什么这几个变量不能使用static进行修饰?

 虽然使用static进行修饰之后程序看似似乎没有任何的问题。但实质上会存在线程安全问题,A看到搜索的结果可能是由B输入的关键词搜索的结果,所以万万是不能使用static修饰Controller的私有属性的。 当然可以使用ThreadLocal来包装这些变量使得程序变得线程安全,但是这样的使用方式未免代价太大。

 

好在Play在之后的版本没有使用static修饰Action ,这应该可以让Controller变得更加灵活。

 

 

 

 

 

 

 

 

 

 

 

 

 


 转载至链接:https://my.oschina.net/qidis/blog/2395811。


您觉喜欢本网站,或者觉得本文章对您有帮助,那么可以选择打赏。
打赏多少,您高兴就行,谢谢您对梁钟霖这小子的支持! ~(@^_^@)~

  • 微信扫一扫

    微信打赏
  • 支付宝扫一扫

    支付宝打赏
转载原创文章请注明出处,转载至: 梁钟霖个人博客www.liangzl.com

0条评论

Loading...


发表评论

电子邮件地址不会被公开。 必填项已用*标注

自定义皮肤