哇哈哈,寒假结束啦,于是我又开新坑了。。。。这次的主角可是大名鼎鼎的Play Framework!!那么闲话少说,开始攻略吧!

1.什么是Play Framework?

大名鼎鼎的play framework究竟是什么呢!? 当然是一个框架了(废话!),官方的定义请自行查阅官网:https://www.playframework.com/

个人的理解是,play framework是一个基于scala的轻量级web开发框架。Play framework本身是采用scala编写的,在设计过程中深受Ruby on Rails的启发与影响。在Play framework基础上,开发人员可以自由选择使用Java还是Scala进行web开发,并可与已有的Java程序方便地集成。在如今xml(annotation)横飞的Java EE开发领域,Play framework可以说是Java开发人员的福音。在约定优于配置的指导思想下,终于可以和繁琐的配置文件说再见了!

总而言之呢,play framework就是一个快速,简单,好玩儿的轻量级Java(Scala)Web开发框架,尽管它不像大名鼎鼎的SSH那么流行,但是还是有着很多令人赏心悦目的特性。所以说,Play Framework简直就是简单易懂的现代魔法啊有木有!

2.Play Framework的安装

安装play framework之前,请务必先安装好JDK,不过能看到这里的估计都是Java程序员啦,这个问题可能不存在的说。

【1】下载安装包:https://www.playframework.com/download

点击下载(只有1M),然后解压即可;我解压在了I:\Play\activator 这里

【2】配置环境变量

这个和Java一样的,编辑path环境变量,把刚才那个目录加进去就好了

【3】安装完毕,打开cmd测试一下吧:

activator help

如果弹出了帮助信息,就说明安装成功了哟!真的是简单易懂呢!

3. IDE?

其实到这里,框架就已经配置好了,已经可以开发web程序了。不过我还是要推荐一个大名鼎鼎的Java IDE:http://www.jetbrains.com/idea/ IntellJ Idea,就是它了!你看play framework官网的介绍视频里用的就是它,功能十分强大。

【1】官网下载开发工具:http://www.jetbrains.com/idea/

【2】安装

【3】购(po)买(jie)注册码

【4】安装scala插件:http://confluence.jetbrains.com/display/IntelliJIDEA/Scala

对于这个IDE以及相关插件的安装,官网教程十分丰富,也不是本文的讨论重点,因此就介绍到这里了,如有疑问,请联系我!

4. 第一个Hello World程序

按照国际惯例,我们来写一个Hello world吧!首先在cmd中切换到我的工作目录:

【1】新建项目

activator new

初次使用,可以需要等待若干分钟,因为它在下载相关资源和模板,之后就很快了。

【2】选择模板

输入5,选择play-java模板,输入helloworld为项目名称,这样一个java项目就自动生成了。

【3】进入helloworld项目目录

cd helloworld

【4】启动服务器

activator run

初次启动服务器,也需要等待它下载更新,之后就不用了!

【5】打开浏览器,输入:http://localhost:9000/

于是你就看到上面的这个网页了!怎么样,是不是十分的简单易懂呢!?

【6】修改/helloworld/app/controllers/Application.java文件

为了能够显示Hello World,我们把Your new application is ready.这句话改成Hello World!

【7】刷新网页

修改成功,好神奇!

5.下回预告

本次简单易懂的现代魔法就到此结束了。下次的主要内容是:

(1)为什么修改Application.java会修改页面显示,后台代码文件是如何影响前端的?

(2)url地址与展示的页面有什么关系

(3)Web网页的工作原理

敬请期待:简单易懂的现代魔法——Play Framework攻略2:Controllor与Routes

简单易懂的现代魔法——Play Framework攻略1的更多相关文章

  1. 简单易懂的现代魔法——Play Framework攻略4

    接前文:简单易懂的现代魔法——Play Framework攻略3 1.The Object 时隔2个多月,Play Framework系列又更新了,本次的主题是:利用Play Framework实现R ...

  2. 简单易懂的现代魔法——Play Framework攻略3

    接前文:http://www.cnblogs.com/Kassadin/p/4343682.html 目前为止,我们已经研究了Play Framework的体系结构以及Web应用程序的工作原理.本来今 ...

  3. 简单易懂的现代魔法——Play Framework攻略2

    接前文:http://www.cnblogs.com/Kassadin/p/4335908.html 上次讲到Play Framework开发环境的配置,以及第一个Hello World程序:本次主要 ...

  4. linux内核升级图文攻略(转)

    一.Linux内核概览Linux是一个一体化内核(monolithic kernel)系统.设备驱动程序可以完全访问硬件.Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设置 ...

  5. Moon.Orm3.8技术全攻略

    Moon.ORM技术全攻略  一.绪论 本文主要是针对Moon.ORM的技术的讨论及其使用使用指导.如有其它疑问,请留言.本文主要针对Moon.ORM3.9版本,同时将会对4.0做一个技术预览.本文从 ...

  6. linux内核升级图文攻略

    Linux内核概览 Linux是一个一体化内核(monolithic kernel)系统. 设备驱动程序可以完全访问硬件. Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设 ...

  7. 圣魔大战3(Castle Fantisia)艾伦希亚战记完美攻略

    作为城堡幻想曲系列续作,艾伦希亚战记继承了前作的战棋+养成模式进行游戏. (城堡幻想曲3,纠正大家个错误哦,不是圣魔大战3,圣魔大战是城堡幻想曲2,圣魔大战不是个系列,艾伦西亚战记==艾伦希亚战记,一 ...

  8. 视频聊天插件:AnyChat使用攻略之iOS开发指南

    AnyChat使用攻略之iOS开发指南 这套攻略主要指导刚开始使用AnyChat SDK For iOS的同学,快速搭建SDK环境,和实现音视频开发流程. (需要工程案例文件可联系我们) 在iOS平台 ...

  9. php连接微软MSSQL(sql server)完全攻略

    http://www.jb51.net/article/98364.htm php连接微软MSSQL(sql server)完全攻略 作者:吵吵 字体:[增加 减小] 类型:转载 时间:2016-11 ...

随机推荐

  1. oc - runtime运行机制

      Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时做的事放到了运行时来处理.同时OC也是一门简单的语言,很大一部分是C的内容,只是在语言层面上加了关键字和语法,真正让OC强大 ...

  2. YCM的安装与配置

    花了好几天的时间,总算把YCM装上了.期间遇到了各种问题,主要还是因为刚进linux,对linux环境不熟, 命令资料等查了半天.当然,YCM也普遍被认为是一种安装配置复杂,但使用起来超简单的插件. ...

  3. 使用android.support.design.widget.TabLayout出现java.lang.reflect.InvocationTargetException

    解决方法: 1.在res里面的Values里面的styles定制一个自己的colorPrimary <style name="MyAppTheme" parent=" ...

  4. SQL多表连接

    在KS系统中分配好权限以后,在用户登录的时候就要通过用户查到角色,通过角色查到界面,界面又属于某个菜单,一共要查4个表.并且不能有重复的记录这个时候就用到了SQL的内连接.SQL的多表连接很方便,以前 ...

  5. SetTimeOut jquery的作用

    1. SetTimeOut() 1.1 SetTimeOut()语法例子 1.2 用SetTimeOut()执行Function 1.3 SetTimeOut()语法例子 1.4 设定条件使SetTi ...

  6. js IDE WebStorm 注册码

    webStorm : UserName:William ===== LICENSE BEGIN ===== 45550-12042010 00001SzFN0n1bPII7FnAxnt0DDOPJA  ...

  7. ES5中的有9个Array方法

    Array.prototype.indexOf Array.prototype.lastIndexOf Array.prototype.every Array.prototype.some Array ...

  8. 升级Mac osx 10.10 后安装php 的mcrypt extension

    昨天折腾到凌晨四点多,今天又到这个点,终于成功了,心情比较复杂,先记录一下,改日再整理,此刻头昏脑胀,只想蒙头大睡. 发的问题,还没人回复,自己找到答案了,英语比较蹩脚,凑合看.. http://st ...

  9. 0x02全局变量和局部变量

    全局变量在什么地方定义? .data和.data? 格式如下: 变量名 类型 初始值1,初始值2... 变量名 类型 重复数 dup(初始值1,初始值2,...) 变量名 类型 ? 类型有哪些? 字节 ...

  10. WebApi参数传递总结

    在WebAPI中,请求主体(HttpContent)只能被读取一次,不被缓存,只能向前读取的流. 举例子说明: 1. 请求地址:/?id=123&name=bob 服务端方法: void Ac ...