spring boot web項目搭建

一:

上官網:https://start.spring.io/選擇需要加載的jar包:

Rest Repositories :用於restful項目。

mySQL : 連接mysql數據庫的驅動。

mybatis:使用mybatis框架。

DevTools:熱部署jar包(也可以在maven文件中引用)

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-devtools</artifactId>

<optional>true</optional>

</dependency>

下載下來就是一個maven項目,使用開發工具打開此maven項目

 

二:GET請求

關鍵字:GerMapping

GerMapping的一些用法:

GerMapping(/index):在/index鏈接下訪問此方法。

GerMapping(/{id})

public XXX getXXX(@PathVariable int id){}

:在訪問鏈接由傳入的參數ID產生。

 

獲取get請求中的參數:

@GetMapping("/getobj")

public Object getObjByParam(@RequestParam("name") String name,@RequestParam("sex")String sex,@RequestParam("name")int age){

String str = "test = " + age+" name = "+name +" sex = "+sex;

logger.info(str);

return age;

}

顯然給代碼維護和閱讀帶來不便,可以通過構造一個對象來簡化參數的接收方式如下:

@GetMapping("/getobj")

public Object getObj(Test test){

logger.info("test = " + test);

return test;

}

三:POST請求

關鍵字:postMapping

postMapping可以通過對象接收參數

@PostMapping("/getobj")

public Object getObj(Test test){

logger.info("test = " + test);

return test;

}

四:上傳文件:

上傳文件肯定用的是POST格式

@PostMapping(value="/{id}/photos",consumes=MediaType.MULTIPART_FORM_DATA_VALUE)

public void addPhoto(@PathVariable int id, @RequestParam("photo") MultipartFile imgFile) throws Exception{

if (log.isTraceEnabled()){

log.trace("接收到文件"+ id + “收到文件” + imgFile.getOriginalFilename());//.getOriginalFilename()獲取文件名稱

}

//保存文件

FileOutputStream fos = new FileOutputStream("target/" + imgFile.getOriginalFilename());//定義文件的輸出

IOUtils.copy( imgFile.getInputStream(),fos);

fos.close();

}

 

五:下載文件

@GetMapping(value="/{id}/icon",produce=MediaType.IMAGE_JPEG_VALUE)

public byte[] getIcon(@PathVariable int id) throws Exception{

String iconFile = 'src/test/resources/icon.jpg';

InputStream is new FileInputStream(iconFile);

return IOUtils.toByteArray(is);

}

 

六:spring日誌

spring默認使用的log4j作爲日誌輸出管理工具

 

在yml文件中的配置:

#配置日誌 logging: #配置日誌文件路徑 level: xatu.zsl: debug #不同目錄下的日誌可配置不同級別 org.springfromework.web: info org.hibernate: error #採用相對路徑方式將日誌文件輸出到【log\myspringboot.log】 file: log\myspringboot.log

#配置日誌文件路徑(絕對路徑) path: G:\work_space\study_spring2\study_boot_demo\log

日誌級別:trace<debug<info<warn<error<fatal。

 

七:集成mybatis

1.修改pom.xml添加mybatis的jar包(包括相應數據庫驅動)

2.修改application.yml添加數據庫連接(各個數據庫格式不同)

mysql(實例):

spring:

profiles:

active: prod

datasource:

driver-class-name: com.mysql.jdbc.Driver

url: jdbc:mysql://127.0.0.1:3306/test

username: root

password: root

MariaDB和Oracle(實例):

datasources:

portal:

datasource:

url: jdbc:oracle:thin:@172.10.11.5:1521/orcl # jdbc:mariadb://127.0.0.1:3306/demo

username: demo

password: demo

driverClassName: oracle.jdbc.OracleDriver # org.mariadb.jdbc.Driver #

# 初始化大小,最小,最大

initialSize: 6

minIdle: 4

maxIdle: 15

maxActive: 22

# 配置獲取連接等待超時的時間

maxWait: 60000

# 配置間隔多久才進行一次檢測,檢測需要關閉的空閒連接,單位是毫秒

timeBetweenEvictionRunsMillis: 60000

# 配置一個連接在池中最小生存的時間,單位是毫秒

minEvictableIdleTimeMillis: 300000

validationQuery: select 1 from dual

testWhileIdle: true

testOnBorrow: false

testOnReturn: false

3.修改啓動類,增加@MapperScan("package-of-mapping")

在application.java中加入@MapperScan("填寫mapper路徑")例如:

@SpringBootApplication

@MapperScan("com.demo.dao")

public class Application{

public static void main(String[] args){

.......................

}

}

4.添加Mybatis Mapping接口等

發佈了19 篇原創文章 · 獲贊 1 · 訪問量 3485
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章