网站空间管理地址,wordpress用户id,wordpress能否做网站,网站制作公司怎么样因此#xff0c;重大的公告发布了– Heroku开始为Play Framework应用程序提供本机支持#xff01; 如果您还没有听说过#xff0c;请在Heroku的博客上查看Jesper Joergensen的帖子 。 因此#xff0c;对于演示#xff0c;我将建立一个非常基本的Twitter副本#xff1b; 它… 因此重大的公告发布了– Heroku开始为Play Framework应用程序提供本机支持 如果您还没有听说过请在Heroku的博客上查看Jesper Joergensen的帖子 。 因此对于演示我将建立一个非常基本的Twitter副本 它本来就很简单但是却显示了Play足够的生产力 提供。 我将逐步完成设置演示应用程序的步骤该应用程序应涵盖Heroku博客文章中宣布的内容但要更深入一些。 第一步创建应用程序 play new twitter 将依赖性添加到CRUD模块conf / dependencies.yml - play - crud 获取依赖项 play dependencies IDE整合 对于Eclipse play eclipsify 对于IntelliJ play idealize 对于Netbeans play netbeansify 创建模型app / models / Tweet.java package models;import java.util.Date;
import java.util.List;import javax.persistence.Entity;import play.data.validation.MaxSize;
import play.data.validation.Required;
import play.db.jpa.Model;Entity
public class Tweet extends Model {RequiredMaxSize(140)public String tweet;Requiredpublic Date createDate new Date();public static List findLatest() {return Tweet.find(“order by createDate desc”).fetch();}Overridepublic String toString() {return this.tweet;}} 为JPA模型定义数据库conf / application.conf db${DATABASE_URL} 添加控制器操作app / controllers / Application.java package controllers;import java.util.List;import models.Tweet;
import play.mvc.Controller;public class Application extends Controller {public static void index() {List tweets Tweet.findLatest();render(tweets);}public static void create(String msg) {Tweet tweet new Tweet();tweet.tweet msg;tweet.save();render(tweet);}public static void tweets() {List tweets Tweet.findLatest();renderJSON(tweets);}
} 定义主视图app / views / Application / index.html #{extends ‘main.html’ /}
#{set title:’Home’ /}!– Create Tweet Form –form input name”tweet” type”text” /
input type”submit” value”Tweet” / /form!– Latest Tweets List –
ul #{list tweets}
li${_.tweet} (${_.createDate.since()})/lipp
#{/list}/ul
!– JS –
script type”text/javascript”// Capture Form Submit Event$(‘form’).submit(function() {// Define Create Actionvar createAction #{jsAction create(‘:tweet’) /}// Call Create Action$.post(createAction({tweet: $(‘input:first’).val()}), function(data) {// Prepend Results to the List$(‘ul’).prepend(data);$(‘input:first’).val(”);});// Don’t let the browser redirectreturn false;});/script 定义创建操作视图app / views / Application / create.html licode${tweet.tweet} (${tweet.createDate.since()})/li 创建推文模型的单元测试 import models.Tweet;import org.junit.Assert;
import org.junit.Test;import play.test.UnitTest;public class TweetTest extends UnitTest {Testpublic void testModelSave() {long count Tweet.count();Tweet t new Tweet();t.tweet “my sample tweet”;t.save();long count2 Tweet.count();Assert.assertEquals(count 1, count2);}} 为推特模型创建CRUD管理员 package controllers;public class Tweets extends CRUD {
} 添加路由conf / routes * /admin module:crudGET /rest/tweets Application.tweets 为CRUD管理员定义消息conf / messages tweetTweet
createDateDate Created 定义配置文件 web: play run –%$FRAMEWORK_ID –http.port$PORT -DusePrecompiled$USE_PRECOMPILED -DDATABASE_URLmem 在开发中运行 play run –%dev -DusePrecompiledfalse -DDATABASE_URLmem 在Heroku上创建应用程序 heroku create play-twitter –stack cedar heroku创建推特-堆叠杉 设置Git存储库 git init; git add .; git commit -a -m “Initial Commit”; git remote add heroku githeroku.com:play-twitter.git 设置Heroku环境变量 heroku config:add FRAMEWORK_IDprod; heroku config:add USE_PRECOMPILEDtrue 部署到Heroku git push heroku master 如果有任何问题您可以随时检查日志 heroku logs 在Heroku上设置真实数据库 heroku addons:add shared-database 您可以检出现场演示在这里 管理界面这里或克隆的源代码Github上 。 参考我们的JCG合作伙伴 Felipe Oliveira位于Geek完全使用 其中包含Play框架AJAXCRUD和Heroku的简单Twitter逐步指南 。 相关文章 RabbitMQ播放模块 构架 Heroku运行Java 在90分钟内使用Grails构建Twitter要点 Spring MVC开发–快速教程 Spring MVC3 Hibernate CRUD示例应用程序 Java教程和Android教程列表 翻译自: https://www.javacodegeeks.com/2011/09/simple-twitter-play-framework-ajax-crud.html