国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術(shù)及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Spring Boot構(gòu)建框架詳解

Spring Boot構(gòu)建框架詳解

2021-01-28 12:34素文宅 Java教程

這篇文章主要為大家詳細介紹了Spring Boot構(gòu)建框架的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

什么spring boot?

spring boot是由pivotal團隊提供的全新框架,其設計目的是用來簡化新spring應用的初始搭建以及開發(fā)過程。該框架使用了特定的方式來進行配置,從而使開發(fā)人員不再需要定義樣板化的配置。用我的話來理解,就是spring boot其實不是什么新的框架,它默認配置了很多框架的使用方式。

環(huán)境準備

一個比較不錯的文本編輯器(例如vim、emacs、sublime text)或者ide(eclipse、idea intellij
java環(huán)境(jdk 1.8或以上版本)
maven 3.0+(eclipse和idea intellij內(nèi)置,如果使用ide并且不使用命令行工具可以不安裝)

maven構(gòu)建項目

1)官網(wǎng)地址http://start.spring.io/
2)選擇構(gòu)建工具maven project、spring boot版本1.5.6以及一些工程基本信息,點擊“switch to the full version.”java版本選擇1.8,可參考下圖所示:

Spring Boot構(gòu)建框架詳解

3)點擊generate project下載項目壓縮包
4)解壓后,使用eclipse,import -> existing maven projects -> next ->選擇解壓后的目錄-> finsh,ok done

目錄結(jié)構(gòu)

導入eclipse,執(zhí)行update project...(快捷鍵alt + f5)

Spring Boot構(gòu)建框架詳解

如上圖所示,spring boot的基礎結(jié)構(gòu)共三個文件:

src/main/java  程序開發(fā)以及主程序入口
src/main/resources 配置文件
src/test/java  測試程序

spingboot建議的目錄結(jié)果如下:

root package結(jié)構(gòu):com.example.yourproject

com
  +- example
    +- yourproject
      +- application.java
      |
      +- domain
      |  +- customer.java
      |  +- customerrepository.java
      |
      +- service
      |  +- customerservice.java
      |
      +- controller
      |  +- customercontroller.java
      |

1)application.java 建議放到跟目錄下面,主要用于做一些框架配置
2)domain目錄主要用于實體(entity)與數(shù)據(jù)訪問層(repository)
3)service 層主要是業(yè)務類代碼
4)controller 負責頁面訪問控制

采用默認配置可以省去很多配置,當然也可以根據(jù)自己的喜歡來進行更改。最后啟動application main方法,到此一個spring boot框架的java項目搭建好了。

引入web模塊

1. pom.xml中添加支持web的模塊(測試模塊):

?
1
2
3
4
5
6
7
8
9
<dependency>
  <groupid>org.springframework.boot</groupid>
  <artifactid>spring-boot-starter-web</artifactid>
</dependency>
<!--測試依賴-->
<dependency>
  <groupid>org.springframework.boot</groupid>
  <artifactid>spring-boot-starter-test</artifactid>
</dependency>

pom.xml文件中默認有兩個模塊:

spring-boot-starter:核心模塊,包括自動配置支持、日志和yaml;
spring-boot-starter-test:測試模塊,包括junit、hamcrest、mockito。
詳細pom.xml文件內(nèi)容,具體如下(注意parent配置,因為<version>1.5.6.release</version>配置了版本信息,所以所有子項目中的相對應包不需要再次配置版本號):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?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">
 <modelversion>4.0.0</modelversion>
 
 <groupid>com.example</groupid>
 <artifactid>spring-boot</artifactid>
 <version>0.0.1-snapshot</version>
 <packaging>jar</packaging>
 
 <name>demo</name>
 <description>springbootdemo1 project for spring boot</description>
 
 <parent>
 <groupid>org.springframework.boot</groupid>
 <artifactid>spring-boot-starter-parent</artifactid>
 <version>1.5.6.release</version>
 <relativepath/> <!-- lookup parent from repository -->
 </parent>
 
 <properties>
 <project.build.sourceencoding>utf-8</project.build.sourceencoding>
 <project.reporting.outputencoding>utf-8</project.reporting.outputencoding>
 <java.version>1.8</java.version>
 </properties>
 
 <dependencies>
 <dependency>
  <groupid>org.springframework.boot</groupid>
  <artifactid>spring-boot-starter</artifactid>
 </dependency>
 
 <dependency>
  <groupid>org.springframework.boot</groupid>
  <artifactid>spring-boot-starter-test</artifactid>
  <scope>test</scope>
 </dependency>
 <dependency>
     <groupid>org.springframework.boot</groupid>
     <artifactid>spring-boot-starter-web</artifactid>
 </dependency>
 </dependencies>
 
 <build>
 <plugins>
  <plugin>
  <groupid>org.springframework.boot</groupid>
  <artifactid>spring-boot-maven-plugin</artifactid>
  </plugin>
 </plugins>
 </build>
 
</project>

2. 編寫controller內(nèi)容

?
1
2
3
4
5
6
7
8
9
10
11
12
package com.example.demo;
 
import org.springframework.web.bind.annotation.requestmapping;
import org.springframework.web.bind.annotation.restcontroller;
 
@restcontroller
public class helloworldcontroller {
  @requestmapping("/hello")
  public string index() {
    return "hello world";
  }
}

@restcontroller的含義是controller里面的方法都以json格式輸出

3. 啟動主程序,打開瀏覽器訪問 http://localhost:8080/hello,就可以看到效果了,是不是感覺很簡單!

如何做單元測試?

打開的src/test/下的測試入口,編寫簡單的http請求來測試;使用mockmvc進行,利用mockmvcresulthandlers.print()打印出執(zhí)行結(jié)果。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@runwith(springjunit4classrunner.class)
@springapplicationconfiguration(classes = mockservletcontext.class)
@webappconfiguration
public class helloworldcontrolertests {
  private mockmvc mvc;
  @before
  public void setup() throws exception {
    mvc = mockmvcbuilders.standalonesetup(new helloworldcontroller()).build();
  }
  @test
  public void gethello() throws exception {
  mvc.perform(mockmvcrequestbuilders.get("/hello").accept(mediatype.application_json))
        .andexpect(mockmvcresultmatchers.status().isok())
        .anddo(mockmvcresulthandlers.print())
        .andreturn();
  }
}

開發(fā)環(huán)境的調(diào)試

熱啟動在正常開發(fā)項目中已經(jīng)很常見了吧,雖然平時開發(fā)web項目過程中,改動項目啟重啟總是報錯;但springboot對調(diào)試支持很好,修改之后可以實時生效,需要添加以下的配置:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<dependencies>
  <dependency>
    <groupid>org.springframework.boot</groupid>
    <artifactid>spring-boot-devtools</artifactid>
    <optional>true</optional>
  </dependency>
</dependencies>
<build>
  <plugins>
    <plugin>
      <groupid>org.springframework.boot</groupid>
      <artifactid>spring-boot-maven-plugin</artifactid>
      <configuration>
        <fork>true</fork>
      </configuration>
    </plugin>
  </plugins>
</build>

注意:該模塊在完整的打包環(huán)境下運行的時候會被禁用。如果你使用java -jar啟動應用或者用一個特定的classloader啟動,它會認為這是一個“生產(chǎn)環(huán)境”。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://blog.yoodb.com/yoodb/article/detail/1412

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 亚洲视频在线一区 | 午夜精品一区二区三区在线播放 | 久久久久国产精品一区二区 | 成人亚洲视频 | 精品国精品国产自在久不卡 | 成人a视频在线观看 | 日韩成人精品 | 久久中文字幕一区 | 亚洲自拍小视频 | 一区二区三区有限公司 | 国产精品一区二区视频 | 在线a视频 | 亚洲日本乱码一区两区在线观看 | 午夜av影院 | 一区二区三区久久久久 | 伊人久久在线 | 日韩性精品 | 亚洲人视频 | 亚洲综合色自拍一区 | 精品一区二区久久久久黄大片 | av电影免费在线观看 | 国产激情在线 | 中文字幕在线观看 | 国产精品久久久久久久久久久久午夜片 | 欧美国产综合一区 | 久久99视频 | 久久久亚洲精品视频 | 国产精品久久久久一区二区三区 | 久久精品中文 | 成人av播放| 精品一区二区三区中文字幕老牛 | 国产一区二区三区久久 | 精品一区二区视频 | 久久亚洲精品国产精品紫薇 | 日本久久久久久 | 高清一区二区三区 | 久久久国产一区二区三区四区小说 | 中文字幕在线电影 | 欧美中文字幕一区二区三区亚洲 | 日韩免费高清在线 | av在线一区二区三区 |