2012-01-09 229 views
9

我需要一个超轻量级持久层,用于我正在编写的java应用程序。我需要它是一个独立的应用程序,到目前为止我已经玩Ammentos & Persistence4J。我喜欢他们两个(特别是Ammentos),但我在网上找不到太多内容,我正在寻找关于这两个或任何其他持久层的想法,您认为这些层可以很容易地用mysql db部署。需要超级轻量级​​java持久层

我只使用hibernate过去,所以我正在寻找一种替代方案,它只是让我做简单的保存和检索。不需要支持任何复杂的查询。

回答

6

别忘了OrmLite

尽管如此,确保你需要一个ORM。

编辑回应置评

对于简单的Java项目(一个罕见的这些天)我通常不打扰ORM,但仍使用Commons BeanUtils' RowSetDynaClass有时。这包装查询结果,并允许使用普通BeanUtils copyProperties类型的方法复制到域对象。

+0

+1 - 如果你没有对象映射到,你不需要ORM。 – duffymo 2012-01-09 23:16:41

+0

Dave,我试图使用ORM,因为我已经有了很多业务对象,并且我想抽象持久性/查找而不必管理它后面的sql代码。另外,我没有做任何批量插入,所以它看起来像一个可行的方法。我从来没有听说过OrmLite,但我会研究它。你有没有使用它,如果你有什么想法吗? – Nefsu 2012-01-09 23:18:33

+0

@Nefsu我只在Android中使用它;很好。使用另一个选项覆盖非ORM解决方案与域模型的更新答案。 – 2012-01-09 23:25:36

3

Spring的SimpleJdbcTemplate是一样轻便。你可以使用没有所有样板的SQL。你不需要完整的Spring机械 - 只需要使用你需要的。

如果SimpleJdbcTemplate对您来说太亮,请尝试iBatis。这是JDBC和Hibernate之间的中间步骤。

+0

+1;用于我最近的两个Spring项目 - 这很容易。 (对于已经编写了大量SQL的遗留数据库非常有用,并且会让Hibernate像哭泣的婴儿一样哭泣。) – 2012-01-09 23:27:26

+0

是的,我也使用过duffymo。但是,如果我记得正确JdbcTemplate不真的支持ORM。 – Nefsu 2012-01-09 23:38:38

+0

不,它没有。 SimpleJdbcTemplate适用于仍然希望使用SQL的人。您可以使用RowMapper将结果加载到任何您想要的内容中。 ORM超卖。你不需要它,特别是对于几个对象。 – duffymo 2012-01-09 23:44:06

0

我设计的sormula专门是​​一个轻量级的ORM。这是CRUD准备和POJO友好。你不写任何DAO的。零配置,零注释是可能的。