用H2播放框架 - 需要简单的教程

时间:2013-10-30 17:25:14

标签: database playframework h2

我在application.conf中配置了H2 没有这个行:

db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:file:data/db"
db.default.user=sa
db.default.password=""

好的,然后使用播放运行编译我的应用程序,然后在我的应用程序路径中的其他窗口cmd提示符下播放h2-browser。下一步是什么?!当我运行播放h2浏览器时,谷歌浏览器启动时间为192.168.1.102:8082,然后是#34;哎呀! Google Chrome无法连接到192.168.1.102:8082"。我没有力气。 Play网站上的在线文档在我看来非常非常差(作为初学者)

在模型类中,在名为index(返回Result)的方法中,我有以下代码:

 String sql = "CREATE TABLE REGISTRATION " +
                   "(id INTEGER not NULL, " +
                   " first VARCHAR(255), " + 
                   " last VARCHAR(255), " + 
                   " age INTEGER, " + 
                   " PRIMARY KEY ( id ))"; 
        Statement statement = null;
        Connection connection = DB.getConnection();
        try {
            statement = connection.createStatement();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        try {
            statement.executeUpdate(sql);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return ok(
            index.render(form(Login.class))
        );

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

您的代码库应该遵循以下原则。

  1. 仅使用控制器类来处理请求/响应流。
  2. 编写模型类以定义实体属性。 Play模型类通常使用EBean ORM(参考http://www.avaje.org/ebean/documentation.html)。
  3. 使用“播放”命令运行应用程序,然后使用“H2-Browser”命令启动H2数据库资源管理器。
  4. 您可能想要使用以下配置 -
       db.default.driver = org.h2.Driver
       db.default.url = “的jdbc:H2:MEM:玩”
       db.default.user = SA
       db.default.password = SA
  5. 示例控制器(Application.java) -

    public class Application extends Controller {
    
        public static Result addrecord() {
                 SampleModel sm = new SampleModel();
                 sm.text = "Testing";
                 SampleModel.create(sm);
                 return ok("Record is added");
        }
    }
    

    示例模型类(SampleModel.java) -

    @Entity
    public class SampleModel extends Model {
    
         @Id
         public Long id;
    
         public String text;  // you can add annotations like @Required, @ManyToMany etc
    
         // other attributes (columns)
    
         public static void create(SampleModel sm){
              sm.save();
         }
    }
    

    路由文件 -

    POST    /addrecord         controllers.Application.addrecord()