2013-03-13 49 views
0

我有一段时间搞清楚这一点。我想在我的Play-Framework 2.1 Java应用程序中创建一个基本的搜索引擎。该应用程序有一个存储在MySQL数据库中的视频游戏记录列表。用户界面可让您输入视频游戏标题并搜索它。 Play应用程序应返回与用户输入的查询匹配的所有游戏列表。如果用户搜索“马里奥”,它应该返回包含该文本的所有游戏的列表。在Play Framework 2.1中进行简单搜索?

目前,我在我的控制器是:

public class Games extends controller { 
    //NOTE: instance fields omitted 

    public static Result search() { 
     DynamicForm form = form().bindFromRequest(); 
     //Query is now stored in form.get("q"), though I can't figure out how to use it 

     List<Game> games = new Model.Finder(String.class, Game.class).all(); 
     //This returns every game currently in the database 
     return ok(search.render(games); 
    }  
} 

我找遍了整个Play 2.0.3 documentation(注:我不能为2.1找到文档,涵盖这一点,这是我使用的版本) Model.Finder类,并找不到如何搜索自定义查询,或如何构建我想要的SQL查询。我很迷茫,在Java中居中。帮帮我! :-(

回答

3

这是ebean不是扮演着特定的问题

你可以这样做:。

List<Game> games = new Model.Finder(String.class, Game.class) 
    .where().like("name", "foo%").findList(); 
+0

我知道这是一个ebean的问题,但ebean内置播放框架,所以我想通在这里问这是可以接受的。 Anywho,Thanks !! It works。 – skcin7 2013-03-14 08:01:48