<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Spring Boot Hello World 示例 – Spring Boot REST 示例 > 原文: [https://howtodoinjava.com/spring-boot/spring-boot-tutorial-with-hello-world-example/](https://howtodoinjava.com/spring-boot/spring-boot-tutorial-with-hello-world-example/) **Spring boot** 是 spring 框架的開發人員開發的子項目 – 用最小的配置創建獨立的生產級應用程序。 Spring Boot 應用程序通常打包為[胖/超級 jar](https://howtodoinjava.com/maven/maven-shade-plugin-create-uberfat-jar-example/) 文件,并且可以作為簡單的 jar 文件部署在任何平臺上。 這就是為什么 Spring Boot 應用程序是在 Java 中構建[微服務](https://howtodoinjava.com/design-patterns/microservices-definition-principles-benefits/)的最佳選擇的原因。 讓我們從 Eclipse 中的 **spring boot hello world** 示例開始逐步學習。 ## 1\. 創建 spring boot hello world 項目模板 要為 spring boot 應用程序創建模板,我建議使用 [http://start.spring.io/](https://start.spring.io/)。 在這里,您可以選擇當前考慮的所有依賴關系,并生成項目。 ![Spring Boot Options](https://img.kancloud.cn/1e/13/1e130dfe505ed27b7f72d193388c3a28_1024x720.jpg) Spring Boot 選項 我選擇了 [Jersey](https://howtodoinjava.com/jersey-jax-rs-tutorials/),[Spring Web](https://howtodoinjava.com/spring-mvc-tutorial/),Spring HATEOAS,Spring JPA 和 [Spring Security](https://howtodoinjava.com/spring-security-tutorial/) 等相關性。您可以在下載并導入項目后或將來出現需求時添加更多依賴項。 `Generate Project`按鈕將生成一個`.zip`文件。 下載文件并將其解壓縮到您的工作區中。 ## 2\. 導入 spring boot 項目到 eclipse 下一步是將生成的項目導入到 IDE 中。 我為此使用了 eclipse。 1)將 spring boot 項目導入為現有的 maven 項目。 ![Import Existing Maven Project into Eclipse](https://img.kancloud.cn/ea/a4/eaa4127f625b7137662ce1ace0426a78_640x456.jpg) 將現有 Maven 項目導入 Eclipse 2)選擇`pom.xml`文件將其導入。 ![Select pom.xml file to import maven project](https://img.kancloud.cn/1d/03/1d031c91421d8173490a4eef40263e1d_705x506.jpg) 選擇`pom.xml`文件來導入 Maven 項目 3)將導入項目,并且在生成 zip 文件時添加的依賴項將自動下載并添加到`classpath`中。 ![Imported Spring Boot Project Structure](https://img.kancloud.cn/6e/66/6e66ccf96bc34a8ef2810adee2c08466_388x469.jpg) 導入的 Spring Boot 項目結構 您現在已經成功導入了 spring boot 應用程序。 現在,讓我們看看它已經為您配置了什么。 ## 3\. Spring Boot 自動配置 使用 Spring Boot 時,好事是您添加了一個依賴項(例如 Spring security)時,它會做出合理的假設并自動為您配置一些默認值。 因此,您可以立即開始。 Spring Boot 通過掃描類路徑中可用的依賴庫來使用約定而非配置。 對于 POM 文件中的每個`spring-boot-starter-*`依賴項,Spring Boot 都會執行一個默認的`AutoConfiguration`類。 `AutoConfiguration`類使用`*AutoConfiguration`詞匯模式,其中`*`代表庫。 例如,SpringSecurity 的自動配置是通過`SecurityAutoConfiguration`完成的。 同時,如果您不想對任何項目都使用自動配置,則此操作非常簡單。 只需使用如下所示的`exclude = SecurityAutoConfiguration.class`。 ```java @SpringBootApplication (exclude = SecurityAutoConfiguration.class) public class SpringBootDemoApplication { public static void main(String[] args) { SpringApplication.run(SpringBootDemoApplication.class, args); } } ``` 也可以使用`src/main/resources`文件夾中的`application.properties`文件覆蓋默認配置值。 ## 4\. Spring Boot 注解 現在查看`@SpringBootApplication`注解的實際作用。 #### 4.1. `@SpringBootApplication`注解 `SpringBootApplication`定義如下: ```java @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited @SpringBootConfiguration @EnableAutoConfiguration @ComponentScan(excludeFilters = @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class)) public @interface SpringBootApplication { //more code } ``` 它為應用程序配置目的添加了 3 個重要的注解。 1. ##### `@SpringBootConfiguration` ```java @Configuration public @interface SpringBootConfiguration { //more code } ``` 該注解將`@Configuration`注解添加到類中,**將該類標記為應用程序上下文的 bean 定義的源**。 2. ##### `@EnableAutoConfiguration` 這告訴 Spring Boot 通過基于類路徑設置,其他 bean 和各種屬性設置添加 bean,從而根據`pom.xml`中添加的依賴關系自動配置重要的 bean 定義。 3. ##### `@ComponentScan` 該注解告訴 Spring Boot 掃描基本軟件包,查找其他 bean /組件并對其進行配置。 ## 5\. 如何通過 Spring Boot 驗證自動配置的 Bean 如果您想知道在 **spring boot hello world 應用程序**中已自動配置了所有 bean,請使用此代碼并運行它。 `SpringBootDemoApplication.java` ```java import java.util.Arrays; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration; import org.springframework.context.ApplicationContext; @SpringBootApplication (exclude = SecurityAutoConfiguration.class) public class SpringBootDemoApplication { public static void main(String[] args) { ApplicationContext ctx = SpringApplication.run(SpringBootDemoApplication.class, args); String[] beanNames = ctx.getBeanDefinitionNames(); Arrays.sort(beanNames); for (String beanName : beanNames) { System.out.println(beanName); } } } ``` 使用我的`pom.xml`文件,它將生成以下 bean 名稱以及其他許多`springframework.boot.autoconfigure`依賴項。 `Console` ```java simpleControllerHandlerAdapter sortResolver spring.datasource-org.springframework.boot.autoconfigure.jdbc.DataSourceProperties spring.hateoas-org.springframework.boot.autoconfigure.hateoas.HateoasProperties spring.http.encoding-org.springframework.boot.autoconfigure.web.HttpEncodingProperties spring.http.multipart-org.springframework.boot.autoconfigure.web.MultipartProperties spring.info-org.springframework.boot.autoconfigure.info.ProjectInfoProperties spring.jackson-org.springframework.boot.autoconfigure.jackson.JacksonProperties spring.jpa-org.springframework.boot.autoconfigure.orm.jpa.JpaProperties spring.jta-org.springframework.boot.autoconfigure.transaction.jta.JtaProperties spring.mvc-org.springframework.boot.autoconfigure.web.WebMvcProperties spring.resources-org.springframework.boot.autoconfigure.web.ResourceProperties springBootDemoApplication standardJacksonObjectMapperBuilderCustomizer stringHttpMessageConverter tomcatEmbeddedServletContainerFactory tomcatPoolDataSourceMetadataProvider transactionAttributeSource transactionInterceptor transactionManager transactionTemplate viewControllerHandlerMapping viewResolver websocketContainerCustomizer ``` ## 6\. Spring Boot REST API 示例 現在是時候將任何功能內置到 hello world 應用程序中了。 您可以根據需要添加功能,我正在添加 [REST API](https://howtodoinjava.com/restful-web-service/) 。 #### 6.1. 創建 REST 控制器 創建一個包`com.howtodoinjava.demo.controller`,并在其中創建 rest 控制器。 `EmployeeController.java` ```java import java.util.ArrayList; import java.util.List; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.howtodoinjava.demo.model.Employee; @RestController public class EmployeeController { @RequestMapping("/") public List<Employee> getEmployees() { List<Employee> employeesList = new ArrayList<Employee>(); employeesList.add(new Employee(1,"lokesh","gupta","howtodoinjava@gmail.com")); return employeesList; } } ``` #### 6.2. 建立模型 創建模型類`Employee`。 `Employee.java` ```java public class Employee { public Employee() { } public Employee(Integer id, String firstName, String lastName, String email) { super(); this.id = id; this.firstName = firstName; this.lastName = lastName; this.email = email; } private Integer id; private String firstName; private String lastName; private String email; //getters and setters @Override public String toString() { return "Employee [id=" + id + ", firstName=" + firstName + ", lastName=" + lastName + ", email=" + email + "]"; } } ``` ## 7\. Spring Boot Hello World 示例演示 現在,通過運行`SpringBootDemoApplication`中的`main()`方法來啟動應用程序。 它將在端口`8080`上啟動嵌入式 tomcat 服務器。 由于我們已將演示 REST API URL 配置為根 URL,因此您可以在`http;//localhost:8080/`本身上對其進行訪問。 ![Verify Spring Boot REST API](https://img.kancloud.cn/7a/98/7a9855b1e89e8310597cc954da96fa06_755x440.jpg) 驗證 Spring Boot REST API 您將在測試工具或瀏覽器中收到以下響應。 ```java [{"id":1,"firstName":"lokesh","lastName":"gupta","email":"howtodoinjava@gmail.com"}] ``` 這是 **spring boot rest hello world 示例**和簡單的 **rest api** 示例的全部內容。 讓我問您有關如何使用 Maven 在 Eclipse 中創建 Spring Boot 項目的問題。 學習愉快! [下載源碼](https://howtodoinjava.com/wp-content/downloads/springbootdemo-hello-world-rest.zip) 資源: [Spring Boot 項目](https://projects.spring.io/spring-boot/) [Spring 初始化器](https://start.spring.io/) [`@SpringBootApplication`注解](https://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/autoconfigure/SpringBootApplication.html)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看