ฉันสามารถเสนอ apache empire-db http://incubator.apache.org/empire-db/
Apache Empire-db เป็นส่วนประกอบการคงอยู่ของข้อมูลเชิงสัมพันธ์แบบโอเพนซอร์สซึ่งช่วยให้ผู้ให้บริการฐานข้อมูลนิยามการสืบค้นแบบไดนามิกที่เป็นอิสระตลอดจนการดึงและอัปเดตข้อมูลที่ปลอดภัยและง่ายดาย เมื่อเทียบกับโซลูชันอื่น ๆ ส่วนใหญ่เช่นการใช้งาน Hibernate, TopLink, iBATIS หรือ JPA Empire-db ใช้วิธีการที่แตกต่างกันมากโดยเน้นเป็นพิเศษในเรื่องความปลอดภัยในการรวบรวมเวลาลดความซ้ำซ้อนและเพิ่มประสิทธิภาพการทำงานของนักพัฒนา
ตัวอย่าง:
// Define the query
DBCommand cmd = db.createCommand();
DBColumnExpr EMPLOYEE_FULLNAME= db.EMPLOYEES.LASTNAME.append(", ")
.append(db.EMPLOYEES.FIRSTNAME).as("FULL_NAME");
// Select required columns
cmd.select(db.EMPLOYEES.EMPLOYEE_ID, EMPLOYEE_FULLNAME);
cmd.select(db.EMPLOYEES.GENDER, db.EMPLOYEES.PHONE_NUMBER);
cmd.select(db.DEPARTMENTS.NAME.as("DEPARTMENT"));
cmd.select(db.DEPARTMENTS.BUSINESS_UNIT);
// Set Joins
cmd.join(db.EMPLOYEES.DEPARTMENT_ID, db.DEPARTMENTS.DEPARTMENT_ID);
// Set contraints and order
cmd.where(EMP.LASTNAME.length().isGreaterThan(0));
cmd.orderBy(EMP.LASTNAME);;