"Awak ada."

"Saya memikirkannya dan memutuskan untuk mengajar anda satu lagi pelajaran kecil yang akan sangat membantu anda. Sehingga anda bekerja sebagai pengaturcara, anda mungkin tidak pernah menemui beberapa istilah khas, jadi saya ingin memperkenalkan anda kepada beberapa konsep biasa sekarang."

"Kira-kira 10 tahun yang lalu, E nterprise  J ava  B eans ( EJB ) telah digunakan secara meluas."

"Apakah maksud JavaBeans?"

"JavaBeans pada asasnya bermaksud biji kopi (Java adalah sejenis kopi). Ia humor IT."

"Logik perniagaan program mengambil bentuk sekumpulan objek peringkat tinggi, atau kacang, yang boleh bertukar-tukar mesej, menyelamatkan diri, mencari satu sama lain dengan nama, dan banyak lagi. Biasanya, ini dicapai melalui super- khas kelas induk yang mewah walaupun terdapat pendekatan lain. Tingkah laku objek sedemikian sangat dikawal."

"Tiga jenis kacang EJB yang paling terkenal ialah:"

" Kacang Entiti ialah kacang yang tujuannya untuk menyimpan data tertentu. Kacang jenis ini mempunyai mekanisme terbina dalam untuk menyimpan dirinya dan medannya ke dalam pangkalan data. Objek jenis ini boleh dimusnahkan dan kemudian dicipta semula dari pangkalan data. Tetapi selain daripada menyimpan data, ia tidak mempunyai sebarang logik."

" Kacang Sesi ialah kacang berfungsi. Setiap kacang sesi mempunyai fungsinya sendiri. Satu melakukan satu perkara, dan satu lagi melakukan sesuatu yang lain. Kacang sedemikian berfungsi dengan objek dan kacang lain, bukan dengan data mereka sendiri."

" Kacang Sesi terbahagi kepada dua kategori."

" Kacang Sesi Tanpa Kewarganegaraan ialah kacang yang pembolehubah dalamannya tidak menyimpan data penting yang ia perlukan untuk berfungsi. Kacang jenis ini boleh dimusnahkan dan kemudian dicipta semula, dan ia akan melaksanakan fungsinya seperti dahulu."

" Kacang Sesi Statefull ialah kacang yang menyimpan secara dalaman data yang ia gunakan semasa bekerja. Jika kita memanggil kaedah pada kacang sedemikian, maka setiap panggilan berikutnya boleh menggunakan beberapa data yang dihantar kepada kacang dalam panggilan sebelumnya. Namun, kacang ini tidak sama dengan objek biasa."

"Tetapi menggunakan kacang juga tidak begitu hebat, jadi tidak lama kemudian bandul itu berayun ke arah yang bertentangan. Dan pembangun mula menggunakan objek biasa dengan lebih kerap. Malah mereka menghasilkan nama istimewa."

" POJO ialah objek P lain  O ld  J ava  O . Objek ini tidak mempunyai sebarang fungsi super dan tidak mewarisi objek super. Objek ini hanyalah objek Java biasa."

"Apabila anda mengenali EJB secara praktikal, anda akan memahami perbezaannya. Secara kasarnya, POJO ialah pisau, dan EJB ialah pisau Swiss Army yang anda juga boleh gunakan untuk membuat panggilan telefon."

"Perbandingan yang menarik."

"Ya, dan ini satu perkara lagi."

"Dari masa ke masa, objek dan kelas mula dikhususkan. Akibatnya, pembangun mengenal pasti peranan tertentu dan memberi nama baharu kepada objek yang sepadan."

"Objek pemindahan data ( DTO ) ialah objek yang dicipta untuk mengangkut data. Objek ini biasanya mempunyai dua keperluan. Mereka mesti: a) boleh menyimpan data, b) boleh bersiri. Dalam erti kata lain, ia hanya digunakan untuk memindahkan data ."

"Anda mencipta objek, menulis data yang diperlukan daripada logik perniagaan ke dalamnya, mensirikannya ke dalam JSON atau XML, dan menghantarnya ke tempat yang perlu dituju. Atau sebaliknya: mesej tiba, anda menyahsirikannya menjadi objek DTO , dan ekstrak data daripadanya."

" Entiti ialah objek yang disimpan dalam pangkalan data. Tetapi ia tidak mengandungi sebarang logik perniagaan. Anda boleh mengatakan bahawa ini adalah data model perniagaan."

"Kami juga mempunyai objek akses data ( DAO ). DAO digunakan untuk menyimpan objek dan mendapatkannya daripada pangkalan data. Entiti tidak melakukan ini, kerana ia tidak mempunyai sebarang logik, jadi ia tidak boleh menyimpan apa sahaja di mana-mana."

Contoh:

Hubungan antara DAO dan entiti
UserEntity user = UserDAO.getUserById("1535");
if (user.getAge() > 18)
{
 user.setMobilization(true);
 UserDAO.save(user);
}
Komen
UserEntity is a class that stores user data
UserDAO is a class that retrieves data (UserEntity objects) from the database and stores it there again after modifying it.

"Itu sahaja buat masa ini."

"Walaupun ini adalah pelajaran pengenalan yang kecil, anda masih tidak akan dapat memahami lebih lanjut sekarang. Kita boleh menghabiskan masa berhari-hari bercakap tentang setiap topik ini, dan kita boleh menghabiskan masa bertahun-tahun untuk meliputi EJB."

"Tetapi saya mahu anda sekurang-kurangnya dapat membayangkan apa yang dikatakan jika anda menemui perkara ini dalam perbualan dan mesej, di forum, atau dalam temu bual."

"Hmm. Terima kasih, Bilaabo. Ya, saya rasa saya tidak tahu istilah teknikal yang mencukupi. Sekali lagi, terima kasih banyak-banyak."