Пример адреса исходного кода проекта: https://github.com/CodingDocs/springboot-guide/tree/master/source-code/hello-world.
1. Вы можете использовать https://start.spring.io/ для генерации нового проекта Spring Boot.
Не забудьте выбрать модуль Spring Web, так как это необходимая зависимость. После того, как все опции выбраны, нажмите кнопку Generate для загрузки проекта Spring Boot. После завершения загрузки и распаковки проекта, вы можете открыть его в IDEA.
Кроме того, есть похожий сайт от Alibaba https://start.aliyun.com/bootstrap.html, который предлагает еще больше возможностей для генерации проектов с определенной архитектурой!
2. Вы также можете создать проект Spring Boot прямо в IDEA, используя методы, аналогичные вышеописанным: File->New->Project->Spring Initializr
.
После успешного открытия проекта, он будет выглядеть следующим образом:
Java-классы, имеющие суффикс Application, обычно являются запускающими классами Spring Boot. Например, запускающий класс нашего проекта — это HelloWorldApplication
. Мы можем запустить его как обычный Java-проект. Из-за того, что Spring Boot встроен в servlet-контейнер, наш веб-проект успешно запускается, что очень удобно.Важно отметить, что запускающий класс Spring Boot должен быть на самом верхнем уровне, иначе некоторые классы могут не быть правильно сканированы, что может привести к различным проблемам. Обычно структура проекта Spring Boot выглядит следующим образом:
com
+- example
+- myproject
+- Application.java
|
+- domain
| +- Customer.java
| +- CustomerRepository.java
|
+- service
| +- CustomerService.java
|
+- controller
| +- CustomerController.java
|
+- config
| +- swaggerConfig.java
|
Application.java
— это запускающий класс проекта.HelloWorldApplication
@SpringBootApplication
public class HelloWorldApplication {
public static void main(String[] args) {
SpringApplication.run(HelloWorldApplication.class, args);
}
}
Когда речь заходит о запуске приложения Spring Boot, не обойти стороной аннотацию @SpringBootApplication
. Код этой аннотации представлен ниже:
package org.springframework.boot.autoconfigure;
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(excludeFilters = {
@Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
@Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) })
public @interface SpringBootApplication {
......
}
package org.springframework.boot;
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Configuration
public @interface SpringBootConfiguration {
```}
Из этого можно сделать вывод, что аннотация @SpringBootApplication
объединяет в себе аннотации @Configuration
, @EnableAutoConfiguration
и @ComponentScan
. Согласно официальной документации Spring Boot, эти аннотации выполняют следующие функции:
@EnableAutoConfiguration
: Включает автоматическую настройку Spring Boot.@ComponentScan
: Сканирует компоненты, помеченные аннотациями @Component
(@Service
, @Controller
), по умолчанию сканирует все классы в пакете, содержащем данный класс.@Configuration
: Разрешает регистрацию дополнительных bean или импорт других конфигурационных классов в контексте.Таким образом, аннотация @SpringBootApplication
представляет собой комбинацию важных аннотаций, что позволяет упростить процесс разработки Spring Boot приложений, избегая необходимости вручную добавлять эти аннотации каждый раз.
После всех этих объяснений, давайте начнем писать "Hello World" на Spring Boot.
Создайте папку controller
и в ней создайте класс с именем HelloWorldController
.
Аннотация @RestController
была добавлена в Spring 4. Если вы разрабатывали RESTful веб-сервисы до версии Spring 4, вам пришлось бы использовать аннотации @Controller
и @ResponseBody
, то есть @Controller
+ @ResponseBody
= @RestController
. Эти аннотации подробно рассматриваются в отдельной статье базового уровня.
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
``````java
@RestController
@RequestMapping("test")
public class HelloWorldController {
@GetMapping("hello")
public String sayHello() {
return "Привет Мир";
}
}
По умолчанию Spring Boot проект использует порт 8080. Если вы хотите изменить порт, достаточно изменить файл конфигурации application.properties
.
src/main/resources/application.properties
server.port=8333
Запустите HelloWorldApplication
. При успешном запуске в консоли будут выведены сообщения, содержащие полезную информацию.
2019-10-03 09:24:47.757 INFO 26326 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8333 (http) with context path ''
Это пример вывода консоли, который показывает, что Spring Boot использует встроенный сервер Tomcat, и проект запущен на порту 8333 с корневым контекстом "/".
Если вы можете получить "Привет Мир" в браузере по адресу http://localhost:8333/test/hello, значит вы успешно завершили эту часть.
В этой статье мы узнали, как создавать проекты на Spring Boot, анализировать структуру проекта, а также изучили аннотацию @SpringBootApplication
. В конце мы создали версию "Привет Мир" на Spring Boot.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )