spring mvc兩大核心技術:1控制反轉 2面向切面的程式設計
1控制反轉就是:
1)呼叫某個類的一個方法,將該類引入成員變數,直接呼叫成員變數類的那個方法即可,不用new,spring mvc替你new了。
2)介面程式設計,你只呼叫介面的某個方法就行了。
有的工程使用spring mvc的控制反轉水平比較低,其spring mvc框架只實現了1)。而有的工程控制反轉水平高,其spring mvc框架實現了1)和2)。
1.1舉個例子:
有這麼個LoginAction類,它想呼叫AdminService的hello()方法的時候,不引入控制反轉,需要自己new;引入控制反轉,就不用自己new了,直接呼叫就行。
public class LoginAction extends ActionSupport
{
private AdminService adminService = null;
public String execute() throws Exception
{
//spring mvc的控制反轉中,spring mvc就是提我們new了一下而已.那麼目的是什麼?實現了介面和實現的分離,使得呼叫介面時不用關注他是怎麼實現的。
//不引入控制反轉
//開始
AdminService aa=new AdminServiceIMP();
String b=aa.hello();
System.out.println("##########################BBBBBBBBBBBB"+b);
//結束
//引入控制反轉
adminService.hello();//該種方式和//開始//結束之間的程式碼等效
}
其spring的配置檔案中,控制反轉的配置如下:
<bean name="login" class="com.example.struts.LoginAction">
<property name="adminService">
<ref local="AdminService" />
</property>
</bean>
<bean id="AdminService" class="com.example.service.AdminServiceIMP">
</bean>
AdminService介面和AdminServiceIMP實現類如下:
public interface AdminService
{
String hello();
}
public class AdminServiceIMP implements AdminService
{
public String hello()
{
return "hello";
}
}
2面向切面的程式設計
面向切面的程式設計,就是jf框架的@before欄位。就是在一個類的某方法開始前或者結束後,插入一段程式碼,這樣就可以在不動原來的程式碼基礎上進行條件驗證等操作。便於後期的程式擴充套件,這種擴充套件不用對之前的程式碼做修改。
相關文章
- 面向介面的程式設計+MVC程式設計MVC
- 面向方面的程式設計程式設計
- 好程式設計師大資料培訓分享大資料兩大核心技術程式設計師大資料
- springboot~通過面向介面程式設計對控制反轉IOC的理解Spring Boot程式設計
- Spring基礎 - Spring核心之控制反轉(IOC)Spring
- Spring 控制反轉Spring
- Delphi程式設計:完全控制桌面的實現 (轉)程式設計
- Spring核心原理分析之MVC九大元件(1)SpringMVC元件
- Spring 面向方面程式設計 AOPSpring程式設計
- Spring框架系列(4) - 深入淺出Spring核心之面向切面程式設計(AOP)Spring框架程式設計
- Java核心技術第八章——泛型程式設計(1)Java泛型程式設計
- Spring框架系列(3) - 深入淺出Spring核心之控制反轉(IOC)Spring框架
- 四、GO程式設計模式:委託和反轉控制Go程式設計設計模式
- Spring AOP:面向切面程式設計的核心概念與實際應用Spring程式設計
- Spring AOP——Spring 中面向切面程式設計Spring程式設計
- Spring技術內幕筆記(2):Spring MVC 與 WebSpring筆記MVCWeb
- 四、Spring-面向切面程式設計Spring程式設計
- Spring之AOP面向切面程式設計Spring程式設計
- 《Java核心技術(卷1)》筆記:第8章 泛型程式設計Java筆記泛型程式設計
- Spring IOC--控制反轉Spring
- 面向方面程式設計的介紹----基本概念(1) (轉)程式設計
- 基礎才是重中之重~再說面向介面的程式設計程式設計
- 【物件導向設計】控制反轉IoC物件
- Spring Boot核心技術Spring Boot
- 七、Spring MVC高階技術SpringMVC
- AOP 面向方面程式設計的介紹----基本概念(2) (轉)程式設計
- Avalon:面向元件的程式設計(COP) (轉)元件程式設計
- Spring AOP(面向切面程式設計)是什麼?Spring程式設計
- 面向切面程式設計 ( Aspect Oriented Programming with Spring )程式設計Spring
- Spring理論基礎-面向切面程式設計Spring程式設計
- Spring Boot中面向方面程式設計 (AOP)教程Spring Boot程式設計
- Spring 控制反轉和依賴注入Spring依賴注入
- spring概念理解之IOC(控制反轉)Spring
- Day66 Spring IOC(控制/反轉)Spring
- 資料庫設計中的反規範技術探討(轉)資料庫
- 聊聊Spring Reactor反應式程式設計SpringReact程式設計
- Python超程式設計:控制你想控制的一切Python程式設計
- 《HTML52D遊戲程式設計核心技術》——第2章,第2.6節小結HTML遊戲程式設計