Definisi Kacang Groovy

1. Gambaran keseluruhan

Dalam artikel ringkas ini, kami akan memfokuskan pada bagaimana kami dapat menggunakan konfigurasi berasaskan Groovy dalam projek Java Spring kami.

2. Kebergantungan

Sebelum memulakan, kita perlu menambahkan kebergantungan pada fail pom.xml kita . Kita juga perlu menambah plugin untuk menyusun fail Groovy kita.

Mari tambahkan kebergantungan untuk Groovy terlebih dahulu ke fail pom.xml kami :

 org.codehaus.groovy groovy 2.5.10 

Sekarang, mari tambah pemalam:

  //...  org.codehaus.gmavenplus gmavenplus-plugin 1.9.0    addSources addTestSources generateStubs compile generateTestStubs compileTests removeStubs removeTestStubs      

Di sini, kami menggunakan gmavenplus-plugin dengan semua tujuan.

Versi terbaru dari perpustakaan ini boleh didapati di Maven Central.

3. Mendefinisikan Kacang

Sejak versi 4, Spring memberikan sokongan untuk konfigurasi berasaskan Groovy. Ini bermaksud bahawa kelas Groovy boleh menjadi kacang musim bunga yang sah.

Untuk menggambarkan ini, kita akan menentukan kacang menggunakan konfigurasi Java standard dan kemudian kita akan mengkonfigurasi kacang yang sama menggunakan Groovy. Dengan cara ini, kita akan dapat melihat perbezaannya.

Mari buat kelas sederhana dengan beberapa sifat:

public class JavaPersonBean { private String firstName; private String lastName; // standard getters and setters } 

Penting untuk diingat mengenai pemula / pemecah - itu penting agar mekanisme berfungsi.

3.1. Konfigurasi Java

Kita dapat mengkonfigurasi kacang yang sama menggunakan konfigurasi berbasis Java:

@Configuration public class JavaBeanConfig { @Bean public JavaPersonBean javaPerson() { JavaPersonBean jPerson = new JavaPersonBean(); jPerson.setFirstName("John"); jPerson.setLastName("Doe"); return jPerson; } }

3.2. Konfigurasi Groovy

Sekarang, kita dapat melihat perbezaannya ketika kita menggunakan Groovy untuk mengkonfigurasi kacang yang dibuat sebelumnya:

beans { javaPersonBean(JavaPersonBean) { firstName = 'John' lastName = 'Doe' } }

Perhatikan bahawa sebelum menentukan konfigurasi kacang, kita harus mengimport kelas JavaPersonBean. Di dalam blok kacang , kita dapat menentukan seberapa banyak kacang yang kita perlukan.

Kami mendefinisikan ladang kami sebagai peribadi dan walaupun Groovy membuatnya seperti mengaksesnya secara langsung, ia melakukannya dengan menggunakan getter / setter yang disediakan.

4. Tetapan Kacang Tambahan

Seperti konfigurasi berasaskan XML dan Java, kita tidak hanya dapat mengkonfigurasi kacang.

Sekiranya kita perlu menetapkan alias kacang, kita boleh melakukannya dengan mudah:

registerAlias("bandsBean","bands")

Sekiranya kita ingin menentukan skop kacang :

{ bean -> bean.scope = "prototype" }

Untuk menambah panggilan balik kitaran hidup kacang, kami boleh melakukan:

{ bean -> bean.initMethod = "someInitMethod" bean.destroyMethod = "someDestroyMethod" }

Kita juga boleh menentukan warisan dalam definisi kacang:

{ bean-> bean.parent="someBean" }

Akhirnya, jika kita perlu mengimport beberapa kacang yang telah ditentukan sebelumnya dari konfigurasi XML, kita boleh melakukannya menggunakan importBeans ():

importBeans("somexmlconfig.xml")

5. Kesimpulan

Dalam tutorial ini, kami melihat bagaimana kami membuat konfigurasi kacang Groovy Spring. Kami juga merangkumi penetapan sifat tambahan pada kacang kami seperti alias, ruang lingkup, ibu bapa, kaedah untuk memulakan atau memusnahkan, dan cara mengimport kacang yang ditentukan XML lain.

Walaupun contohnya mudah, mereka boleh diperluas dan digunakan untuk membuat semua jenis konfigurasi Spring.

Contoh kod penuh yang digunakan dalam artikel ini terdapat di projek GitHub kami. Ini adalah projek Maven, jadi anda seharusnya dapat mengimportnya dan menjalankannya sebagaimana adanya.