继刚接触play framework后,一些心得
我是个小菜鸟,我这些体会跟心得纯属个人观点,仅供参考,勿喷,我想记录下学习的历程,不断成长
在play2.0的框架里面 用到的最多的语言就是scala,对于习惯了java语言的我们来说 看这些语言确实是非常的别扭, 但是没办法 项目下来了 必须做
好了不废话了 下面开始写心得
简单的怎么样启动play项目跟配置我就不说了 这些在我上篇文章中就写过了
play 框架中 用到最多的或者说目前来说比较流行的引用css 就是bootstrap了。 在这样的框架里,所有的html都必须以xxx.scala.html才能被识别。每一个html文件你都可以理解成是一个类文件, 既然是类文件那么肯定是有对象,对象在哪里,就在你的java文件的引用里面就有.
上图:
在这里,我们引用了views包下面的所有html的类文件,
这样在我们给服务器发送请求的时候也就是访问http 服务器的时候,我们其实已经通过GET方法访问了我们的java文件也就是后台, 通过后台返回的数据再来渲染我们的画面,
return ok(seller_add.render(xx)); render是常用的 用来渲染画面的函数, 里面的参数由你自己设定, 这句话的意思就是 往seller_add.scala.html页面返回我的数据,
那么routes文件里是这样配置的。
意思是我们访问页面的时候通过GET 请求http服务器, 然后routes文件 通过这个GET方法找到我们的com.duomi.controllers.SellerController.add() 这个路径下的方法, 然后该方法会返回我们想要的数据, 通过render()渲染我们想要的画面.
下面要注意的就是重点, 通常来说 我们传统意义上的jsp页面都是通过 action里面的方法查询完数据库之后, 返回一个JSON串,然后通过引用一个js css 来完成我们想要的画面,
scala不同的地方在于 你画面上返回了什么样的参数, 这些参数是什么类型, 多少个参数, 那么scala.html文件里就要定义好这么多的参数,这样的参数类型.
而所传参数可以直接这样使用
在scala.html文件中 引用css样式等文件可以这样引用
在提交表单数据的时候 可以这样提交
将你所有的 <table><tr><td></td></tr></table> 里面的数据 都放在这个类似于方法体里面写
而如果想要跳转页面可以像这样
至于想在页面上弄一个输入框等输入文字, 这里给大家看一下示例:
API在这个网址 http://www.playframework.com/documentation/2.0/api/scala/views/html/helper/package.html
大家可以自己去查询.
在scala.html中 是可以直接访问我们在java文件中定义的方法的。
这里定义了一个opts变量 = xxxfineByValue().options 。 里面的OptionType 就是
对象.属性
通过配置文件 无需写SQL - - 直接获得options的值。
至于怎么样获得的,等我弄明白了我会写,因为我也是刚开始学习.如果哪位大神知道,请一定联系我,教教我。
继刚接触play framework后,一些心得的更多相关文章
- java工程项目里,在一个包里面,不能出现同名的类名,这问题是刚接触java才会遇到的,特别是新手一般都没有建立包,而是使用默认的,易出现同名的类名,导致eclipse提示错误
java工程项目里,在一个包里面,不能出现同名的类名,这问题是刚接触java才会遇到的,特别是新手一般都没有建立包,而是使用默认的,易出现同名的类名,导致eclipse提示错误. 问题: 创建了一个工 ...
- 刚接触js不久,自己写的banner幻灯片效果。
对于我这种菜鸟来讲,刚接触项目.叫我用插件,其实我说插件太臃肿不想用,倒不如说我是看不懂那些插件...- -(更愿意自己写点看得懂的代码,顺便也是个学习的过程) 所以自己花了些时间,自己来写了个dem ...
- 先装Net Framework 后 装 IIS的处理办法
先装IIS话,后面装Net Framework时候会自动注册 处理aspx和ashx等的处理扩展程序 先装Net Framework 后 装 IIS.扩展程序注册在命令:aspnet_regiis - ...
- cpe移植framework后,。解决问题的现有数据库
最近,该公司的业务需求,原始订单apk的形式CPE.渗透framework层.这被剥离cpe,从事相当长的一段,终于有时间来写博客,记下遇到的问题,未来. 第一个问题是,原来的apk有些事情,移植fr ...
- 安装完Framework后如何不重启系统?
在.net平台下客户端部署时,如果客户端没有安装Framework时,部署程序安装Framework后,有一个要求重启选项,当然是非强制的.如果不想出现这个提示“重启”选项,可以做如下选择: 1.启动 ...
- android 修改源码framework后如何编译【转】
本文转载自:https://blog.csdn.net/fuchengbo000/article/details/43193801 1.如果在framework/base/core/res/res下添 ...
- 刚接触HTML5应该先学哪里才好?
好吧,话不多说,直接来点干货吧! 刚接触html的小白都感觉摸不着头脑?应该怎么学习呢,其实HTML5可能对于还没有接触过的小白来说会比较的难,听起来也比较新颖.这是个什么骚东西!其实不然,这个就是构 ...
- 刚接触SkyLine的一点小收获与感触
因为刚接触Skyline不到一个星期,也怕把学习到的忘记掉,所以写一点学习到的一些皮毛的东西,赶紧记录一下,怕回头忘记 1.网上关于web端的开发非常多,也有很多牛人分享自己的经验,所以学习起来也相对 ...
- Alpha版本后的心得体会
Alpha版本后的心得体会 在我们一系列的努力之下,我们团队打造的校园互助式快递代取APP——U-Help的α版本终于能够问世了.尽管这个版本存在着这样那样的问题,但是我们还是对此抱有充足的信心.另一 ...
随机推荐
- jQuery实现的全选、反选和不选功能
适用于网页多选后需要进行批量操作的场景(如批量删除等).如有问题希望大家可以指正.谢谢~~ HTML 我们的页面上有一个歌曲列表,列出多行歌曲名称,并匹配复选框供用户选择,并且在列表下方有一排操作按钮 ...
- DLog 技巧
#ifdef DEBUG#ifndef DLog# define DLog(fmt, ...) {NSLog((@"%s [Line %d] " fmt), __PRETTY_FU ...
- Function 语意学
C++支持三种类型的member functions: static.nonstatic和virtual,每一种类型调用方式都不相同. 一 nostatic members functions 1 调 ...
- (转载)tarjan求割点
割点是无向图中去掉后能把图割开的点.dfs时用dfn(u)记录u的访问时间,用low(u)数组记录u和u的子孙能追溯到的最早的节点(dfn值最小).由于无向图的dfs只有回边和树边,且以第一次dfs时 ...
- day55
担心了好久的编译原理也总是考完了 大学里的最后一次考试也是结束罗 这次的考试起伏跌宕啊 我们本来是9点钟开始考试 但是我们班的几个同学基本上7点钟就去了 为了什么?? 选个好的位置撒哈哈,到了九点,老 ...
- 前端开发利器—FIDDLER 转
http://www.cnblogs.com/yuzhongwusan/archive/2012/07/20/2601306.html 前端开发利器—FIDDLER 1.Fiddler相对其他调试工具 ...
- iOS UIView显示颜色渐变
-(void)colorWear:(UIView *)view{ CAGradientLayer *gradient = [CAGradientLayer layer]; gradient.frame ...
- python wmi模块学习
# -*- coding: cp936 -*- import wmi c = wmi.WMI () for sys in c.Win32_OperatingSystem(): print " ...
- Oracle的sql语句中case关键字的用法 & 单双引号的使用
关于sql中单引号和双引号的使用,来一点说明: 1. 查询列的别名如果含有汉字或者特殊字符(如以'_'开头),需要用双引号引起来.而且只能用双引号,单引号是不可以的. 2. 如果想让某列返回固定的值, ...
- Log4j使用说明
Log4J实例应用开发 在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行定义.定义步骤就是对Logger.Appender及Layout的分别使用.Log4j支持两种配置文件格式,一 ...