国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

后端開發(fā)基礎(chǔ)概念

這篇具有很好參考價值的文章主要介紹了后端開發(fā)基礎(chǔ)概念。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

后端開發(fā)基礎(chǔ)概念

目前處于項(xiàng)目上手階段,在學(xué)習(xí)項(xiàng)目過程中,有一些一知半解或者不明白含義的專業(yè)名詞或者縮寫,在此匯總。里面的內(nèi)容很多都是基于個人理解,水平有限如果有出錯的地方還請各位大佬批評指正。
2023年8月31日00:34:22,已經(jīng)比較晚了,后續(xù)的內(nèi)容之后再補(bǔ)充吧,一口吃不了個胖子。

常見縮寫總結(jié)

  • PO:Persistent Object,持久層對象,用于映射數(shù)據(jù)庫中的Java類。通常用于表示數(shù)據(jù)庫中一條記錄的Java對象,通常具有與數(shù)據(jù)庫中表相同的字段和數(shù)據(jù)類型。常常作為DAO(數(shù)據(jù)訪問對象)層的數(shù)據(jù)模型,以及和數(shù)據(jù)庫交互的對象。PO對象中的屬性與數(shù)據(jù)庫表中的列相互的對應(yīng),每一行數(shù)據(jù)庫表數(shù)據(jù)對應(yīng)一個PO對象,PO對象中的字段值就是對應(yīng)的列值。
    • 不應(yīng)該包括任何對數(shù)據(jù)庫的操作。
  • VO:Value Object,值對象,主要負(fù)責(zé)業(yè)務(wù)之間的值傳遞。VO通常表示程序中的某個值或者一組值,例如用戶的姓名、年齡、地址等。VO通常用于在不同層之間傳遞數(shù)據(jù),例如在Controller層和Service層之間傳遞數(shù)據(jù)。VO對象通常是PO對象中提取出來的一部分?jǐn)?shù)據(jù),用于與前端或其它層之間的展示和傳遞。
  • DO:Domain Object,領(lǐng)域?qū)訉ο螅褪菑默F(xiàn)實(shí)世界中抽象出來的有形或者無形的業(yè)務(wù)實(shí)體。通??梢源娌糠諴O的職責(zé)。
  • DAO:Data Access Object,數(shù)據(jù)訪問對象,負(fù)責(zé)與數(shù)據(jù)庫的交互。DAO是整個程序中與數(shù)據(jù)庫交互的核心部分。DAO負(fù)責(zé)將數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)換為Java對象,并將Java對象的數(shù)據(jù)保存至數(shù)據(jù)庫中。DAO的主要作用是隔離上層業(yè)務(wù)邏輯和下層數(shù)據(jù)訪問的細(xì)節(jié)。在Java開發(fā)中,通常使用Hibernate等ORM框架來實(shí)現(xiàn)DAO層。DAO的主要任務(wù)就是實(shí)現(xiàn)數(shù)據(jù)庫的增刪改查等基本操作,同時提供一些高級查詢功能。

關(guān)于DAO與PO的區(qū)別:
DAO層主要提供的是訪問底層數(shù)據(jù)源的方法,這些方法可以被Service層調(diào)用;PO主要是純對象本身,不涉及具體的增刪改查操作。

  • API:Application Programming Interface,應(yīng)用程序接口。為應(yīng)用外部提供功能支持。
  • APP:Application,
  • MVC:
  • DDD:
  • AOP:Aspect Oriented Programming,面向切面編程。將相同的事情統(tǒng)一攔截到一處進(jìn)行處理,是AOP的一種實(shí)現(xiàn)思想。通過預(yù)編譯的方式和運(yùn)行期間動態(tài)代理實(shí)現(xiàn)程序功能的同一維護(hù)的一種技術(shù)。

常見技術(shù)簡明介紹

  • Redis:Remote Dictionary Server,遠(yuǎn)程字典服務(wù)。redis是一個key-value存儲系統(tǒng),支持push/pop,add/remove以及取其交集并集和差集以及更豐富的操作。是高性能的key-value數(shù)據(jù)庫。我的理解就是面向企業(yè)級開發(fā)的HashMap,主要面向數(shù)據(jù)庫數(shù)據(jù)的存取/查找。為什么快?

完全基于內(nèi)存操作;
C語言實(shí)現(xiàn),優(yōu)化過的數(shù)據(jù)結(jié)構(gòu),基于集中基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu),redis做了大量的優(yōu)化,性能極高;
使用單線程,無上下文切換成本;
基于非阻塞的IO多路復(fù)用機(jī)制。

  • Spring:一個開源的J2EE應(yīng)用程序框架,
  • SpringMVC:
  • SpringBoot:
  • MyBatis:一款優(yōu)秀的持久層開源框架,其讓開發(fā)者可以專注于SQL語句本身,而不再過多的關(guān)注類似于比較原始的servlet+jsp對應(yīng)的JDBC中涉及到的數(shù)據(jù)庫的鏈接以及關(guān)閉等細(xì)節(jié)操作,簡化開發(fā)流程,提高了后端開發(fā)的工作效率。

MyBatis通過xml或注解的方式將要執(zhí)行的各種statement(statement、preparedStatement)配置起來,通過Java對象和statement中的sql進(jìn)行映射生成最終執(zhí)行的sql語句,最后由MyBatis框架執(zhí)行sql并將結(jié)果映射到Java對象并返回。

  • SpringIoC:Inverse of Control,控制反轉(zhuǎn)。
  • AOP:Aspect Oriented Programming,面向切面編程。
  • RabbitMQ:一種消息隊列,可以處理點(diǎn)對點(diǎn)消息隊列和發(fā)布/訂閱模式的消息隊列;
  • Kafka:
  • Dubbo:Alibaba開發(fā)的開源服務(wù)管理框架,支持豐富的服務(wù)治理能力。依然很抽象,如何使用?
  • MQ:
  • MySQL:
  • XDB-Router:
  • ES:
  • ZK:

框架簡介

Spring

Spring是一款開源的輕量級Java開發(fā)框架。一般說的Spring框架,是由多模塊組成的集合,包括,使用這些模塊可以很方便的協(xié)助我們進(jìn)行開發(fā),比如說Spring支持IoC(Inversion of Control),和AOP(Aspect-Oriented Programming),可以很方便的對數(shù)據(jù)庫訪問(JDBC)、可以很方便地集成第三方組件。。。
Spring包含很多模塊,其中最重要的就是Spring-Core模塊。Spring的其他模塊(比如SpringMVC)的功能實(shí)現(xiàn)都依賴于該模塊。
核心思想是:避免重復(fù)造輪子,開箱即用,提高開發(fā)效率。(開蓋即飲)一門語言的流行,通常需要一個殺手級的應(yīng)用,Spring就是Java生態(tài)的一個殺手級應(yīng)用框架

Spring包含的模塊

后端開發(fā)基礎(chǔ)概念,后端開發(fā),java,學(xué)習(xí),筆記,java,spring boot,架構(gòu),中間件

Core Container

Spring的核心模塊,主要提供IoC依賴注入功能的支持。Spring其他所有的功能都需要依賴于該模塊,

Spring IoC

淺顯的理解:IoC,控制反轉(zhuǎn),名字乍一看比較難理解,但其實(shí)核心就是Spring框架通過容器控制Bean對象,在項(xiàng)目代碼中通過注解@Service的形式控制,而不是程序員一個個的new來控制了。
更加好理解的版本就是:

IoC 解決的是對象管理和對象依賴的問題。本來Bean對象需要我們自己手動New,但是Spring的IoC特性使得對象都被交給Spring的IoC容器管理??梢园袸oC當(dāng)做是一個對象工廠,工廠管理這些對象的創(chuàng)建以及依賴關(guān)系。需要用到對象時,直接從工廠中拿取就行了。
控制反轉(zhuǎn)和依賴注入??刂品崔D(zhuǎn):將原本自己的控制權(quán)交給別人(Spring容器),是一種思想或者說是設(shè)計模式。依賴注入是控制反轉(zhuǎn)的具體實(shí)現(xiàn)方式,對象無需自行創(chuàng)建或者管理它的依賴關(guān)系,依賴關(guān)系將被自動注入到需要他們的對象當(dāng)中去。
IoC的好處(為什么需要控制反轉(zhuǎn)?):主要的好處是將對象集中統(tǒng)一管理,并且降低耦合。具體:IoC可以方便單元測試、對象創(chuàng)建復(fù)雜、對象依賴復(fù)雜、單例等等,什么都可以交給SpringIoC。理論上,自己手動new都可以解決以上問題,但是為了管理這一整套內(nèi)容,需要自己寫工廠來實(shí)現(xiàn)相應(yīng)的需求,這個工廠寫好你會發(fā)現(xiàn),其實(shí)就是Spring。Spring的輪子已經(jīng)造就好了,直接使用就行了。并且,Spring的核心不僅僅是IoC,還有一整套的Bean聲明周期管理。后端開發(fā)基礎(chǔ)概念,后端開發(fā),java,學(xué)習(xí),筆記,java,spring boot,架構(gòu),中間件

IoC(Inversion of Control)是一種設(shè)計思想,而不是一個具體的技術(shù)實(shí)現(xiàn)。IoC的思想就是將原本在程序中的手動創(chuàng)建對象的控制權(quán),交由Spring框架來管理。
后端開發(fā)基礎(chǔ)概念,后端開發(fā),java,學(xué)習(xí),筆記,java,spring boot,架構(gòu),中間件
IoC 容器就像是一個工廠一樣,當(dāng)我們需要創(chuàng)建一個對象的時候,只需要配置好配置文件/注解即可,完全不用考慮對象是如何被創(chuàng)建出來的。

Spring AOP,面向切片編程

解決的是非業(yè)務(wù)代碼抽取的問題。

AOP的底層技術(shù)是動態(tài)代理,Spring內(nèi)實(shí)現(xiàn)依賴的是BeanPostProcessor,

什么是Java Bean?:Bean是豆子的意思,含義是可重復(fù)利用的組件。JavaBean就是一個類,是用來包裝數(shù)據(jù),是一個中轉(zhuǎn)載體。

JavaBean的生命周期管理

SpringBoot

Spring是為了簡化J2EE的企業(yè)級應(yīng)用程序開發(fā)而產(chǎn)生的,SpringBoot是為了簡化Spring開發(fā)而誕生的(減少配置文件,開箱即用)。
SpringBoot只是簡化了配置的步驟,如果要開發(fā)SpringMVC框架的web程序,就還是需要將SpringMVC作為MVC的架構(gòu)。文章來源地址http://www.zghlxwxcb.cn/news/detail-689479.html

DDD

Java中的注解

  • @Resource:用于依賴注入,在類中標(biāo)識需要注入的資源或依賴項(xiàng),并由容器自動進(jìn)行注入。注入到了哪?為什么要注入?為應(yīng)用部件(比如JavaBean)提供服務(wù)
  • @Service:用于標(biāo)識一個類作為服務(wù)層的組件(Service)。通過使用@Service注解,可以將一個普通的Java類標(biāo)記為服務(wù)層組件,并由Spring容器進(jìn)行管理和注入。Service注解也看其來自于誰,來自于Spring(Dubbo)就由Spring(Dubbo)管理。
  • @Component:用于標(biāo)識一個類作為普通的組件;
  • @Repository:用于標(biāo)識一個類作為數(shù)據(jù)訪問層的組件;
  • @Controller:用于標(biāo)識一個類作為控制層的一個組間;
  • @
  • @
  • @

到了這里,關(guān)于后端開發(fā)基礎(chǔ)概念的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 后端開發(fā)基礎(chǔ)概念

    后端開發(fā)基礎(chǔ)概念

    目前處于項(xiàng)目上手階段,在學(xué)習(xí)項(xiàng)目過程中,有一些一知半解或者不明白含義的專業(yè)名詞或者縮寫,在此匯總。里面的內(nèi)容很多都是基于個人理解,水平有限如果有出錯的地方還請各位大佬批評指正。 2023年8月31日00:34:22,已經(jīng)比較晚了,后續(xù)的內(nèi)容之后再補(bǔ)充吧,一口吃不了

    2024年02月10日
    瀏覽(15)
  • Flask框架小程序后端分離開發(fā)學(xué)習(xí)筆記《2》構(gòu)建基礎(chǔ)的HTTP服務(wù)器

    Flask框架小程序后端分離開發(fā)學(xué)習(xí)筆記《2》構(gòu)建基礎(chǔ)的HTTP服務(wù)器

    Flask是使用python的后端,由于小程序需要后端開發(fā),遂學(xué)習(xí)一下后端開發(fā)。本節(jié)提供一個構(gòu)建簡單的本地服務(wù)器的代碼,仔細(xì)看注釋,學(xué)習(xí)每一步的流程,理解服務(wù)器接收請求,回復(fù)響應(yīng)的基本原理。 代碼效果,運(yùn)行之后,在瀏覽器輸入:localhost:2000 總結(jié) 1.導(dǎo)入socket庫:這個庫

    2024年01月18日
    瀏覽(26)
  • 微信小程序的授權(quán)登錄-Java 后端 (Spring boot)

    微信開發(fā)文檔鏈接:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html 一個可以測試的微信小程序 此微信小程序的APPID和APPscret(至開發(fā)者后臺獲?。?從時序圖我們可以了解到流程大致分為兩步: 小程序端獲取code后傳給Java后臺 Java后臺獲取code后向微信后臺接口

    2024年02月09日
    瀏覽(97)
  • 后端開發(fā)基礎(chǔ)概念 Entity,DAO,DO,DTO,VO, Service,Controller

    Entity主要用于ORM(對象關(guān)系映射)框架中,如Hibernate、MyBatis等,以便將數(shù)據(jù)庫中的數(shù)據(jù)映射為對象,方便進(jìn)行業(yè)務(wù)操作。 Entity通常與數(shù)據(jù)庫表一一對應(yīng),代表 業(yè)務(wù)數(shù)據(jù) 的基本單元。 通常放在項(xiàng)目的model或entity包下。 ? DAO(數(shù)據(jù)訪問對象): DAO是連接業(yè)務(wù)邏輯和數(shù)據(jù)庫的橋

    2024年04月08日
    瀏覽(27)
  • 【后端開發(fā)】01-Java基礎(chǔ)語法

    Java基礎(chǔ)語法 目錄 1. 概述 1.1. 語言特性 1.2. 開發(fā)平臺 1.3. 開發(fā)環(huán)境 1.4. 開發(fā)步驟 1.5. 注釋 2. 變量與運(yùn)算符 2.1. /保留字 2.2. 標(biāo)識符 2.3. 變量 2.4. 常用數(shù)據(jù)類型 2.4.1. 基本數(shù)據(jù)類型(8種) 2.4.2. 引用數(shù)據(jù)類型 2.4.3. 數(shù)據(jù)類型轉(zhuǎn)換 2.5. 運(yùn)算符 2.5.1. 算術(shù)運(yùn)算符(7個) 2.5.2. 關(guān)

    2024年02月08日
    瀏覽(74)
  • Java Spring Boot 開發(fā)框架

    Spring Boot是一種基于Java編程語言的開發(fā)框架,它的目標(biāo)是簡化Java應(yīng)用程序的開發(fā)過程。Spring Boot提供了一種快速、易于使用的方式來創(chuàng)建獨(dú)立的、生產(chǎn)級別的Java應(yīng)用程序。本文將介紹Spring Boot的特性、優(yōu)勢以及如何使用它來開發(fā)高效、可靠的應(yīng)用程序。 Spring Boot是由Pivotal團(tuán)隊

    2024年02月08日
    瀏覽(25)
  • 【后端開發(fā)】尚硅谷 SpringCloud 學(xué)習(xí)筆記

    【后端開發(fā)】尚硅谷 SpringCloud 學(xué)習(xí)筆記

    2.3.1 引入RestTemplate 2.3.2 遠(yuǎn)程調(diào)用支付模塊 前面我們沒有服務(wù)注冊中心,也可以服務(wù)間調(diào)用,為什么還要服務(wù)注冊? 當(dāng)服務(wù)很多時,單靠代碼手動管理是很麻煩的,需要一個公共組件,統(tǒng)一管理多服務(wù),包括服務(wù)是否正常運(yùn)行,等 Eureka用于** 服務(wù)注冊 ,目前官網(wǎng) 已經(jīng)停止更新** 創(chuàng)建項(xiàng)目

    2024年02月10日
    瀏覽(26)
  • 【筆記】Spring Boot 歷史官方文檔學(xué)習(xí)(持續(xù)更新)

    Spring Boot 2014正式發(fā)布1.0版本,距今已經(jīng)快10年了??礆v史官方文檔了解重點(diǎn)feature, 幫助自己建立知識網(wǎng)絡(luò)。 與 Spring 5 官網(wǎng)歷史文檔學(xué)習(xí) 一樣,盡量保證不誤解文檔作者的原意,不好翻譯的會有原文摘錄(包括一些專有名詞),并輔以自己的理解。限于篇幅原因,只摘錄工作

    2024年02月10日
    瀏覽(24)
  • Spring-Boot-Starter 學(xué)習(xí)筆記(1)

    Spring Boot 提供了兩個注解: @Configuration :Spring 提供的配置類注解,作用在類上,代表整個類是個 Spring 配置類,對照傳統(tǒng)的 Spring XML 配置文件。 @Bean :作用于方法上,代表此方法的返回值(對象)將會被 Spring 容器所管理,從而完成 Bean 的自動注冊。 這兩個組合起來搭配可

    2024年02月08日
    瀏覽(21)
  • 【Java 高階】一文精通 Spring MVC - 基礎(chǔ)概念(一)

    【Java 高階】一文精通 Spring MVC - 基礎(chǔ)概念(一)

    ?? 博主介紹 : 博主從事應(yīng)用安全和大數(shù)據(jù)領(lǐng)域,有8年研發(fā)經(jīng)驗(yàn),5年面試官經(jīng)驗(yàn),Java技術(shù)專家,WEB架構(gòu)師,阿里云專家博主,華為云云享專家,51CTO 專家博主 ?? 個人社區(qū):個人社區(qū) ?? 個人主頁:個人主頁 ?? 專欄地址: ? Java 高階 ??八股文專題:劍指大廠,手撕

    2024年02月11日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包