当前位置: 首页 > news >正文

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

哇哈哈,寒假结束啦,于是我又开新坑了。。。。这次的主角可是大名鼎鼎的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环境变量,把刚才那个目录加进去就好了

image

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

activator help

image

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

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中切换到我的工作目录:

image

【1】新建项目


 

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

【2】选择模板

image

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

【3】进入helloworld项目目录


 

【4】启动服务器


 

image

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

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

image

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

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

image

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

image

【7】刷新网页

image

修改成功,好神奇!

5.下回预告

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

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

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

(3)Web网页的工作原理

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

转载于:https://www.cnblogs.com/Kassadin/p/4335908.html

相关文章:

  • struts2上传文件,文件大小默认最大值的修改
  • **PHP二维数组遍历时同时赋值
  • Windows server 2008系统的安装
  • 修正memcache.php中的错误示例
  • [每天一个知识点]34-职业生涯-用得着和用不着的知识
  • 将集成spring的项目从tomcat上移植到weblogic下存在的问题
  • Python中不要定义和系统模块一样的名字
  • AngularJS之过滤器
  • ios面试总结-
  • 一步一步给你的 Android app 加入聊天功能
  • 敏捷实施:看板能否实现规模化?
  • Java读写Excel之POI超入门
  • 13.allegro 颜色设置[原创]
  • vistual studio 2012 安装失败,提示Microsoft Vistual Studio 2012 Devenv找不到元素,等错误信息...
  • 在浏览器中输入Google.com并且按下回车之后发生了什么?(转)
  • 分享的文章《人生如棋》
  • 分享一款快速APP功能测试工具
  • canvas 绘制双线技巧
  • Cookie 在前端中的实践
  • JAVA_NIO系列——Channel和Buffer详解
  • JavaScript 奇技淫巧
  • log4j2输出到kafka
  • magento 货币换算
  • node学习系列之简单文件上传
  • Puppeteer:浏览器控制器
  • Python 反序列化安全问题(二)
  • rc-form之最单纯情况
  • Vue 动态创建 component
  • 高度不固定时垂直居中
  • 工作手记之html2canvas使用概述
  • 前言-如何学习区块链
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 手机端车牌号码键盘的vue组件
  • 腾讯大梁:DevOps最后一棒,有效构建海量运营的持续反馈能力
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 原生 js 实现移动端 Touch 滑动反弹
  • 《码出高效》学习笔记与书中错误记录
  • 教程:使用iPhone相机和openCV来完成3D重建(第一部分) ...
  • #pragma data_seg 共享数据区(转)
  • #pragma once
  • #stm32驱动外设模块总结w5500模块
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • $分析了六十多年间100万字的政府工作报告,我看到了这样的变迁
  • (1)(1.11) SiK Radio v2(一)
  • (Matalb分类预测)GA-BP遗传算法优化BP神经网络的多维分类预测
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (阿里云万网)-域名注册购买实名流程
  • (八)Spring源码解析:Spring MVC
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (附源码)ssm基于微信小程序的疫苗管理系统 毕业设计 092354
  • (三)docker:Dockerfile构建容器运行jar包
  • (实战篇)如何缓存数据
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)