項目白手起家之Java對象的解讀

這是我參與8月更文挑戰的第8天,活動詳情查看:8月更文挑戰前端

一切皆對象

Java語言是如今是後端的主流語言,基於類的形式,好比MVC模式下,控制層controller與轉換層,sql

在程序開發的過程當中會有不少的類給咱們使用,通常咱們常見的都是比較有含義的實體類,好比簡單的數據類型,數據庫

  • 開放接口層:可直接封裝 Service 方法暴露成 RPC 接口;經過 Web 封裝成 http 接口;進行網關安全控制、流量控制等。後端

  • 終端顯示層:各個端的模板渲染並執行顯示的層。當前主要是 velocity 渲染,JS 渲染,JSP 渲染,移動端展現等。緩存

  • Web 層:主要是對訪問控制進行轉發,各種基本參數校驗,或者不復用的業務簡單處理等。安全

  • Service 層:相對具體的業務邏輯服務層markdown

  • Manager 層:通用業務處理層,它有以下特徵:app

    • 對第三方平臺封裝的層,預處理返回結果及轉化異常信息;
    • 對 Service 層通用能力的下沉,如緩存方案、中間件通用處理;
    • 與 DAO 層交互,對多個 DAO 的組合複用。
  • DAO 層:數據訪問層,與底層 MySQL、Oracle、Hbase 等進行數據交互。oop

  • 外部接口或第三方平臺:包括其它部門 RPC 開放接口,基礎平臺,其它公司的 HTTP 接口post

簡單一個實體類中的屬性表明,固然類中使用的都是一些實際能用到的字段,咱們稱之爲:

以上的圖中正確的展現了數據交互過程當中,一些必要的類的object的別名叫法

DO:數據表名:

數據訪問對象是一個面向對象的數據庫接口

​ 用於數據庫中最直接操做crud 的類(簡稱數據訪問類)

在我開發流程中,都是訪問controller調用service層——》dao層,而後是mapper映射出最後到dao 層的實現方法,四層的一個結構

就是咱們常說的do: 由於是直接操做於表結構的

Dto: 數據傳輸對象

數據傳輸中的(接口方法的返回值和接口入參等)

是對於固定實現具體的業務功能而肯定的方法;——-》因爲封裝的方法在過程當中會具體的映射實現,mapper.xml的,防止sql注入的過程

簡單來講就是咱們須要具體封裝一個方法去肯定,咱們的返回值,入參等——須要這個類做爲操做數據表的一箇中間object

Vo: 前端頁面顯示對象

這個對象的出現是在前端頁面上展現來造成的,理論上後端輸出的數據格式字段等,dto. 可是前端顯示的話可能要考慮用戶的體驗,從而就分離出來了一個vo的object的對象供前端來使用;

POJO:DO/DTO/BO/VO 的統稱

全部的實體類交互的對象均可能稱爲是pojo的對象

簡單就是能夠有屬性,本身實現Lombok中的@data註解的方法,get/set,toString的方法

阿里巴巴的規範中對於各類對象創建規約:

相關文章
相關標籤/搜索