日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

盘点springmvc的常用接口

發(fā)布時間:2025/7/14 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 盘点springmvc的常用接口 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

盤點(diǎn)springmvc的常用接口###

springmvc是如今非常流行的web開發(fā)框架之一。我個人非常喜歡它約定優(yōu)于配置的理念。它暴露出非常多的接口,可以讓用戶自定義自己的實(shí)現(xiàn),從而可以滿足大家的各種各樣的需求。

而springmvc也不僅僅是一個“插板”。它也提供了非常多常用的接口實(shí)現(xiàn),一般地,使用它自帶的實(shí)現(xiàn)類也即可滿足大部分的需求了。

看了周邊好多開發(fā)者使用springmvc,真的讓我非常哭笑不得。大家都把springmvc這么神奇的框架,當(dāng)做servlet來使用,依然是

public void demo(HttpServletRequest request, HttpServletResponse response) {String name = request.getParameter("name");if (StringUtils.hasText(name)) {try {InputStream is = request.getInputStream();// do somethingresponse.getWriter().write("content");} catch (IOException e) {e.printStackTrace();}}}

有些人會說,這樣寫也沒什么不對啊,業(yè)務(wù)照樣可以正常跑啊。

這就涉及到代碼侵入性的問題了,request、response這些對象都來自于web容器,使用這些對象緊緊和容器耦合在了一起,不便于單元測試。還有mvc的controller層,本來應(yīng)該處理業(yè)務(wù)的邏輯轉(zhuǎn)發(fā)工作,而不是這些數(shù)據(jù)獲取、驗證、數(shù)據(jù)輸出等等繁瑣的工作。而且重點(diǎn)是使用request、response對象來處理數(shù)據(jù)非常之麻煩,代碼也不容易重復(fù)使用,造成代碼冗余,使用這種代碼的,往往controller方法冗長笨重,不易于閱讀和維護(hù)。

說到底,我是一個追求高雅代碼的人,絕對不能容忍這樣爛大街的代碼。springmvc已經(jīng)提供給我們非常多好用的接口,我們可以利用接口,避免直接操作request、response。

本系列文章就來盤點(diǎn)一下springmvc中常用的一些接口:

  • 1.盤點(diǎn)springmvc的常用接口之HandlerMethodArgumentResolver
  • 2.盤點(diǎn)springmvc的常用接口之HandlerMethodReturnValueHandler
  • 3.盤點(diǎn)springmvc的常用接口之HttpMessageConverter
  • 4.盤點(diǎn)springmvc的常用接口之PropertyEditor
  • 5.盤點(diǎn)springmvc的常用接口之Converter(上篇)
  • 6.盤點(diǎn)springmvc的常用接口之Converter(中篇)
  • 7.盤點(diǎn)springmvc的常用接口之Converter(下篇)
  • 8.盤點(diǎn)springmvc的常用接口之HandlerInterceptor
  • (未完結(jié))

每個接口都給出了幾個使用示例,為了簡單易懂,功能都不是很完整。

示例使用spring-boot 和 lombok

spring-boot配置:

package com.demo;import org.springframework.boot.SpringApplication;public class DemoApplication {public static void main(String[] args) {SpringApplication.run(WebMvcConfiguration.class, args);}}

springmvc配置類:

package com.demo;import java.util.List;import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.method.support.HandlerMethodReturnValueHandler; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;import com.demo.mvc.component.PersonReturnValueHandler;@SpringBootApplication public class WebMvcConfiguration extends WebMvcConfigurationSupport {}

實(shí)體類:

package com.demo.domain;import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter;@Getter @Setter @NoArgsConstructor @AllArgsConstructor public class Person {private String firstName;private String lastName;@Overridepublic String toString() {return firstName + " " + lastName;} }

(其它文章不再贅述環(huán)境配置)

關(guān)于lombok

示例源碼:

https://github.com/developframework/springmvc-demo

本人才疏學(xué)淺,難免會有錯誤,請springmvc的大神不要見笑。寫此系列盤點(diǎn)文章,也是對自己多年學(xué)習(xí)java和spring框架的總結(jié)。

java技術(shù)交流QQ群:247276498

轉(zhuǎn)載于:https://my.oschina.net/sugarZone/blog/704570

總結(jié)

以上是生活随笔為你收集整理的盘点springmvc的常用接口的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。