1. 程式人生 > >大三筆記(mvc:annotation-driven配置與中文亂碼問題)

大三筆記(mvc:annotation-driven配置與中文亂碼問題)

<mvc:annotation-driven/>:

這個類主要是用來向工廠中註冊了

RequestMappingHandlerMapping 

BeanNameUrlHandlerMapping

RequestMappingHandlerAdapter

HttpRequestHandlerAdapter

SimpleControllerHandlerAdapter

ExceptionHandlerExceptionResolver 

ResponseStatusExceptionResolver 

DefaultHandlerExceptionResolver 

    上面幾個Bean例項。這幾個類都是用來做什麼的呢?

    前兩個是HandlerMapping介面的實現類,用來處理請求對映的。其中第一個是處理@RequestMapping註解的。第二個會將controller類的名字對映為請求url。

    中間三個是用來處理請求的。具體點說就是確定呼叫哪個Controller的哪個方法來處理當前請求。第一個處理@Controller註解的處理器,支援自定義方法引數和返回值(很酷)。第二個是處理繼承HttpRequestHandler的處理器。第三個處理繼承自Controller介面的處理器。

另外說一下中文亂碼問題,前臺通過ajax將表單資訊post給controller,controller接收資料後插入資料庫,資料庫表是utf8,jsp和xml也都是utf8型別,但是插入資料後,mysql裡面中文還是亂碼。

最後在jdbc.properties中加入characterEncoding=UTF-8問題解決。

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/drive?characterEncoding=UTF-8
username=sa
password=
#定義初始連線數
initialSize=0
#定義最大連線數
maxActive=20
#定義最大空閒
maxIdle=20
#定義最小空閒
minIdle=1
#定義最長等待時間
maxWait=60000