中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

springboot~HandlerFunction和RouterFunction

HandlerFunction和RouterFunction

RouterFunction為我們應(ying)用(yong)程(cheng)序(xu)添加(jia)一個新的路由(you),這個路由(you)需要綁(bang)定一個HandlerFunction,做為它的處(chu)理程(cheng)序(xu),里面(mian)可(ke)以添加(jia)業務代碼(ma),比如,你添加(jia)一個ImageCodeHandler,用(yong)來(lai)生產(chan)驗證碼(ma)。

  • ImageCodeHandler,做為例子,它只返回一個1234的數字
@RequiredArgsConstructor
public class ImageCodeHandler implements HandlerFunction<ServerResponse> {

	@Override
	public ServerResponse handle(ServerRequest request) throws Exception {
		return ServerResponse.status(HttpStatus.OK).contentType(MediaType.TEXT_PLAIN).body("1234");
	}

}
  • RouterFunctionConfiguration用來注冊一個路由和它的處理程序

proxyBeanMethods配置類是用來指定@Bean注解標注的方法(fa)是否(fou)使用代理,默認是true使用代理,直接從IOC容器之中(zhong)取(qu)得對(dui)象;如果設(she)置為false,也就(jiu)是不使用注解,每(mei)次調用@Bean標注的方法(fa)獲取(qu)到的對(dui)象和IOC容器中(zhong)的都不一樣,是一個新的對(dui)象。

Spring 5.2.0+的版(ban)本(ben),建議你的配置(zhi)類均采用Lite模(mo)式去(qu)做(zuo),即顯(xian)示(shi)設置(zhi)proxyBeanMethods = false。Spring Boot在2.2.0版(ban)本(ben)(依賴(lai)于(yu)Spring 5.2.0)起(qi)就把(ba)它的所有的自(zi)動(dong)配置(zhi)類的此屬性改為了false,即@Configuration(proxyBeanMethods = false),提高Spring啟動(dong)速度

@Configuration(proxyBeanMethods = false)
@RequiredArgsConstructor
public class RouterFunctionConfiguration {

	@Bean
	public RouterFunction<ServerResponse> routerFunction() {
		return RouterFunctions.route(
				RequestPredicates.path("/code").and(RequestPredicates.accept(MediaType.TEXT_PLAIN)),
				imageCodeHandler());
	}

	@Bean
	public ImageCodeHandler imageCodeHandler() {
		return new ImageCodeHandler();
	}

}
posted @ 2022-07-27 16:27  張占嶺  閱讀(2798)  評論(0)    收藏  舉報