springmvc之controller以及RestFul的學習筆記
阿新 • • 發佈:2021-07-12
RestFul和控制器
控制器(Controller)
-
控制器提供訪問應用程式的行為。
-
控制器解析使用者的請求並轉換成為一個模型。
-
spring-mvc中控制器類可以包含多種方法。
-
spring-mvc中控制器有著多種的配置方式。
控制器Controller
實現介面的controller
-
controller介面
-
實現controller介面
public class Controllers implements Controller {
-
編寫spring-mvc
-
這裡controller是實現了controller的介面,所以需要在spring-mvc配置檔案中手動的註冊Bean。
<!--檢視解析器-->
<bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>
<bean name="/t1" class="cn.com.scitc.controller.Controllers"/>使用註解的Controller
-
//將這個類交給spring管理
@Controller
public class Controller2 {
@RequestMapping("/t2")
public String controller2(Model model){
model.addAttribute("msg", "我是使用註解的controller");
return "controller";
}
}使用註解@Controller將這個類交給spring管理。
說起來之前學過spring,那麼spring裡面有哪些註解可以實現將類交給spring管理呢?
@Component:是@Controller、@Repository @Service的元註解,它以及子註解的作用都是將類交給spring管理,但各又有不同之處。
@Controller 作用和Servlet一樣,用於接受前端資料、這個註解可以找到@RequetMapping的路徑。
@Repository 持久層也就是Dao,和資料庫打交道。
@Service 業務層,作用將類交給spring管理。 -
spring-mvc配置檔案
<!--掃描-->
<context:component-scan base-package="cn.com.scitc.controller"/>
<!--檢視解析器-->
<bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>風格RestFul
概念:
RestFul就是資源定位以及資源操作的一種風格,不是協議也不是語言,它只是一種操作資源的風格。
作用:
更容易實現快取等機制(狂神說的)
使用不同的資源操作方法實現不同的功能:post、get、put、delete。
增刪查改:post、delete、get、put。
使用Method屬性指定請求的型別:
Post、Get、Put、Delete、Head、Patch等
RequstMapping的請求變體如下
-