Saya agak bingung kapan harus menggunakan ${...}
dibandingkan #{...}
. Dokumentasi Spring hanya menggunakan #{...}
, tetapi ada banyak contoh yang digunakan ${...}
. Selanjutnya, ketika saya mulai dengan SpEL saya diberitahu untuk menggunakan ${...}
dan itu berfungsi dengan baik.
Bagi yang bingung, contoh bagaimana saya menggunakannya
@Component
public class ProxyConfiguration {
@Value("${proxy.host}")
private String host;
@Value("${proxy.port}")
private String port;
:
}
dan beberapa file properti:
proxy.host=myproxy.host
proxy.port=8000
Pertanyaan saya adalah:
- apa perbedaannya atau sama?
- apakah satu versi sudah usang, jadi saya harus menggunakan yang lain?
"#{'${property}'}"
${expr}
-> Evaluasi Segera#{expr}
-> Evaluasi yang DitundaReferensi lengkapnya disini
Tidak ada JSP EL, JSP menggunakan SpEL. SpEL cocok dengan teknologi yang menggunakannya.
sumber
Coba baca artikel ini , yang menyarankan
"Jika hash digunakan, kode Anda dihitung ulang setiap kali elemen tersebut disertakan dalam penyegaran parsial (yaitu setiap kali dirender). Jika Anda menggunakan dolar, kode Anda hanya dihitung saat halaman pertama kali dimuat. Tapi ini telah diperluas lebih dari sekadar EL, ke SSJS juga. Setelah hash atau dolar, tanda kurung kurawal menunjukkan awal dan akhir bahasa Anda. Ini akan menjadi penting saat kita akan menggabungkan bahasa nanti. "
sumber
Spesifikasi Bahasa Ekspresi • Rilis Akhir - 8 Mei 2006
Halaman 2:
Eval-ekspresi dibentuk dengan menggunakan konstruksi $ {expr} atau # {expr}. Kedua konstruksi tersebut diurai dan dievaluasi dengan cara yang persis sama oleh EL, meskipun keduanya mungkin memiliki arti yang berbeda dalam teknologi yang menggunakan EL.
sumber