Corak Rantaian Tanggungjawab ialah corak reka bentuk yang membolehkan anda menghantar permintaan kepada satu set objek mengikut urutan sehingga permintaan itu dikendalikan atau semua objek cuba mengendalikannya. Ia mengandungi komponen berikut: Pengendali, Pengendali abstrak dan Pelanggan. Kelebihan termasuk: gandingan longgar, kebolehskalaan dan kebolehgunaan semula. Rantai penapis ialah contoh praktikal yang biasa.
Penerokaan mendalam tentang corak Rantaian Tanggungjawab dalam corak reka bentuk Java
Pengenalan
Corak Rantaian Tanggungjawab ialah corak reka bentuk yang membolehkan anda membuat satu set objek dalam urutan. Apabila objek tidak dapat mengendalikan permintaan, ia menghantar permintaan kepada objek seterusnya dalam rantai.
Struktur
Corak rantaian tanggungjawab mengandungi komponen berikut:
Cara ia berfungsi
Corak rantaian tanggungjawab berfungsi seperti berikut:
Kelebihan
Terdapat beberapa kelebihan menggunakan corak rantaian tanggungjawab:
Kes praktikal
Rantai penapis
Rantai penapis ialah contoh biasa menggunakan corak rantaian tanggungjawab. Ia terdiri daripada satu set penapis yang memproses permintaan secara berurutan. Jika penapis tidak memenuhi permintaan, ia menghantar permintaan ke penapis seterusnya dalam rantai.
Contoh rantai penapis mudah adalah seperti berikut:
public class FilterChain { private List<Filter> filters; public FilterChain(List<Filter> filters) { this.filters = filters; } public void doFilter(Request request, Response response) { for (Filter filter : filters) { filter.doFilter(request, response); } } } public interface Filter { void doFilter(Request request, Response response); } public class AuthenticationFilter implements Filter { @Override public void doFilter(Request request, Response response) { // 验证请求 } } public class AuthorizationFilter implements Filter { @Override public void doFilter(Request request, Response response) { // 授权请求 } } public class LoggingFilter implements Filter { @Override public void doFilter(Request request, Response response) { // 记录请求和响应 } } public class Main { public static void main(String[] args) { FilterChain filterChain = new FilterChain( List.of(new AuthenticationFilter(), new AuthorizationFilter(), new LoggingFilter()) ); filterChain.doFilter(request, response); } }
Atas ialah kandungan terperinci Penerokaan mendalam tentang corak rantaian tanggungjawab dalam corak reka bentuk Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!