第一章 SpringBoot初接觸(入門篇)

SpringBoot入門

標簽(空格分隔): springboot java springmvc


工程創(chuàng)建

  • idea新建工程
new project ->
spring initializr ->next ->
gorupid(jdk版本,maven,等等選擇) -> next ->
web - >web(勾上)->next ->
填寫項目路徑
  • 項目基礎配置參數(shù)
## 將文件poperties改為后綴為yml的文件
server:
  context-path: /sell 項目路徑
  port: 8080端口
  • 獲取配置文件參數(shù)
//方式一
@Value(“${變量名}”)

//方式二
@Data
@ConfigurationProperties(prefix = "excel") //文件對應yml中的
@Component
public class ExcelConfig {

    /** 導出路徑 .*/
    private String outPath;

    /** 模板名稱 .*/
    private String templePath;
}
excel:
  outPath: D:/temp/out.xls
  templePath: classpath:excel-templates/web-info-template.xls
  • 關于開發(fā)環(huán)境和部署環(huán)境
##新建一個yml文件
application.yml文件中
spring:
    profiles:
        active:dev # 如果是dev就用dev如果是pro就填pro
        
application-dev.yml文件
server:
  context-path: /sell 項目路徑
  port: 8080端口
  
application-pro.yml文件
server:
  context-path: /sell 項目路徑
  port: 8090端口

控制層注解說明

  • Controller
注解 說明
@Controller 處理http請求
@RestController spring 4 新添加注解即原先的@ResponseBody和@Controller使用
@RequestMapping("/user") 配置url映射

備注: @Controller 注解則需要配合一個模板來使用傍菇,其中需要引用模板類型丸升,同時,就要有一個返回試圖模板佑颇。

  • 傳參使用
注解 說明
@PathVariable 獲取url參數(shù)
@RequestParam 獲取請求參數(shù)
@GetMapping get請求縮寫(@RequestMapping(method="GET"))
@PostMapping post請求縮寫(@RequestMapping(method="POST"))

備注:@PathVariable 獲值方式url = http://....com/form/15645/apply @RequestMapping(value = "form/{id}/apply")
@PathVariable("id") String id;@RequestParam 獲值方式url:http://....com/test?id=123456 @RequestParam(value="id",required=false(默認不傳值是可以得),default=150)

  • restfulApi 請求方式
請求類型 請求方式 功能
GET /girls 獲取列表
GET /girls/id 獲取id的女生
POST /girls 創(chuàng)建一個女生
PUT /girls/id 更新一個女生操作
DELETE /girls/id 刪除一個女生操作

數(shù)據(jù)庫操作

  • 原課程:用mysql結合jpa顶掉,如果是其他的則使用其他數(shù)據(jù)庫驅(qū)動
<!--jpa-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!--數(shù)據(jù)庫驅(qū)動-->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>
  • yml文件數(shù)據(jù)庫參數(shù)配置
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver 驅(qū)動
    url: jdbc:mysql://192.168.1.142:3306/wechat_order?characterEncoding=utf-8&useSSL=false 鏈接地址
    username: root 用戶名
    password: 123456 密碼
  jpa:
    hibernate:  
        #是否自動創(chuàng)建sql語句 切忌使用Create 每次程序啟動都會覆蓋之前創(chuàng)建的表格 重新創(chuàng)建一個新的表格
        #使用update則存在的是實現(xiàn)更新 不存在的進行創(chuàng)建
        ddl-auto: create 
        #是否顯示sql調(diào)試
        show-sql: true 

備注:JPA全稱Java Persistence API,即Java持久化API挑胸,它為Java開發(fā)人員提供了一種對象/關系映射工具來管理Java應用中的關系數(shù)據(jù)痒筒,結合其他ORM的使用,能達到簡化開發(fā)流程的目的茬贵,使開發(fā)者能夠?qū)W⒂趯崿F(xiàn)自己的業(yè)務邏輯上簿透。Spring Jpa 能夠簡化創(chuàng)建 JPA 數(shù)據(jù)訪問層和跨存儲的持久層功能,用戶的持久層Dao接口只需要繼承他自己定義好的(倉庫)接口解藻,無需再寫實現(xiàn)類老充,就可以實現(xiàn)對象的CRUD操作,還有分頁排序等功能螟左。

  • 實體類創(chuàng)建
@Table(name="product_category") //對應數(shù)據(jù)庫中的表
@Entity //dao層注解
@DynamicUpdate //日期自動更新
@Data //lombok工具無需添加get和set方法
public class ProductCategory {
    /** id. */
    @Id //主鍵
    @GeneratedValue //自動增長值
    private Integer categoryId;

    /** 類目名稱. */
    private String categoryName;

    /** 類目編號. */
    private Integer categoryType;

    public ProductCategory() {
    }

    public ProductCategory(String categoryName, Integer categoryType) {
        this.categoryName = categoryName;
        this.categoryType = categoryType;
    }
}
  • 數(shù)據(jù)庫操作需要添加一個Repository繼承jpa
//JpaRepository<OrderMaster,String> 第一個為返回值類型啡浊,第二個為表主鍵
//默認會有一些增刪該查
//findOne(),findList(),save()....(這些都是依據(jù)主鍵或者是全部查詢,或者存儲)
//如果需要用根據(jù)某個字段查詢則需要按規(guī)定方式書寫例如下面根據(jù)openid查詢
//數(shù)據(jù)庫中字段名buyer_opendid則需要findByBuyerOpenid(String openid);
public interface OrderMasterRepository extends JpaRepository<OrderMaster,String> {
    /** 根據(jù)買家openid分頁查詢訂單. */
    Page<OrderMaster> findByBuyerOpenid (String buyerOpenid, Pageable pageable);
}
  • 對于事物則用
@Transactional 注解方式

備注:事物管理保證執(zhí)行同時操作時胶背,例如兩條數(shù)據(jù)同時插入虫啥,其中有一個插入失敗,另一個也插入失敗奄妨。


  • 原視頻UP主慕課網(wǎng)(兩小時入門SpringBoot)
  • 本篇博客撰寫人: XiaoJinZi 個人主頁 轉(zhuǎn)載請注明出處
  • 學生能力有限 附上郵箱: 986209501@qq.com 不足以及誤處請大佬指責
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末涂籽,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子砸抛,更是在濱河造成了極大的恐慌评雌,老刑警劉巖树枫,帶你破解...
    沈念sama閱讀 211,743評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異景东,居然都是意外死亡砂轻,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評論 3 385
  • 文/潘曉璐 我一進店門斤吐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來搔涝,“玉大人,你說我怎么就攤上這事和措∽剩” “怎么了?”我有些...
    開封第一講書人閱讀 157,285評論 0 348
  • 文/不壞的土叔 我叫張陵派阱,是天一觀的道長诬留。 經(jīng)常有香客問我,道長贫母,這世上最難降的妖魔是什么文兑? 我笑而不...
    開封第一講書人閱讀 56,485評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮腺劣,結果婚禮上绿贞,老公的妹妹穿的比我還像新娘。我一直安慰自己橘原,他們只是感情好籍铁,可當我...
    茶點故事閱讀 65,581評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著靠柑,像睡著了一般寨辩。 火紅的嫁衣襯著肌膚如雪吓懈。 梳的紋絲不亂的頭發(fā)上歼冰,一...
    開封第一講書人閱讀 49,821評論 1 290
  • 那天,我揣著相機與錄音耻警,去河邊找鬼隔嫡。 笑死,一個胖子當著我的面吹牛甘穿,可吹牛的內(nèi)容都是我干的腮恩。 我是一名探鬼主播毅往,決...
    沈念sama閱讀 38,960評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼寥裂,長吁一口氣:“原來是場噩夢啊……” “哼甫恩!你這毒婦竟也來了全谤?” 一聲冷哼從身側(cè)響起吠谢,我...
    開封第一講書人閱讀 37,719評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎火窒,沒想到半個月后甚垦,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,186評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡释液,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,516評論 2 327
  • 正文 我和宋清朗相戀三年全释,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片误债。...
    茶點故事閱讀 38,650評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡浸船,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出寝蹈,到底是詐尸還是另有隱情李命,我是刑警寧澤,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布躺盛,位于F島的核電站项戴,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏槽惫。R本人自食惡果不足惜周叮,卻給世界環(huán)境...
    茶點故事閱讀 39,936評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望界斜。 院中可真熱鬧仿耽,春花似錦、人聲如沸各薇。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,757評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽峭判。三九已至开缎,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間林螃,已是汗流浹背奕删。 一陣腳步聲響...
    開封第一講書人閱讀 31,991評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留疗认,地道東北人完残。 一個月前我還...
    沈念sama閱讀 46,370評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像横漏,于是被迫代替她去往敵國和親谨设。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,527評論 2 349

推薦閱讀更多精彩內(nèi)容

  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,773評論 6 342
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理缎浇,服務發(fā)現(xiàn)扎拣,斷路器,智...
    卡卡羅2017閱讀 134,633評論 18 139
  • 1、Spring MVC請求流程 (1)初始化:(對DispatcherServlet和ContextLoderL...
    拾壹北閱讀 1,946評論 0 12
  • 今天是孩子們行走醉美川西的第4天二蓝。 從小到大尊蚁,這應該是孩子第一次不是和爸爸媽媽同行的長途旅行,11天的行程侣夷。 說不...
    波波讀書閱讀 210評論 0 0
  • *1* 周末和許久未見的閨蜜小苑約飯,她愁眉苦臉的向我傾訴在學校生活的不如意衙传。 原來小苑和兩個舍友總是形影不離决帖,上...
    薛瘦脫閱讀 4,533評論 144 162