Dalam proyek SSH, kadang -kadang perlu untuk melompat dari satu tindakan ke tindakan lain. Ada dua cara untuk mewujudkan lompatan di antara tindakan, satu rantai dan yang lainnya adalah pengalihan. Perbedaan antara kedua cara ini adalah bahwa rantai melompat pada server, yang dapat mewujudkan berbagi data antara tindakan yang berbeda; Sementara pengalihan melompat pada klien.
Gunakan rantai untuk meneruskan nilai parameter antara tindakan yang berbeda, fungsi ini dapat diimplementasikan melalui Alias Interceptor.
1. Tentukan kelas filter
Atur Interceptor berikut di Web.xml:
<filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
2. Nilai Parameter Pass
Dalam file struts.xml, tentukan tindakan panggilan pertama:
<action name = "xxx"> <result name = "success"> </rence> <result name = "input" type = "chain"> <param name = "actionName"> input_error </param> </rence> </cich> Action>
Tentukan tindakan kedua yang akan dipanggil:
<action name = "input_error"> <param name = "aliass">#{'error_status': 'status', 'error_desc': 'desc'} </param> </ctive> Ketika tindakan pertama mengembalikan input, itu akan melompat ke tindakan kedua. Pada saat ini, nilai error_status dan error_desc dalam tindakan pertama diteruskan ke status dan desc dari tindakan kedua masing -masing, sehingga mewujudkan pengalihan nilai parameter. Penting untuk dicatat bahwa variabel yang melewati nilai parameter harus memiliki metode getter () dan setter (), jika tidak nilai yang dilewati di masa lalu adalah nol.
Di atas adalah penggunaan Alias Interceptor dalam pengembangan Javaweb yang diperkenalkan oleh editor kepada Anda. Saya harap ini akan membantu Anda. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas Anda tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!