play框架学习
文章平均质量分 70
基于play2.7进行学习
chaizepeng
每天进步一点
展开
-
14、使用play搭建一个web应用用例
1、play下载找到官网,直接下载即可2、启动play项目解压文件,进入到项目顶级目录等一会,下载jar包,第一次就是费劲,过一会访问9000端口,项目就启动起来了会发现3、将项目导入到eclipse重新执行sbt eclipse 命令等一会,下载jar包,第一次就是费劲按着eclipse导入项目的步骤导入即可4、play项目中前端开发找到模板引擎这个模板使用scala语言...原创 2021-07-13 11:46:43 · 224 阅读 · 0 评论 -
13、play中实现信息国际化
目录1、指定应用使用的语言2、语言配置文件3、在Controller中使用4、在模板中使用5、改变当前请求的语言6、格式化信息1、指定应用使用的语言在conf/application.conf中进行配置:这些语言标记将用于创建play.i18n.Lang实例。要访问应用程序支持的语言,可以将play.i18n.Langs组件注入类中:2、语言配置文件默认的conf/messages文件匹配所有语言。可以指定其他语言消息文件,例如:conf/messag原创 2021-07-13 11:32:15 · 222 阅读 · 0 评论 -
12、play整合Akka
1、简介Akka使用actor模型来提高抽象级别,并提供一个更好的平台来构建正确的并发和可扩展的应用程序。在容错方面,它采用了“Let it crash”的模式,这种模式在电信行业获得了巨大成功,用于构建永不停止的自我修复系统应用程序。参与者还提供透明分布的抽象,以及真正可扩展和容错应用程序的基础。2、Actor应用系统Akka工作需要依赖包含actor(容器)系统的应用程序。Play定义了特殊的actor系统,此actor系统遵循应用程序生命周期,并在应用程序重新启动时自动重新启动。3、定原创 2021-07-12 09:20:55 · 497 阅读 · 3 评论 -
11、OAuth和OpenID服务
1、OAuth1、1 简介OAuth是发布受保护数据并与之交互的简单方法。对于人们来说,这也是一种更安全的访问方式。例如,它可以用来访问你的用户在Twitter上的数据。Play仅提供对OAuth 1.0的支持。1、2 基本工作原理在build.sbt中添加配置:libraryDependencies ++= Seq( javaWs)将应用程序注册到服务提供商,回调的URL必须正确,如果不匹配,服务提供商会拒绝调用。在本地工作时,可以使用/etc/hosts在本地计算机上伪.原创 2021-07-11 18:16:59 · 429 阅读 · 1 评论 -
10、使用ws调用Rest api
1、简介有时我们想从一个play应用程序中调用其他HTTP服务。Play提供了WS库来进行异步HTTP方法调用。2、添加WS配置在build.sbt文件中添加如下配置:libraryDependencies ++= Seq( javaWs)其次还要开启Http缓存,PlayWS支持HTTP缓存,但需要JSR-107缓存实现才能启用此功能。可以添加ehcache:libraryDependencies += ehcache3、发送请求首先需要注入play提供的Ws的相.原创 2021-07-09 16:51:05 · 855 阅读 · 0 评论 -
9、play中缓存的使用
1、简介对于存储在缓存中的任何数据,都需要放置一个再生策略,以防数据丢失。这一理念是play基本原则之一。对于进程内缓存,Caffeine 通常是最佳选择。如果需要分布式缓存,play提供了Memcached和Redis的第三方插件。2、添加缓存插件添加Caffeine缓存的依赖项:libraryDependencies ++= Seq( caffeine)添加ehcache的依赖项:libraryDependencies ++= Seq( ehcache)仅..原创 2021-07-07 17:25:06 · 312 阅读 · 0 评论 -
8、play框架中持久层操作
1、使用jdbc连接数据库1、1 简介JDBC是一个阻塞操作,它将导致线程等待,直接使用JDBC进行查询将导致性能降低1、2配置数据源play提供了一个用于管理JDBC连接池的插件,可以根据需要配置任意多个数据库,想要使用此插件,需要在build.sbt依赖项中添加如下依赖项:libraryDependencies += javaJdbc之后便可以在conf/application.conf文件中配置数据源,默认的数据源必须叫做default:可以配置多个数据源:如.原创 2021-07-06 17:58:27 · 303 阅读 · 0 评论 -
7、play中的文件上传
1、基本的文件上传处理将form的类型设置成multipart/form-data,请求的方式必须是POST类型,实例如下:请求发到controller,controller中处理:public Result upload() { MultipartFormData<TemporaryFile> body = request().body().asMultipartFormData();MultipartFormData.FilePart<Temporar...原创 2021-07-03 15:22:57 · 215 阅读 · 0 评论 -
6、XML数据处理
1、处理xml请求两种方式,一是直接将请求体数据转成Document对象:二是定义自己的解析格式将请求体进行解析:2、返回xml格式数据响应设置响应头格式为application/xml类型原创 2021-07-03 15:19:05 · 146 阅读 · 0 评论 -
5、play中的json数据处理
1、play中的json库Play使用Jackson JSON库将对象转换为JSON和JSON之间的对象。play的操作使用JsonNode类型,play.libs.json包中有操作json数据的方法2、java对象和json数据将java对象转成play中的JsonNode类型:将JsonNode格式的数据解析到java对象中:3、json格式数据请求的处理Play默认支持直接将json请求体转成jsonNode的方法:也可以指定BodyParser来使得Play原创 2021-07-02 10:44:53 · 410 阅读 · 0 评论 -
4、表单提交和验证
1、启用/禁用表单modulesbt启动应用时默认就启用了表单,也可以在build.sbt中添加启用libraryDependencies += javaForms,想要移除表单时使用PlayMinimalJava 插件2、play接收表单数据play.data中的类可用于处理HTTP表单数据提交和验证,操作提交的表单可以使用play.data.Form类如果想将获取到的表单数据直接封装到对应的实体,则实体字段需要和表单字段对应,并且需要实现get、set方法;也可以不实现get、set方法,直原创 2021-07-02 10:29:23 · 569 阅读 · 0 评论 -
3、play中的模板引擎
1、模板格式Play默认的模板引擎是一种基于scala的安全模板引擎,尽管模板引擎使用Scala作为表达式语言,但是非常简单易学。参数类型使用后缀语法指定(例如: id:Long),泛型类型是使用[]符号(例如: list:java.util.List[String])。另外就是所有的错误信息可以在页面上直接显示。模板文件的命名规则是*.scala.html,模板按着简单的命名将页面编译成scala函数,如果创建了一个index.scala.html模板文件,则会生成一个具有render()方法的i原创 2021-06-29 09:41:17 · 204 阅读 · 0 评论 -
2、异步HTTP编程
1、处理异步结果 在内部,play框架是自下而上异步的。Play以异步、非阻塞方式处理每个请求。应用程序代码应尽量避免阻塞控制器,这种阻塞操作的常见例子有JDBC调用、流式API、HTTP请求和长计算。因此应尽量通过保持控制器异步的方法使得应用进行扩展,使系统在负载下保持响应。就是说,对于控制器中的一些阻塞的操作,尽量使用异步的方式进行处理。 Action中的处理要求尽可能的快,但是如果使用异步(Action默认处理请求就是异步的),那么可能会有这样的问题,结果没有计算出来,...原创 2021-06-28 16:04:39 · 532 阅读 · 0 评论 -
1、play编程基础
1、Action、Controller、ResultAction指的是动作,play中大多数请求可以使用action来处理,一个请求对应一个动作也就是一个java方法,然后处理请求返回一个响应,这个响应用Result来体现Controller就是一个继承了 play.mvc.Controller 的java类,他的返回值也是一个Result,也可以用来处理请求Result用于返回请求的处理响应信息,它提供了一些html生成器,帮助开发者直接返回上边这些都可以包含响应的原创 2021-06-24 12:10:06 · 1064 阅读 · 1 评论