springboot 系列教程一:基礎專案搭建
使用 spring boot 有什麼好處
- 其實就是簡單、快速、方便!平時如果我們需要搭建一個 spring web 專案的時候需要怎麼做呢?
- 配置 web.xml,載入 spring 和 spring mvc
- 配置資料庫連線、配置 spring 事務
- 配置載入配置檔案的讀取,開啟註解
- 配置日誌檔案
- …
配置完成之後部署 tomcat 除錯,現在非常流行微服務,如果我這個專案僅僅只是需要傳送一個郵件,或者我的專案僅僅是生產一個積分,我都需要這樣折騰一遍,想想就很累!
快速入門
第一種,自己建立
maven 構建專案
- 訪問
- 選擇構建工具 Maven Project、Spring Boot 版本以及一些工程基本資訊,點選“ Switch to the full version. ”,可以看到更多的配置
- 點選 Generate Project 下載專案壓縮包
- 解壓後,使用 eclipse,Import -> Existing Maven Projects -> Next ->選擇解壓後的資料夾-> Finsh,OK done!
專案結構介紹
spingboot 建議的目錄結果如下:
採用預設配置可以省去很多配置,當然也可以根據自己的喜歡來進行更改最後,啟動 main 方法,至此一個專案搭建好了!
官方的構建工具非常舒服,下面我選擇自己建立一個maven專案,自己做配置,我的專案結構如下:
引入web模組
1.pom.xml 中新增支援 web 的模組:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.4.RELEASE</version> <relativePath/> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>springboot</artifactId> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> </project>
2.編寫 controller 內容:
package com.bdqn.zmj.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HellController {
@RequestMapping("/hello")
public String index() {
return "Hello World";
}
}
@RestController 的意思就是 controller 裡面的方法都以 json 格式輸出,是controller和responbody的結合體
3.啟動類
package com.bdqn.zmj.test;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
@SpringBootApplication
@ComponentScan("com.bdqn.zmj")
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class,args);
}
}
4、啟動 main 方法,開啟瀏覽器訪問 http://localhost:8080/hello 就可以看到效果了!
大家不要慌張,你可能會遇見以下問題!!!你輸入好你的配置路徑後怎麼也訪問不到hello word氣不氣,你說
大家在建立專案的時候一定要注意兩個點!!按照下面的方式問題得到解決
/**
* 當測試啟動類和Controller不位於同一個包下面時候需要
* 在application啟動類裡面配置@ComponentScan(basePackages = {"com.bdqn.Controller"})去掃描controller的路徑
*/
第二種,使用Spring Initializer快速建立Spring Boot專案
按照建立maven專案一樣,選擇圖下面畫框的部分
接下你可以選擇一些你需要匯入的元件,springboot會自動把你把依賴匯入進來,一直點選下一步直完成
這個時候你點選啟動類,application的話,會報錯提示如下
Description:
Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.
//無法配置資料庫,沒有指定url屬性,並且無法配置embedded datasource
Reason: Failed to determine a suitable driver class
//原因:無法明確指定正確的驅動類(driver.class)
Action:
Consider the following:
If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).
//建議:
//如果如果需要載入嵌入式的資料庫,請將他放入路徑中
//如果有資料庫設定需要從指定配置檔案中載入,需要呼叫該配置檔案(目前沒有活動的配置檔案)
發現只因為有pom檔案的修改導致專案中增加的mysql、redis、es、mongodb的依賴包的匯入,需要新增新的database配置檔案,可能因為springboot的啟動會自動載入這些依賴啟動時候需要的以來檔案,主要報錯是這個兩個匯入類,這兩個依賴的匯入需要有他們支援的相關的配置檔案web 、 mybatis,好了搞定
<!--<dependency>-->
<!--<groupId>org.springframework.boot</groupId>-->
<!--<artifactId>spring-boot-starter-web</artifactId>-->
<!--</dependency>-->
<!--<dependency>-->
<!--<groupId>org.mybatis.spring.boot</groupId>-->
<!--<artifactId>mybatis-spring-boot-starter</artifactId>-->
<!--<version>1.3.2</version>-->
<!--</dependency>-->
程式入口處:
@SpringBootApplication
public class DemoApplication {
修改為:
@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)
//該註解的作用是,排除自動注入資料來源的配置(取消資料庫配置),一般使用在客戶端(消費者)服務中
public class DemoApplication {
相關推薦
springboot 系列教程一:基礎專案搭建
使用 spring boot 有什麼好處 其實就是簡單、快速、方便!平時如果我們需要搭建一個 spring web 專案
Spring Boot基礎教程 ( 一 ) :基礎專案構建,引入web模組,完成一個簡單的RESTful API
簡介 在您第1次接觸和學習Spring框架的時候,是否因為其繁雜的配置而退卻了?在你第n次使用Spring框架的時候,是否覺得一堆反覆黏貼的配置有一些厭煩?那麼您就不妨來試試使用Spring Boot來讓你更易上手,更簡單快捷地構建Spring應用! Spring Boot
SpringBoot系列教程JPA之基礎環境搭建
JPA(Java Persistence API)Java持久化API,是 Java 持久化的標準規範,Hibernate是持久
熊大UWB系列教程一: DW1000 超寬頻系統簡介及最小系統搭建
對超寬頻感興趣的朋友,請關注熊大的微信公眾號,熊大將在上面釋出超寬頻教程,行業資訊,技術應用。幫助你更好的瞭解、學習、使用超寬頻技術。 熊大DW1000系列教程一: DW1000 超寬頻系統簡介及最小系統搭建 DW1000是decawave公司於20
SpringBoot系列十一:SpringBoot整合Restful架構(使用 RestTemplate 模版實現 Rest 服務調用、Swagger 集成、動態修改日誌級別)
attribute tar ring 動態修改 包含 分布式 restfu pen 負載 1、概念:SpringBoot整合Restful架構 2、背景 Spring 與 Restful 整合才是微架構的核心,雖然在整個 SpringBoot(SpringCloud)之中提
Java開發公眾號系列教程(一):微信js-sdk上傳照片相容IOS和安卓裝置
很多開發者朋友在進行微信公眾號開發時,遇到微信js-sdk上傳手機相簿照片時IOS裝置無法正常預覽的情況,今天筆者結合多年的開發經驗,把相容IOS的解決方案分享給廣大微信開發者朋友。 微信最新版本JSSDK文件 地址https://mp.weixin.qq.com/advanced/wiki
Elasticsearch系列教程(一):安裝
Elasticsearch簡介 Elasticsearch是一個高度可擴充套件的開源全文搜尋和分析引擎。它允許您快速,近實時地儲存,搜尋和分析大量資料。它通常用作底層引擎/技術,為具有複雜搜尋功能和要求的應用程式提供支援。 Elasticsearch可用於以下場景: 您執行線上網上商店
React學習(一)——基礎專案搭建以及環境配置
大家好,我是凱文,本篇文章將介紹React前端框架的環境配置以及專案搭建方法,其中涉及到了node.js(js執行平臺)、npm(依賴包管理工具)等內容。網上已經有許多類似的教程,這篇文章可以給各位做個參考,同時給我自己當做一個筆記。 React作為時下較為熱門的前
Java開發公眾號系列教程(一):微信js-sdk上傳手機相簿照片相容IOS和安卓裝置
很多開發者朋友在進行微信公眾號開發時,遇到微信js-sdk上傳手機相簿照片時IOS裝置無法正常預覽的情況,今天筆者結合多多年的開發經驗,把相容IOS的解決方案分享給廣大微信開發者朋友。 一、首先申明一點筆者本案例用的微信JSSDK版本是1.2.0的,官方文件給出的最
React:基礎專案搭建
近期在用React相關技術編寫一個簡單的會議室預定系統,將基礎的專案搭建部分整理出來,分享一下。 程式設計工具:Webstorm(jetbrains公司旗下的一款JavaScript開發工具,素有“Web前端開發神器”、“最強大的的HTML5編輯器”等稱號,個人覺得開
vue專案實踐教程1:vux專案搭建和簡介
vue作為比較受歡迎的前端開發框架之一,因為其優雅的程式碼結構,輕量化程式碼設計,簡介易懂的API,靈活易用的指令和屬性廣受前端開發者的喜愛,其學習成本和學習難度相對react來說要簡單很多。 這裡,筆者以一個小專案為例,向大家介紹vue的使用和開發。 在瞭
WPF教程一:基礎
基礎 傳統 cati control targe work 文檔結構 type 調用 一、WPF簡介WPF:WPF即Windows Presentation Foundation,翻譯為中文“Windows呈現基礎”,是微軟推出的基於Windows Vista的用戶界面框架
Maven 教程:IDEA開發環境中maven 專案配置JDK9,JDK10,JDK11,JDK12..等EA版本的配置方法 系列教程一
在Maven中配置使用的JDK,一般有兩種方法,筆者會對如下的兩種方法進行 分別的介紹。 筆者就以JDK10作為介紹,其他正常的JDK版本的配置也是一樣的。這裡使用JDK10 只是為了作一個通用的示範,使得大家舉一反三。後面會貼出其他版本的配置資訊。供大家拷貝
【SpringBoot 系列】一、SpringBoot專案搭建
一、引言:什麼是spring boot? Spring Boot是由Pivotal團隊提供的全新框架,其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。該框架使用了特定的方式來進行配置,從而使開發人員不再需要定義樣板化的配置。用我的話來理解,就是spring
Spring Boot2 系列教程(一)純 Java 搭建 SSM 專案
在 Spring Boot 專案中,正常來說是不存在 XML 配置,這是因為 Spring Boot 不推薦使用 XML ,注意,並非不支援,Spring Boot 推薦開發者使用 Java 配置來搭建框架,Spring Boot 中,大量的自動化配置都是通過 Java 配置來實現的,這一套實現方案,我們也可
【Python3.6+Django2.0+Xadmin2.0系列教程一】環境搭建及項目創建
添加 tran div 先來 ans 好的項目 tty 文件 mac 由於工作需要,接觸了大半年時間的Django+xadmin框架,一直沒空對這塊對進行相關的梳理。最近在同事的慫恿下,就在這分享下筆者的學習及工作經驗吧。 好了,話不多說,下面開始進入正題: 環境
Python基礎筆記系列十一:標準輸入輸出、文件讀寫和指針等操作
mode strong sublime pre 字符串類型 類型 print語句 open 同時 本系列教程供個人學習筆記使用,如果您要瀏覽可能需要其它編程語言基礎(如C語言),why?因為我寫得爛啊,只有我自己看得懂!! 標準輸入輸出一、輸入 在sublime中這
SpringBoot基礎專案搭建及各種整合和專案原始碼
SpringBoot基礎專案搭建及各種整合 專案原始碼:連結:https://pan.baidu.com/s/1OExnvhWeW5oQK8BHMAdH3A 提取碼:2pbj 1.1、SpringBoot簡介 1.2、
《機器學習系列教程》:第二章 機器學習基礎
第二章 機器學習基礎 機器學習and 資料分析 2.2 監督學習、非監督學習、半監督學習、弱監督學習? 根據資料型別的不同,對一個問題的建模有不同的方式。依據不同的學習方式和輸入資料,機器學習主要分為以下四種學習方式。 監督學習: 監督學習是使用已知
架構系列一:大型專案架構演進過程
作為一名程式設計師,單單隻會Coding是遠遠不夠的,想要走的更高更完,還必需懂Coding之外的其他東西,如架構設計,系統分析等,今天就架構這塊,談談自己的理解 一、單機時代 單機時間的應用,都很簡單,一個應用,一臺伺服器,就搞定了,大至的架構設計如下圖