1、PHP依然是改變世界的語言,Facebook早期就是建立在PHP之上,轉型不意味着PHP不夠強大,而是場景選擇和架構選擇的結果
2、爲什麼轉型?個人理解是PHP更面向前臺業務,服務層和中臺技術選型應該多選擇支持多線程和協程的技術如Java和Golang,當
然還有很多。
3、之所以轉Java還是要看Java是否在團隊內是大衆語言,在語言統一上來看,只要成本可接受,收益還是很明顯,全團隊可以做到
技術架構統一,很多重複的生產線都可以合併,並在某個場景下找到一些機會,做到專業領域最強,比如一些小的插件和小的功能Jar
包。
轉型學習清單
- IntelliJ IDEA ,工慾善其事必先利其器,一個不錯的IDE支持多語言,主要是用的人多。可以買一個正版一年才幾百塊。
- Git ,源代碼管理工具,目前幾乎是開發的事實標準,Git Web版本有 GitLab Github,要理解 Git 、GitLab、GitHub 三者區別。
- Maven,項目管理工具,主要是用來管理項目的依賴,打包和發行。此處應該有個Maven的使用介紹。
- SpringBoot,Java 的輕量級框架,主要是很輕量很容易入手,方便集成了很多功能,比如數據庫操作,緩存操作,調度任務。。。。等等,主要是大廠都在用,很多人都在用。此處應該有SpringBoot的專題跟進
- slf4j,logback,標配日誌處理框架,很方便和Java應用集成,此處應該有個slf4j,logback,log4j的三者介紹
- lombok,Lombok能以簡單的註解形式來簡化java代碼,提高開發人員的開發效率
以上這些基本就夠了,再用到啥,我後面再補充好久不寫文章了,不會寫。
一、基於IDEA 創建一個Maven Java項目
- 創建項目
- 基於Maven 和 maven archetype-quickstart 創建項目 此處應該有個 archetype 的介紹
- 給項目起一個名字
- 根據自己的情況設置 groupId ,一般是 反域名形式,主要是爲了讓包名唯一,這個地方應該有個詳細描述
- 項目創建好後,會有一段時間,下載maven必備的jar包,記得勾選下面的 Enable Auto import 未來再新添加一個Jar包,會自動下載。
此處應該有個修改Maven倉庫地址爲Aliyun
二、添加Alibaba Java coding Guidelines
在Preferences–>Plugins->MarketPlace 搜索 alibaba 就會出現,店Install 即可,安裝後切記重啓一下IDE,這個沒有提示重啓IDE。。。。
重啓後在代碼編輯頁面會看到 有的關鍵詞和類名下面出現波浪線,把鼠標放上去就能看到哪些不符合阿里的代碼規約(這是很多前輩總結的規約,主要是爲了代碼風格統一還有就是編寫出大家都能理解的代碼用)
三、添加並設置Spring Boot
1、學會看文檔https://spring.io/guides/gs/spring-boot/
添加下面這些到自己工程的pom文件,添加後,Maven 會自動從中心倉庫拉去 Jar包,需要等一會兒。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.2.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
如下圖
2、在App類中啓動SpringBootApplication,
- 添加SpringBoot 啓動類註解 @SpringBootApplication
- 在入口代碼啓動 SpringApplication.run(App.class);
代碼如下
package org.example;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* Hello world!
*
*/
@SpringBootApplication
public class App {
public static void main( String[] args ) {
SpringApplication.run(App.class);
System.out.println( "Hello World!" );
}
}
3、寫一個業務 Controller (並聲明URL路徑爲 /test)
- 創建一個package 爲controller
- 創建一個Java Class 爲 TestController
- 在TestController中聲明這是一個 @RestContoller
- 在TestController的public 方法上聲明 @RequestMapping (用以表示訪問URI)
格式如下
代碼如下
package org.example.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@RequestMapping(value = "/test")
public String hello(){
return "Hello world!" ;
}
}
4、啓動項目(右鍵點 App類-> Run App.main())
如下圖
訪問http://localhost:8080/test
如下圖
四、未完待續
- SpringBoot 整合slf4j logback
- SpringBoot 配置文件
- SpringBoot JPA連接Mysql數據庫
- SpringBoot Redis
- SpringBoot 監控