1. 程式人生 > >SpringMVC的四個基本註解annotation(控制層,業務層,持久層) -- @Component、@Repository @Service、@Controller

SpringMVC的四個基本註解annotation(控制層,業務層,持久層) -- @Component、@Repository @Service、@Controller

SpringMVC中四個基本註解:

看字面含義,很容易卻別出其中三個:

@Controller   控制層,就是我們的action層

@Service        業務邏輯層,就是我們的service或者manager層

@Repository  持久層,就是我們常說的DAO層

@Component  (字面意思就是元件),它在你確定不了事哪一個層的時候使用。

其實,這四個註解的效果都是一樣的,Spring都會把它們當做需要注入的Bean載入在上下文中;

但是在專案中,卻建議你嚴格按照除Componen的其餘三個註解的含義使用在專案中。這對分層結構的web架構很有好處!!

示例:

1.  控制層

@Controller // 註釋為controller
@RequestMapping("/login")
public class LoginAction {
 
 @Autowired  
 @Qualifier("userService") //註釋指定注入 Bean 
 private IUserService userService;

 。。。。。。 其他略 。。。。。。

}

2.  業務邏輯層

@Service("userService")
public class UserServiceImpl implements IUserService {

    @Autowired
    @Qualifier("userDao")
    private IUserDao userDao;  

 。。。。。。 其他略 。。。。。。

}

3.  持久層

@Repository("userDao")
public class UserDaoImpl implements IUserDao {
 private static Logger logger = LoggerFactory.getLogger(UserDaoImpl.class);
 private DataSource dataSource;  
    private JdbcTemplate template;  
      
    @Autowired  
    public UserDaoImpl(DataSource dataSource){  
        this.dataSource= dataSource;  
        template = new JdbcTemplate(this.dataSource);  
    }

 。。。。。。 其他略 。。。。。。

}

相關推薦

SpringMVC基本註解annotation控制業務持久 -- @Component@Repository @Service@Controller

SpringMVC中四個基本註解: 看字面含義,很容易卻別出其中三個: @Controller   控制層,就是我們的action層 @Service        業務邏輯層,就是我們的service或者manager層 @Repository  持久層,就是我們常說的DAO層 而@Co

資料庫事務的基本性質ACID

資料庫事務概念 什麼是資料庫事務? 事務(transaction)是由指邏輯上對資料的的一組操作, 這組操作要麼一次全部成功,如果這組操作全部失敗,是不可分割的一個工作單位。 資料庫事務的四個基本性質(ACID) 1. 原子性(Atomicity) 事務的原子性

數據庫的基本語句

基本 bsp update 對數 values font select 增加 數據庫 對數據庫的操作基本是增加,刪除,修改,查詢。 1.基本的查詢語句 select * from 表名 where 查詢條件 select COUNT(*) from 表名(返回的是這個表裏數

REST的基本原則

ces 主域名 nta http you 排序 不可 使用方式 cat 網絡應用程序,分為前端和後端兩個部分。當前的發展趨勢,就是前端設備層出不窮(手機、平板、桌面電腦、其他專用設備......)。 因此,必須有一種統一的機制,方便不同的前端設備與後端進行通信。這導致API

System 這單元多用用近期

list second logs test pan val dia https find 參考:https://www.cnblogs.com/xumenger/p/4687493.html System.Classes.pas: TList、TStrings、TStri

C++類和物件.預設成員函式賦值運算子過載

1.(1)類的定義   類就是具有相同資料和相同操作的一組物件的集合。 學生類定義: class student {//成員變數char* name;int age;int sex;//成員函式void speak(){cout<<name<<"年

線性代數之——基本子空間

1. 四個基本子空間 行空間 C ( A

面向物件的基本特徵和七大設計原則

複習一哈~ 基本特徵抽象 將一些事物的共性抽離出來歸為一個類。 如對於動物,具有生命體徵、活動能力等區別於其它事物的共同特徵 封裝 有選擇地隱藏和暴露資料和方法 比如有U盤這個類,我希望隱藏內部組成和實現,只暴露USB介面以供使用 繼承 子類可以直接使用父類的部分資料和方法,可以

MIT 線性代數導論 第九講:基本子空間

本講的主要內容: 四種子空間的概念以及維數、基 四種基本子空間 首先了解四種基本子空間是什麼: 列空間(column space),簡記為 C(A)C(A)C(A), 由矩陣的列向量生成的空間 零空間(null space),簡記為 N(A)N(A)N(A

mysql 開發進階篇系列 52 許可權與安全(系統許可權表的粒度控制關係)

一.概述   接著上篇的許可權介紹,當用戶進行連線的時候,許可權表的存取過程有以下兩個階段:   (1) 先從user表中的host,user, authentication_string 這3個欄位中判斷連線的ip,使用者名稱,密碼是否存在於表中,如果存在,則通過身份驗證。   (2) 通過驗證後,則按照以

深度學習與計算機視覺: 搞懂反向傳播演算法的基本方程

BP演算法,在深度神經網路的發展中有著舉足輕重的地位,對於反向傳播演算法的推導過程,各種資料介紹可謂是多不勝數。但,由於深度神經網路的複雜性,要比較深刻的理解反向傳播演算法還是需要自己手動的推導一遍。 本文以前篇深度學習與計算機視覺: 深度學習必知基本概念以及鏈式求導介紹了神經網路的反向傳播中的鏈式求導法則

C#的基本技巧

1.如果可能儘量使用介面來程式設計   .NET框架包括類和介面,在編寫程式的時候,你可能知道正在用.NET的哪個類。然而,在這種情況下如果你用.NET支援的介面而不是它的類來程式設計時,程式碼會變得更加穩定、可用性會更高。請分析下面的程式碼: private void

資料庫事務的基本要素

ACID,指資料庫事務正確執行的四個基本要素的縮寫.包含:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、永續性(Durability)。一個支援事務(Transaction)的資料庫系統,必需要具有這四種特性,否則在事務過程(T

【線性代數】矩陣的基本子空間

矩陣的四個基本子空間 1、零空間         矩陣A的零空間就Ax=0的解的集合。假設矩陣的秩為r,矩陣為m*n的矩陣,則零空間的維數為n-r。因為秩為r,則自由變數的個數為n-r,有幾個自由變數,零空間就可以表示層幾個特解的線性組合,也即是零空間的維數為自由變數的個

java註解

java 提供4種註解,專門負責新註解的建立@Target :    target(靶子,目標)表示該註解可以用在什麼地方,可能的ElementType(元素的型別)引數有      @Target(ElementType.TYPE)   //介面、類、列舉、註解   @Ta

[深度學習] 反向傳播的基本公式證明及演算法流程

首先,我們來定義一些變數名: 然後是以下四個公式的證明過程: 最後我們得到反向傳播演算法的演算法流程: PS:對著網上的教程推了小半天,現在總算記住了,沒準以後面試就會考到 = = 不過反向傳播是現在網路訓練的數學基礎,以前只是有感性的認識,現在數學公式一列還是

Java 的基本特性

1、抽象抽象是將一類物件的共同特徵總結出來構造類的過程,包括資料抽象和行為抽象兩方面。抽象只關注物件有哪些屬性和行為,並不關注這些行為的細節是什麼。2、封裝通常認為封裝是把資料和操作資料的方法繫結起來,對資料的訪問只能通過已定義的介面。面向物件的本質就是將現實世界描繪成一系列

資料庫事務的基本特徵以及事務的隔離級別

一、資料庫事務的四個基本特徵   事務是作為一個邏輯單元執行的一系列操作,一個邏輯工作單元必須有四個屬性,稱為ACID(原子性、一致性、隔離性和永續性)屬性,只有這樣才能成為一個事務。   1、原子性(Atomicity):事務中包含的操作被看做一個邏輯單元,這個 邏輯單元

【UnityShader】設定Image元件圖片透明方向透明漸變Sprite原理相同

由於對Shader比較感興趣,雖然這不是公司的需求,但還是自己利用工作時間之餘完成了這個效果,這個功能對於2D遊戲來說以後可能會有需求 先展示一下效果 先上Shader程式碼 Shader "Unlit/ImageAlpha" { Properties { _Ma

ACID(資料庫事務基本要素)

ACID,指資料庫事務正確執行的四個基本要素的縮寫。包含:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、永續性(Durability)。一個支援事務(Tr