java - play框架2.4中未找到bean方法的 'byId()'和 'find'

标签 java playframework

我想在playframework 2.4中使用ebeans方法的'byId()';

程序返回“找不到符号 byId()”。

但是,'.all()'方法可以工作并获取数据。(我想知道为什么)。

这是一个代码。

import java.util.List;
import models.UserMaster;
import com.avaje.ebean.Model.Finder;
import play.mvc.Controller;
import play.mvc.Result;
import views.html.*;
import com.avaje.ebean.Query;

public class TestController extends Controller {

public Result test(){

    //Finder<Long, UserMaster> finder = new Finder<Long,UserMaster> (Long.class, UserMaster.class);

    UserMaster UserMaster = UserMaster.find.byId(1L);

    return ok(test.render(teststring));

}
}

这是一个模型(摘要)。

package models;

import java.sql.Timestamp;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

import com.avaje.ebean.Model;
import com.avaje.ebean.annotation.CreatedTimestamp;
import com.avaje.ebean.annotation.UpdatedTimestamp;
import com.avaje.ebean.Model.Finder;


@Entity
@Table(name = "user_master")
public class UserMaster extends Model {

   @Id
   @Column(name = "user_id")
   private String userId;

   @Column(name = "user_name")
   private String userName;


   @Column(name = "password")
   private String password;

   @CreatedTimestamp
   @Column(name = "regist_time")
   private Timestamp registTime;


   @UpdatedTimestamp
   @Column(name = "update_time")
   private Timestamp updateTime;

/**
 * find
 */

public static Finder<Long, UserMaster> finder = new Finder<Long,UserMaster> (Long.class, UserMaster.class);


}

我也尝试过 finder.find.byid(1) 但它也不起作用。 请你帮我一下好吗?

最佳答案

您的型号:

import java.sql.Timestamp;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

import com.avaje.ebean.Model;
import com.avaje.ebean.annotation.CreatedTimestamp;
import com.avaje.ebean.annotation.UpdatedTimestamp;
import com.avaje.ebean.*;



@Entity
@Table(name = "user_master")
public class UserMaster extends Model {

   @Id
   @Column(name = "user_id")
   private String userId;

   @Column(name = "user_name")
   private String userName;


   @Column(name = "password")
   private String password;

   @CreatedTimestamp
   @Column(name = "regist_time")
   private Timestamp registTime;


   @UpdatedTimestamp
   @Column(name = "update_time")
   private Timestamp updateTime;

/**
 * find
 */

  public static Find<Long,UserMaster> find = new Find<Long,UserMaster>(){};


}

在你的 Controller 中:

public class TestController extends Controller {

  public Result test(){

    UserMaster UserMaster = UserMaster.find.byId(1L);

    return ok(test.render(teststring));

  }
}

关于java - play框架2.4中未找到bean方法的 'byId()'和 'find',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39529896/

相关文章:

java - 自定义对象转换方法

java - 如何检查一个类是否已在 JAVA 中实例化

java - map 的 JPA map

java - 如何在Javafx中设置条形图的颜色

java - 如何从Android studio/java中的drawable文件夹中获取图像的内部url?

playframework - Play Framework 核心依赖管理/排除

安全登录后尝试访问任何页面时发生 JPA 异常

java - GenericObjectPools borrowObject 方法线程安全吗?

java - 如何确定当前运行的Play版本?

scala - Play build.scala 到 build.sbt 不适用于 secureSocial 插件。我不明白为什么?