惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Security Affairs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Jina AI
Jina AI
P
Palo Alto Networks Blog
GbyAI
GbyAI
大猫的无限游戏
大猫的无限游戏
A
Arctic Wolf
Hugging Face - Blog
Hugging Face - Blog
小众软件
小众软件
Y
Y Combinator Blog
T
The Blog of Author Tim Ferriss
Blog — PlanetScale
Blog — PlanetScale
S
Schneier on Security
V
Vulnerabilities – Threatpost
C
Cybersecurity and Infrastructure Security Agency CISA
雷峰网
雷峰网
T
Tenable Blog
人人都是产品经理
人人都是产品经理
T
Tor Project blog
C
Cyber Attacks, Cyber Crime and Cyber Security
AWS News Blog
AWS News Blog
Microsoft Security Blog
Microsoft Security Blog
J
Java Code Geeks
Scott Helme
Scott Helme
SecWiki News
SecWiki News
C
CERT Recently Published Vulnerability Notes
Recorded Future
Recorded Future
I
InfoQ
Security Archives - TechRepublic
Security Archives - TechRepublic
Help Net Security
Help Net Security
Cloudbric
Cloudbric
C
Check Point Blog
Engineering at Meta
Engineering at Meta
TaoSecurity Blog
TaoSecurity Blog
B
Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园_首页
N
News and Events Feed by Topic
云风的 BLOG
云风的 BLOG
MyScale Blog
MyScale Blog
腾讯CDC
量子位
Application and Cybersecurity Blog
Application and Cybersecurity Blog
K
Kaspersky official blog
Vercel News
Vercel News
F
Full Disclosure
T
Troy Hunt's Blog
Forbes - Security
Forbes - Security
S
Security @ Cisco Blogs

博客园 - 张旋

node-sass 安装卡在 node scripts/install.js 解决办法 如何管理自己? 解决play-1.4.0在linux或mac下提示No such file or directory的问题 PlayFramework 1.2.x 在Controller 中识别JSON提交 写了一个小游戏 Java 动态编译 JDK 7出人意料将增加“简单”闭包,发布时间推迟至明年底 冷观PDM PDM在中国为什么比ERP更难成功实施? 什么是PDM Hibernate查询快速入门 策略→需求→建模→规划→执行 什么是BNF范式,什么又是EBNF范式? - 张旋 - 博客园 又是好久不写日志 发现自己的blog里有很多好东西 近期杂感 现在的我,有两个状态。我要去找第三个 开发通用类时遇到的几个问题 我是5型
Play! Framework —— 颠覆“企业级”=“复杂”的观念
张旋 · 2010-01-24 · via 博客园 - 张旋

Play! Framework 是07年的一个项目,08年开源,09年11月25日发布了1.0版。发布后我就一直在学习这个框架。现在正式发布版本已经是1.01版,而且1.1版本也在每日更新。可以在http://download.playframework.org 下载已发布版本,和每日的最新版。

学习Play!的过程中,最经常的感受就是——简直太简单了!并不是说Play!是一个设计简单的框架,相反学习中发现处处都会发现Play!设计的完整,这种完整性甚至包括网站设计和学习文档。Play!的简单之处在于它学习和使用起来非常简单。使用Play!新建项目,所有的目录结构都会自动建立。Play!摒弃了传统的JSP,Servlet技术(这太伟大了),自己提供了一套非常易用的MVC 框架。Play!内建了JPA的支持,内置了Hibernate作为默认的持久化引擎。

在Play!中,持久化只需要集成Model类并加入@Entity注解:

代码

 1 ...
 2 
 3 @Entity
 4 
 5 public class User extends Model
 6 
 7 {
 8 
 9   public String name;
10 
11   public String password;
12 
13   public User(String name,String password)
14 
15   {
16 
17     this.name=name;
18 
19     this.password=password;
20 
21   }
22 
23 }
24 

然后,创建User并保存到数据库就只需要一行代码:

1 new User("zxsoft","password").save();

这就是全部代码,不需要写任何Mapping配置文件。

Play! 还内置了HSQLDB 数据库,支持内存数据库,非常方便做项目开发和测试。

Play!的Controller采用命名约定:

1 <form action="@{Application.createUser}">
2     <input name="name" />
3     <input name="password" />
4     <input type="submit" value="Create User" />
5 </form>

然后在Application类中,建立createUser方法:

1 ...
2 public class Application{
3     ...
4     public static void createUser(String name,String password)
5     {
6         User user=new User(name,password).save();
7         render(user);
8     }
9 }

无需其他任何配置,Play!会自动映射form中的name和password参数至createUser方法。

View层Play!使用以Groovy语法写好的html模板中去以render()方法的参数渲染,并将结果回传给客户端。

而这一切,全部都不需要配置。

Play!虽然使用简单,扩展性却非常强大,篇幅所限所述不能详尽。http://www.playframework.org 是Play!的官方网站,推荐大家到这儿看看。Play!的文档非常详细,教程中有份手把手做一个Blog引擎的教程,相信照着做一下之后一定会让你学会Play! Framework,那时你一定会爱上她的!