{"id":21428344,"url":"https://github.com/ushelp/easycommondao","last_synced_at":"2025-03-16T21:25:37.639Z","repository":{"id":57715870,"uuid":"73069860","full_name":"ushelp/EasyCommonDAO","owner":"ushelp","description":"消除 Java ORM，JPA 持久层代码的通用 DAO（支持 Hibernate, EclipseLink）。Common DAO to eliminate Java ORM, JPA persistence layer code(Support  Hibernate, EclipseLink).","archived":false,"fork":false,"pushed_at":"2019-08-13T06:20:49.000Z","size":4404,"stargazers_count":0,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-23T07:48:35.406Z","etag":null,"topics":["common-dao","commons-dao","dao","dao-interface","dao-layer","data-access-layer","eclipselink","hibernate","java","java-dao","java-orm","java-persistence-api","jpa","orm","orm-dao","spring-data-jpa"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ushelp.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":["http://www.easyproject.cn/donation"]}},"created_at":"2016-11-07T11:01:12.000Z","updated_at":"2019-08-13T06:20:50.000Z","dependencies_parsed_at":"2022-09-12T10:41:46.666Z","dependency_job_id":null,"html_url":"https://github.com/ushelp/EasyCommonDAO","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ushelp%2FEasyCommonDAO","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ushelp%2FEasyCommonDAO/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ushelp%2FEasyCommonDAO/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ushelp%2FEasyCommonDAO/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ushelp","download_url":"https://codeload.github.com/ushelp/EasyCommonDAO/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243934299,"owners_count":20371163,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["common-dao","commons-dao","dao","dao-interface","dao-layer","data-access-layer","eclipselink","hibernate","java","java-dao","java-orm","java-persistence-api","jpa","orm","orm-dao","spring-data-jpa"],"created_at":"2024-11-22T22:12:49.011Z","updated_at":"2025-03-16T21:25:37.620Z","avatar_url":"https://github.com/ushelp.png","language":"Java","funding_links":["http://www.easyproject.cn/donation","https://www.paypal.me/easyproject/10"],"categories":[],"sub_categories":[],"readme":"# EasyCommonDAO\n\nEasyCommonDAO 为 Java ORM 主流持久层技术提供通用的 `DAO（Data Access Object）` 支持。旨在于消除 DAO 层接口定义和实现。\n\n\nEasyCommonDAO is a Java ORM Common `DAO(Data Access Object)` implementation, can eliminate the interface and implements of DAO.\n\n## Latest Version/最新版本 \n\n- Least version:  `1.5.1-RELEASE`\n\n- Test enviroment: \n\n ```\n Hibernate 5.1.10(JPA 2.1)\n Hibernate 4.3.11(JPA 2.1)\n Hibernate 3.6.10(JPA 2.0)\n EclipseLink 2.6.4(JPA 2.0+)\n Spring 4.3.13\n ```\n\n## Featuter/特点\n\n- **中文**\n\n 1. 提供基于 **Hibernate Native APIs** 和 **Java Persistence API (JPA)** (`Hiberante`， `EclipseLink`) 的通用 DAO 实现\n \n 2. 消灭 DAO 层接口定义和实现\n \n 3. 两项实现选择：**纯 ORM DAO 实现**，**Spring ORM DAO 无缝集成实现**\n \n 5. 简单易用，学习成本低，Hibernate 和 JPA 使用统一接口规范\n \n 4. 提供分页对象（`PageBean`），条件对象（`EasyCriteria`）综合查询\n \n 5. 提供缓存查询；缓存管理；批量数据处理；级联删除支持...\n\n\n- **English**\n\n 1. Provides common DAO implementation based on **Hibernate Native APIs** and **Java Persistence API (JPA)** (`Hiberante`, `EclipseLink`)\n \n 2. Eliminate the definition and implementation of DAO layer interface\n \n 3. Two implementation options: **pure ORM DAO implementation**, **Spring ORM DAO seamless integration implementation**\n \n 4. Easy to use, low learning costs, Hibernate and JPA use a unified interface specification\n \n 5. Provides paging objects (`PageBean`), conditional objects (`EasyCriteria`)\n \n 6. Provide cache query; cache management; batch data processing; cascade delete support ...\n\n\n## EasyCommonDAO Architecture\n\n\n![EasyCommonDAO](doc/images/Architecture.png)\n\n\n\n## Technical comparison/技术比较\n\n相较于 `普通的 DAO实现` 和 `Spring Data JPA` ，`EasyCommonDAO` 既无需定义 DAO 接口，也无需学习方法命名解析规范。降低学习成本，并真正的消除 DAO 层实现。\n\nCompared to `Basic DAO` and `Spring Data JPA`, `EasyCommonDAO` does not need to define a DAO interface, nor does it need to learn method naming conventions. Reduce the cost of learning, and truly eliminate the DAO layer to achieve.\n\n- **EasyCommonDAO**\n\n ![EasyCommonDAO](doc/images/EasyCommonDAO.png)\n\n- **Spring Data JPA**\n\n ![Spring Data JPA](doc/images/SpringDataJPA.png)\n \n- **Basic DAO**\n\n ![Basic DAO](doc/images/BasicDAO.png)\n\n\n\n## Maven\n\n**Choice one EasyCommonDAO `artifactId`**\n\n- Hibernate Native API\n\n ```\n `easycommondao-hibernate5`\n \n `easycommondao-hibernate4`\n \n `easycommondao-hibernate3`\n ```\n\n- JPA\n\n ```\n `easycommondao-jpa-hibernate5`\n \n `easycommondao-jpa-hibernate4`\n \n `easycommondao-jpa-hibernate3`\n \n `easycommondao-jpa-eclipselink`\n ```\n\n\n```XML\n\u003cdependency\u003e\n    \u003cgroupId\u003ecn.easyproject\u003c/groupId\u003e\n    \u003cartifactId\u003e${artifactId}\u003c/artifactId\u003e\n    \u003cversion\u003e1.5.1-RELEASE\u003c/version\u003e\n\u003c/dependency\u003e \n```\n\n\n## Document/文档\n\n### 中文\n\n[中文说明文档](doc/readme_zh_CN.md)\n\n[官方主页](http://www.easyproject.cn/easycommondao/zh-cn/index.jsp '官方主页')\n\n[留言评论](http://www.easyproject.cn/easycommondao/zh-cn/index.jsp#donation '留言评论')\n\n如果您有更好意见，建议或想法，请联系我。\n\n### English\n\n[English Readme](doc/readme_en.md)\n\n[The official home page](http://www.easyproject.cn/easycommondao/en/index.jsp 'The official home page')\n\n[Comments](http://www.easyproject.cn/easycommondao/en/index.jsp#donation 'Comments')\n\nIf you have more comments, suggestions or ideas, please contact me.\n\n## End\n\nEmail：\u003cinthinkcolor@gmail.com\u003e\n\n[http://www.easyproject.cn](http://www.easyproject.cn \"EasyProject Home\")\n\n\n**支付宝钱包扫一扫捐助：**\n\n我们相信，每个人的点滴贡献，都将是推动产生更多、更好免费开源产品的一大步。\n\n**感谢慷慨捐助，以支持服务器运行和鼓励更多社区成员。**\n\n\u003cimg alt=\"支付宝钱包扫一扫捐助\" src=\"http://www.easyproject.cn/images/s.png\"  title=\"支付宝钱包扫一扫捐助\"  height=\"256\" width=\"256\"\u003e\u003c/img\u003e\n\n\n\nWe believe that the contribution of each bit by bit, will be driven to produce more and better free and open source products a big step.\n\n**Thank you donation to support the server running and encourage more community members.**\n\n[![PayPal](http://www.easyproject.cn/images/paypaldonation5.jpg)](https://www.paypal.me/easyproject/10 \"Make payments with PayPal - it's fast, free and secure!\")\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fushelp%2Feasycommondao","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fushelp%2Feasycommondao","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fushelp%2Feasycommondao/lists"}