Ebean - Ebean

Ebean
Tuzuvchi (lar)Avaje
Barqaror chiqish
10.3.2 / 2017 yil 25-iyun (2017-06-25)
Ombor Buni Vikidatada tahrirlash
YozilganJava
Operatsion tizimO'zaro faoliyat platforma
PlatformaJava
Hajmi1,9 MB (arxivlangan)
TuriOb'ekt-relyatsion xaritalash
LitsenziyaApache litsenziyasi
Veb-saytebean-orm.github.io

Ebean bu ob'ekt-relyatsion xaritalash yozilgan mahsulot Java. Undan ko'ra foydalanish va tushunish osonroq bo'lishi uchun yaratilgan JPA (Java Persistence API) yoki JDO (Java Data Objects) mahsulotlari.

Oddiy API

Ebean-da JPA-ga qaraganda oddiyroq API mavjud. Bunga erishish orqali "Sessiya kamroq ' me'morchilik. Ebean uchun JPA EntityManager yoki JDO PersistenceManager talab qilinmaydi va bu ajratilgan / biriktirilgan loviya tushunchalarini va EntityManagers-ning yuvilishi / tozalanishi va "sessiyani boshqarish" bilan bog'liq muammolarni olib tashlaydi. Bu Ebean API'sini o'rganish, tushunish va ulardan foydalanishni ancha osonlashtirishga yordam beradi.

Aloqaviy xususiyatlar

Ebean to'liq ORM xususiyatlariga ega bo'lsa-da (JPA ga teng), u "SQL / Relational" xususiyatlarini o'z ichiga oladi. Ko'plab rivojlanish harakatlari aniq sql-ni boshqarishni talab qiladi, saqlangan protseduralarni chaqiradi yoki oddiygina "Relational" yondashuvlari bilan hal qilinadi. Ebean uchun asosiy maqsad JPA-dan eng yaxshi ORM xususiyatlarini MyBatis kabi mahsulotlarning eng yaxshi "Relational" xususiyatlarini yagona qat'iylik doirasiga birlashtirishdir.

Ob'ekt-relyatsion xaritalash

Ebean JPA bilan bir xil xaritalashni @Entity, @Table, @OneToMany va boshqalar izohlari va xml bilan ishlatadi. Entity fasollarini xaritasi Ebean va JPA o'rtasida mos bo'lishi kerak.

JPA Ebean-dan tashqariga chiqish Java Generics-ni qo'llab-quvvatlaydi va Query ob'ekti bilan "Partial" moslamalarni olib keladi.

Misollar

// identifikator bo'yicha mijozni topishMijoz mijoz = Ebean.topmoq(Mijoz.sinf, 1);// Mijozlar ob'ektidagi o'zgarishlarni saqlashmijoz.saqlash();// qo'shilish bilan yanada murakkab so'rovRo'yxat<Buyurtma> buyurtma =   Ebean.topmoq(Buyurtma.sinf)    .olib keling("mijoz")    .olib keling("customer.billingAddress")    .olib keling("customer.shippingAddress")    .olib keling("tafsilotlar")    .olib keling("details.product", "ism")    .qayerda().tenglama("shipDate", Bugun)    .findList();

Shuningdek qarang

Tashqi havolalar