swagger 怎么去掉get delete_自学 Java 怎么入门?
給你推薦一個寫得非常用心的Java基礎教程:碼邦主2020年最新的Java視頻教程
這個教程將Java的入門基礎知識貫穿在一個實例中,逐步深入,可以幫助你快速進入Java編程的世界。萬事開頭難,逐步跟著這個教程走一遍,對Java應該就會有一種入門的感覺了。然后再去學習更高級的主題,或者更深入地學習其中的某些知識點。
1、學習的基本路徑
首先建立好開發環境非常重要,工欲善其事,必先利其器。做任何開發,首先就是要把這個環境準備好,之后就可以去做各種嘗試,嘗試過程中就能逐漸建立信心。初學者往往在環境配置中被各種預想不到的問題弄得很沮喪。
建立起來環境了,改變世界就靠你的代碼了。學習一門編程語言沒有太多的訣竅,你可能可以去找一本比較好的經典的入門書籍,現在網絡上也有非常多的資料,圖文或者視頻都可以,根據個人喜好選擇。最重要的練習,熟能生巧,在不斷的練習中去加深自己對程序語言的理解。
接下來你需要了解這三個術語,叫SDK、API跟Lib,分別表示軟件開發套件,應用編程接口和庫。這三者之間其實有一定的聯系,或者是交叉??傮w來說,它們都是給我們提供的一些封裝了底層功能的基礎設施。做Java開發的話,這些東西通常體現為我們所經常說的“框架”。事實上要成為一個資深的Java開發者,對各種API和框架的學習,可能是花時間最多的一個地方。
當然你也不可能把所有API或者SDK種的所有內容完全弄懂。在軟件開發中也有二八原則,少數的API能夠勝任開發中的大部分場景。所以你只需要掌握這些關鍵部分,當在新場景下遇到不能解決的新問題時,再去查看幫助文檔。所以幫助文檔的閱讀也是技術學習的一個關鍵因素。了解了基礎原理之后一般就能上手開發了,幫助文檔可以幫助你在實踐中學習。
2、三個神器
三個神器,對于軟件開發者來說非常重要。
第一個Google,雖然因為各種原因的話有時候我們訪問不了,但是這基本上是可以去尋找技術資料最好的方式。
第二個是Github,之前提到過庫的概念,Github就是一個可以找到大量第三方庫的地方,那是別人給我們封裝好的可以復用的代碼。比方說造一輛汽車的話,我們經常不要自己造輪子,而Github上可以找到很多優質的輪子,這些輪子還是免費(代碼都是開源的),我們應該盡量利用它們來拼裝自己的汽車。
第三個是StackOverflow網站,在這個問答網站上你遇到的幾乎任何開發問題都能快速找到答案。
3、Java Web全棧開發的推薦學習內容
簡單總結一下,大概包括下面這些內容。每一部分都可以細化成很多知識點,這只是一個粗略的羅列。把它當做技術地圖就好了。
開發環境的建立與項目管理:Eclipse、Maven和Git
Java編程基礎:基本語法、面向對象特性、Java8新特性、更高級庫(比如Guava)的使用等
前端開發技術:HTML、CSS、Bootstrap和JavaScript基礎
Spring基礎:依賴注入IoC、面向切面編程AOP、SpringBoot
MVC框架:Spring MVC、Struts等,包括URL路由、模板、表單、Session、攔截器等知識
數據訪問:關系型數據庫、JDBC、Spring JDBC、事務、ORM框架(MyBatis,Hibernate、JPA)
成熟應用的關鍵功能實現:郵件發送、異步任務、緩存、日志等
應用的測試和部署
下面對每部分的內容詳細介紹一下。
4、JSP/Servlet的相關內容
雖然現在各種成熟的MVC框架已經讓Java Web開發基本很少使用JSP和Servlet的原生功能了,基本都做了一層封裝。但是這部分基礎知識建議初學者還是要認真學習。
C/S模型,瀏覽器訪問網站過程
URL基礎知識
HTTP消息——請求和響應
處理HTTP請求的應用程序
Servlet/JSP簡介
Servlet容器,Servlet處理機制,Servlet生命周期
部署Servlet
ServletContext, ServletConfig
Filter, Event Listener
表達式,scriptlet, declaration
在JSP中訪問Java類
JSP內置對象
HTTP方法——GET v.s. POST
讀取表單數據
Servlets/JSP存在的問題
MVC設計模式
使用RequestDispatcher
在Servlets和JSP中傳遞數據,EL表達式
JSP Tag Lib
Core Tag(if, loop)
Function Tag(string, fmt, utils)
Session&&Cookie基本概念
通過Cookie記錄用戶狀態(類似購物車的例子)
使用Session跟蹤用戶(登錄)
5、數據庫相關的內容
掌握了Servlet/JSP技術,我們已經可以創建動態的Web應用了。除了動態的Web界面,一個有價值的Web應用必然需要進行數據存儲,開發上我們一般稱之為數據持久化(Data Persistence)。
從業務功能的角度出發,簡單的應用可以認為就是數據的增刪改查。比如一個產品級的博客應用,最核心的功能就是對博客內容的創建、修改、刪除和查詢,而這些功能都離不開Web服務器背后的數據庫系統。
實體、關系(表)、記錄(行)、列(屬性)
主鍵、外鍵等
數據庫表設計的基本原則
MySQL基本使用
SQL中的DDL——create,drop,alter,建立主鍵外鍵等約束
SQL中的DML——insert, select, delete, update,join
數據庫連接,連接池
使用JDBC API訪問數據庫
分頁查詢
事務的基本概念
JDBC代碼的封裝與數據訪問的三層架構
6、Spring相關的內容
Spring最重要的兩個核心功能是依賴注入(DI,Dependency Injection)和面向切面編程(AOP,Aspect Oriented Programming)。其中DI用于管理Java對象之間的依賴關系,AOP用于解耦業務代碼和公共服務代碼(如日志,安全,事務等)。DI和AOP能夠讓代碼更加簡單,具有良好的松耦合特性和可測試性,極大地簡化開發。理解這兩者是使用Spring框架的基礎。
依賴注入
面向切面編程(AOP)
基于POJO的編程模型
預置的模板代碼(如Spring JDBC)
依賴注入的優點
依賴注入如何實現
基于XML的裝配方式
基于Java Configuration的裝配方式
自動裝配
多種裝配方式的混用
處理裝配的歧義
如何注入屬性值
Singleton
Prototype
Request
Session
Global
切面、目標對象、切點、通知、織入等基本概念
如何定義切點:定義切點的aspectJ語法
定義通知
前置通知(Before)
后置通知(AfterReturning)
異常通知(AfterThrowing)
最終通知(After)
環繞通知(Around)
如何給切面傳參
7、Spring MVC相關內容
Spring作為Java系的全棧(full-stack)開發框架,當然也對Web開發有著非常好的支持。Spring的Web MVC框架能夠使開發者非常容易的開發Web應用,同時能夠無縫享受到Spring本身的諸多好處——IoC容器、AOP編程等等。
DispatcherServlet
WebApplicationContext
處理HTTP請求過程
@Controller, @RequestMapping注解
URL模板模式,@PathVariable
獲取HTTP請求參數,@RequestParam
@RequestMapping方法支持的參數
@RequestMapping方法支持的返回值
處理靜態資源
配置JSP
配置其它模板引擎
重定向、Flash Attribute
表單數據綁定
Spring表單標簽
表單驗證
文件上傳
Flash Attribute
Spring MVC請求處理流程
HandlerInterceptor接口
配置Interceptor
配置錯誤頁面
使用HTTP狀態碼
@ExceptionHandler
ControllerAdvice全局異常處理
@ResponseBody和@RequestBody
處理PUT和DELETE請求
8、MyBatis相關內容
MyBatis 是支持定制化 SQL、存儲過程以及高級映射的優秀的持久層框架。MyBatis 避免了幾乎所有的 JDBC 代碼和手動設置參數以及獲取結果集。MyBatis 可以對配置和原生Map使用簡單的 XML 或標注,將接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java對象)映射成數據庫中的記錄
ORM的概念
如何定義Mapper接口
如何定義XML Mapper映射
如何使用Mapper
SqlSessionFactory
SqlSessionFactoryBuilder
SqlSession
基于Spring如何配置和使用Mapper
SqlSessionFactoryBean的配置
MyBatis Spring Boot Starter的使用
熟悉Mapper配置文件
select元素
select的resultType屬性
insert元素
update元素
delete元素
resultMap元素
association元素
嵌套結果與嵌套查詢
collection元素
discriminator元素
動態SQL
分頁查詢(分頁插件)
9、JPA
ORM框架的出現使得我們能夠以面向對象的方式來操作關系數據庫,但是長久以來實現應用系統中的數據訪問層依然是一件非常繁瑣的事情,簡單的查詢也往往涉及大量重復代碼。
Spring Data JPA在則基于JPA進一步簡化了數據訪問層的實現,它提供了一種類似于聲明式編程的方式,開發者只需要編寫數據訪問接口(稱為Repository),Spring Data JPA就能基于接口中的方法命名自動地生成實現。
JPA(Java Persistence API,Java持久化API),定義了對象關系映射(Object Relation Mapping,ORM)以及實體對象持久化的標準接口。 JPA是一套接口規范,JPA的實現主要包括 JBoss 的 Hibernate EntityManager、Oracle 捐獻給 Eclipse 社區的 EclipseLink和Apache 的 OpenJPA 等。
Repository
使用Repository的步驟
自定義的Repository接口
Repository接口層次及其方法
自動生成數據庫Schema
@Entity和@Table
@Id和@GeneratedValue
@Basic
@Column
@Transient
@Temporal
@Lob
@OneToOn
@JoinColumn
unique屬性
雙向@OneToOne關聯
雙向關聯與cascade
自動映射的命名規則
@ManyToOne
@OneToMany
@ManyToMany
JoinTable
用@ManyToOne實現多對多
如何通過方法名創建查詢
分頁與排序
@Query標注
事務
10、Java Web應用的部署
War包規范和結構
在IDE中調試和部署
使用IDE導出War包
將War包部署到服務器
基于Spring Boot的部署
11、其它主題
緩存:EhCache、Spring Cache Manager、數據層緩存、服務層緩存、頁面緩存
安全:Spring Security(HTTP基本驗證,角色驗證,權限驗證)
任務調度:Spring任務執行器(Executor)
郵件發送:SMTP協議、spring-boot-starter-mail
Web Socket:@SubscribeMapping, WebSocketConfig
日志:SLF4J與Logback、 Spring Boot Logging、 ConsoleAppender/RollingFileAppender 、Sentry、ELK
12、設計模式
13、更進一步
分布式、深入Java虛擬機、針對不同場景的Java技術框架,到這個階段已經不僅僅是Java的學習了,而是大型應用場景的技術積累、架構設計的精進了。
建議大家在入門學習Java的過程當中做好相關的學習規劃和路線,這樣我們才能知道現在應該學什么,后面應該學什么,企業崗位需要我們掌握的技術知識點有哪些,以此我們才能在合理的周期內學好Java技術,從事這方面的工作。
我也是自學過來的,我知道前期學習java是很枯燥,遇到問題和難題就研究很久,沒有一個人能幫助指導,學習學習著就會沒有信心,比較懶散想放棄。其實只是學習方法沒有找對,閉門造車,從入門到放棄。自學主要就是要堅持,能有毅力。多寫博客,在確定進入這行要想清楚,自己是否適合
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的swagger 怎么去掉get delete_自学 Java 怎么入门?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Insyde uefi 隐藏设置_安卓福
- 下一篇: 未封装的扩展程序是什么意思_Androi