java - spring中配置的bean是单例么?如何证明
PHPz
PHPz 2017-04-18 09:42:21
0
4
564

比如,在spring的配置文件中,配置了如下的bean。

<bean id = "privilegeRoleBo" 
    class = "com.alibaba.tboss.biz.privilege.impl.PrivilegeRoleBoImpl"></bean>

上面的bean应该不是单例的,因为如果项目部署在集群上,集群的每台机器上都维护着一个名字为privilegeRoleBo的bean吧,这样的话,privilegeRoleBo这个bean就不是单例的吧?如果我要配置一个单例的bean,该如何配置呢?
另外,如何写一个小Demo,可以验证一下当前的bean是否是单例??

PHPz
PHPz

学习是最好的投资!

membalas semua(4)
Ty80

Jawapan di atas adalah betul Java singleton mesti terhad kepada satu JVM Sama seperti Servlet 只会存在一个实例 ayat ini juga terhad kepada satu JVM, akan ada satu untuk setiap JVM. Malah, untuk kebanyakan kes, tiada masalah besar bahawa keadaan tidak boleh dipindahkan antara berbilang JVM, seperti sambungan pangkalan data atau kelas maklumat fail konfigurasi baca sahaja. Tetapi jika anda ingin menyegerakkan berbilang JVM, anda mesti menggunakan kaedah lain, seperti kunci fail, perkhidmatan penyelarasan pengedaran, dsb. Sebagai contoh, objek HttpSession disegerakkan menggunakan migrasi JVM.

巴扎黑

Tunggal pada tahap bahasa Java merujuk kepada JVM yang sama, dan gugusan tidak boleh digunakan. Jika singleton yang anda ingin sediakan adalah untuk perkongsian data, maka data tersebut hendaklah disimpan dalam pangkalan data atau tempat seperti redis

刘奇

Masalah kluster tunggal telah disebutkan di atas tentang cara mengesahkan sama ada kacang semasa adalah tunggal Anda boleh menjalankan projek dalam mod nyahpepijat, menghantar dua permintaan dan menyemak privilegeRoleBo yang digunakan alamat kacang yang sama? Jika ya, ia adalah singleton

刘奇

kacang mempunyai skop sifat

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan