Java的DAO生成器[关闭]
Posted
技术标签:
【中文标题】Java的DAO生成器[关闭]【英文标题】:DAO generator for java [closed] 【发布时间】:2011-08-27 21:25:21 【问题描述】:我正在为 java 寻找免费且简单的 DAO 生成器(它需要从 db 表/视图创建实体/bens 并生成基本的 CRUD 代码)。目前,我正在使用 DAO4J,它缺少视图映射等功能。我知道有像 Hibernate 这样的框架,但我不需要这样健壮的框架。
这个框架应该做的一些事情:
使用标准 SQL 查询而不是编译时类型安全查询生成 CRUD 操作 没有像休眠这样的会话概念 不会自动关闭连接 可以通过代码配置JDBC连接【问题讨论】:
【参考方案1】:这些都不是完美的搭配,但都以自己独特的方式摇滚:
-
Spring Roo 生成 DAO,Web
控制器等等。
QueryDSL 自动 creates Objects from your database tables 并提供具有编译时安全性的面向对象的查询语法。
但我会说获胜者是Spring Data。它为许多不同的底层数据存储技术提供了一个简单但强大的抽象,并自动为您生成 daos。这是Spring Data JPA 的介绍。 很遗憾,Spring Data 尚未发布最终版本。
【讨论】:
DeltaSpike (deltaspike.apache.org) 是 Apache 的替代方案,可以在 jaxenter.com/… 上查看快速浏览 @user3257644 我建议您将其写为附加答案【参考方案2】:如果您只需要一个不遵循框架的代码生成器,您应该尝试 Telosys 工具。它是一个轻量级工具,它从现有的数据库模型生成代码。
见https://www.telosys.org
一些模板是专门为JDBC 代码生成设计的,它们可以在 GitHub 上找到 https://github.com/telosys-templates-v3
他们为 DAO、DAO 接口、POJO(bean)、JUnit 测试等提供代码生成
【讨论】:
【参考方案3】:添加到 duffymo 的答案,MyBatis 很好,您可以使用MyBatis generator 生成数据访问代码。
【讨论】:
【参考方案4】:我不太赞成自动生成。
我可以推荐 iBatis 作为 JDBC 和 Hibernate 之间的半步。
【讨论】:
该项目现已更改为myBatis:mybatis.org【参考方案5】:您可以使用Hibernate Tools 执行此操作。但我个人从未尝试过,我现在只创建了实体类。
【讨论】:
我在 Hibernate 中发现的一件事是,一旦您通过了基本的 CRUD 内容,就会有一个非常陡峭的学习曲线。对我来说,一旦完成初始原型设计,效率提升就会迅速下降。有时使用铅子弹更容易。我现在只使用 Spring JDBCTemplates。我认为它提供了限制样板代码的良好组合,同时仍然允许您执行复杂的查询。【参考方案6】:我会支持 iBatis。其他建议可以是Spring JDBCTemplate
。既然你可以采用框架,那么为什么不使用Spring
。它还将为您提供其他很棒的东西。
【讨论】:
我是 Java 新手,我的项目时间有限,所以我不能浪费时间学习新的大型框架。我希望有一天我会使用 Spring 框架... @Ivan:Spring 的出色之处在于它的分布和使用。它和你的使用一样大。 对此不能再同意了,但由于我是 Java 世界的初学者,所以对所有这些新东西有点忙。以上是关于Java的DAO生成器[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
代码生成器实现的Entity,Dao,Service,Controller,JSP神器(含代码附件)
SprinfJdbcTemplate+SpringMVC 代码生成器实现的Entity,Dao,Service,Controller,JSP神器(含代码附件)