SpringMVC總結的部分教程及使用方法

2022-09-09 04:39:09 字數 3759 閱讀 1705

注:本文只用註解來實現

springmvc各種流程圖流程圖(其他的各種流程圖)

jsp、xml、action彼此之間的關係,都如何使用

spring-mvc.xml如何配置,放在**?

action中如何**和重定向

action如何跳轉到jsp

如何處理ajax

如何給action做單元測試

springmvc各種流程圖流程圖(其他的各種流程圖)

網路上有各種流程圖的畫法,例如:

中的

中的

還有中的

怎麼說呢,這類流程圖很多,但是核心都是一樣的。

簡單描述就是:前端發起請求,springmvc的核心類dispatcherservlet攔截,然後跳轉到controller中,執行完成之後根據view控制器跳轉到前端。

jsp、xml、action彼此之間的關係,都如何使用

jsp通過url,例如」user/getuser」請求後台的action/controller,servlet攔截url,然後掃瞄所有的action及action中的方法上的註解是否有匹配的,一旦有匹配的,就執行該方法。如果沒有匹配的怎麼辦?action中的方法執行完了,return乙個字串,servlet啟動檢視控制器攔截,匹配到對應的頁面。

spring-mvc.xml如何配置,放在**?

前面的流程圖,jsp、xml和action之間的關係,全部要依靠xml檔案的配置

如何配置:

1、 web.xml配置dispatcherservlet

2、 spring-mvc.xml配置action/controller掃瞄位置

3、 spring-mvc.xml配置view控制器。

以上的配置就不詳細寫了,見springmvc配置流程

放在那裡?放**都沒關係,只要web.xml中配置好servlet預設初始化掃瞄的xml位置即可

以上配置完了就行了嗎?不行,既然用註解還需要注意以下幾點:

1、jsp如何寫url:例如「user/showuser」,user表示哪乙個action類,「showuser」表示action類中哪乙個方法。

2、action類、action方法上如何寫註解:

@controller

public

class useraction

action方法名上一行寫

action如何跳轉到jsp

記得spring-mvc.xml檔案中寫如下:

class="org.springframework.web.servlet.view.internalresourceviewresolver">

每個action方法最後一行寫return 「頁面名」,如return 「success」,表示的就是跳轉到success.jsp頁面。

action中如何使用service

action方法中如果只是簡單邏輯還好,但是我們經常要運算元據庫,那麼就需要呼叫service類,service類就要呼叫dao類,dao要運算元據庫。

在action方法中,如下:

@controller

public

class

useraction

}

簡單描述,就是使用@resource注入service。

iuserservice是介面名,userservice是具體的實現類的註解名,在iuserservice介面的實現類上一行,會寫上@service(「userservice」),例如

@service("userservice")  

public

class userserviceimpl implements iuserservice

service如何寫

@service("userservice")  

public

class userserviceimpl implements

iuserservice

@override

public

int deletebyid(int

userid)

@override

public

intinsert(user user)

@override

public

intupdatebyid(user user)

}

基本沒什麼特殊,也是@resource引入dao介面,這裡注意,userdao隨意命名,因為我用的是mybatis,只需要乙個idao介面,不需要實現類,mybatis的對映檔案就相當於乙個實現類了

action中如何**和重定向

需求1:action方法執行完了,想要**(上下文都帶著)到另乙個action方法

跳轉到頁面我麼知道了,那麼

return "forward:/question/getquestion";

需求2:重定向到另乙個action中:

return "redirect:/question/getquestion";

需求3:防止表單重複提交,同需求2

如何處理ajax

十五章節

簡單說,基本就是後端用response的io流傳遞json到前端,不管你是string、list還是map都得想辦法轉換成json。springmvc提供了中比較好的方式就是springmvc內建的json轉換方式。建議採用。

如何給action做單元測試

以上幾篇文章已經寫的很詳細了

1、方法基於junit、springmvc和spring-test

所以用m**en的話pom.xml要引入

org.springframework

spring-test

$2、@runwith註解指定使用springjunit的測試執行器,

@contextconfiguration註解指定測試用的spring配置檔案的位置

4、 可以寫乙個basejunittest,可以將

@runwith(springjunit4classrunner.class

)@contextconfiguration()

public

class basejunittest

寫在basejunittest中,這樣你任意乙個test只需要繼承他就行了

5、 this.mockmvc.perform(post("/user/showuser").param("name", "lawren").param("password", "123456").param("age","100"));是需要指定訪問action方法的路徑,如果有引數,還要將引數帶上。

SpringMVC的重要組成部分

熟練掌握以下各個部分的功能和使用,以及清晰各個部分之間的關係和協作的流程 1.前端控制器 dispatcherservlet 接收到前端控制器傳送的url後,對url進行匹配,返回給前端控制器乙個處理器執行鏈 handlerexecutechain 3.處理器介面卡 handleradaptor 接...

框架學習 springmvc基礎部分

springmvc是 spring 框架的乙個模組,springmvc 和spring 無需通過中間整合層進行整合。springmvc是乙個基於 mvc的 web框架。那mvc是什麼呢?m是model的意思,即模型,v即使view的意思,檢視,c是controller,就是控制器。1.準備sprin...

springMVC搭建總結

今天第一次搭建整合了hibernate的springmvc框架,於是參考了以前的spring3 hibernate3的搭建方法。但是我使用的是spring4 hibernate4。然後就雪崩了.classpath expc.properties org.hibernate.dialect.mysql...