如何使用 javalite 从数据库中 return 记录?

How to return records from database using javalite?

我正在使用以下行查询数据库:

List<PostsCategories> postsCategories = PostsCategories.findBySQL("select category from posts_categories");

而不是 return 仅 [{category=Miscellaneous},....] 而是 return 额外的信息,例如数组中的 Model, table, attributes

我不知道为什么它与 activejdbc 一起工作?

[Model: com.ngo.org10s.models.PostsCategories, table: 'posts_categories', attributes: {category=Miscellaneous}]

如何简单地 return 所需的值?

因为ActiveJDBC是一个ORM == Object Relational Mapping。这意味着模型实例包含所有属性以表示 table 中的单个行。

方法 findBySQL 的 JavaDoc 指出:

确保查询 returns 所有列 与该模型相关联,以便生成的模型可以适当地自我水合

换句话说,如果 PostsCategories 的实例只有一个属性集,那么这就不再是 ORM。

如果您坚持只获取一个属性,请使用 org.javalite.activejdbc.Base

List<Map> categories = Base.findAll("select category from posts_categories");