{"repo":"troyzhxu/bean-searcher","free":true,"listed":false,"github":"https://github.com/troyzhxu/bean-searcher","clone":"git clone https://github.com/troyzhxu/bean-searcher.git","description":"🔥🔥🔥 A read-only ORM for complex queries in Java","language":"Java","stars":1378,"topics":["java","spring-boot","graphql","search-framework","declarative-search","list-query","orm-framework","readonly-orm","dynamic-sql"],"license":"Apache-2.0","category":"api-integrations-sdks","readme_excerpt":"Bean Searcher ✨ A read-only ORM for complex queries in Java ✨ Docs：https://bs.zhxu.cn --- English 中文 🚀 Online Demo : https://demo-bs.zhxu.cn/ Bean Searcher is the GraphQL of list retrieval — entities define search boundaries, parameters drive query logic. No special protocol required, just add one dependency. Single-table entities are searchable with zero annotations. Multi-table joins, pagination, filtering, sorting, and stats — all in one line of code. 🎯 Core Capabilities Pain point Traditional approach Bean Searcher --- --- --- Multi-condition list queries if-else SQL concatenation / Specification One line, parameter-driven Multi-table joins Manual JOIN / XML mapping Annotation-declared, auto-generated SQL Frontend dynamic filtering Add fields, change backend APIs Zero backend changes, frontend freely combines Non-invasive integration Spring Data REST: expose repositories, restructure URLs One dependency, inject BeanSearcher , existing code untouched Get started in one minute: Single-table search works out-of-the-box with zero annotations on your existing entity. ⁉️ WHY Declarative Search vs Imperative Coding MyBatis / Hibernate excel at CRUD, but when it comes to list retrieval with multi-condition filtering, table joins, sorting, and pagination , they often require piles of if-else condition stitching and VO conversion code. Bean Searcher solves this with declarative search : Entity as Declaration — The SearchBean defines \"what can be searched\"; annotations are optiona","default_branch":null,"files":null,"tree":[],"storefront":"/r/troyzhxu","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/troyzhxu/bean-searcher/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}