Зміст:
- Як стартувати WEB-сервер зі Spring Boot за 5 хвабон
- Як підключити базу даних для студентського проекту за 5 хвабон
- Як наповнити h2 базу даних (і трохи Hibernate)
- Як зробити проект лаконічним за допомогою Lombok
- Продовжуємо наповнювати БД
- Як поставити питання БД
- Огляд теми про лямбда висловлювання та streamAPI
- Мапінг відповідей БД
- Трохи про spring context
- Паттерн DTO
- REST-Controller
- Cookie & Headers
- Обробка винятків у контролерах Spring Boot
- Як розмістити Spring Boot проект на Heroku
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<java.version>1.8</java.version>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.0.RELEASE</version>
<relativePath/><!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<properties> - це налаштування, саме тут вказаний рівень Java. <parent> каже, що всі залежності будуть викачані з версією, що відповідає зазначеній (2.2.0.RELEASE). <dependencies> містить той самий spring-boot-starter-web, який стартане. Версія тут не потрібна, тому що вона вказана у <parent> У пакеті java необхідно створити пакет: ru.java.rush . У створеному пакеті створюємо клас Applications і наповнюємо наступним вмістом:
package ru.java.rush;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Applications {
public static void main(String[] args) {
SpringApplication.run(Applications.class);
}
}
Давайте стартанем проект за допомогою зеленої кнопки. Коли у консолі з'являться логи:
2020-12-05 21:05:27.598 INFO 2546 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2020-12-05 21:05:27.601 INFO 2546 --- [ main] ru.java.java_rush.Applications : Started Applications in 0.971 seconds (JVM running for 1.446)
Це буде означати, що TomcatWebServer стартував на порту 8080. Давайте відкриємо браузер і наберемо http://localhost:8080/ Так як ніякої інформації сервер не надсилає, то відобразиться приблизно таке:
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.
Sat Dec 05 21:36:10 MSK 2020
There was an unexpected error (type=Not Found, status=404).
No message available
Але сервер працює: спробуйте зупинити програму, а потім оновити сторінку браузера, і він скаже, що сторінку не знайдено. Ви тільки що написали програму на Java, яка піднімає веб-сервер! Теж без Spring зайняло б часу вдесятеро більше, а нервів — у тисячу! Загалом вивчайте Spring, не бійтеся, поступово рухайтеся до мети, і у вас все вийде! Тепер подивимося, як швидко підключити сюди навчальну базу. Основна мета циклу статей - показати, що не варто боятися пробувати вчитися Spring framework і Spring boot, це не так складно, як може здатися. Однак без знання JavaCore, і основних понять ООП(клас, інтерфейс, успадкування тощо) ваш час буде змарновано. Якщо у вас немає цих знань, не впадайте у відчай, 1 - 2 місяці навчання все виправлять, після того як освоїте повертайтеся сюди. Якщо не знаєте з чого почати, то візьміть це: «Java 8. Посібник для початківців. Герберт Шілдт». Цикл статей познайомить вас з основними сучасними практичними темами щодо Spring framework і Spring boot. Формат кожної статті передбачає один невеликий приклад (або приклад, що переходить на кілька статей), невелике пояснення і посилання на теорію або на інші приклади, так само всіляко заохочується самостійний пошук додаткової інформації на тему. Передбачається, що після закінчення циклу ви повинні будете вміти створити невеликий веб-додаток на основі технологій Spring framework та Spring boot. Для розуміння що таке Spring прочитайте зараз цю просту і зрозумілу статтю: Spring для лінивих. Основи, базові концепції та приклади з кодом. . Якщо шукаєте більш серйозну інформацію на тему, то ознайомтеся з наступним списком: Перекладні та не такі прості для розуміння, статті з Хабра: Що таке Spring Framework? Від впровадження залежностей до Web MVC Spring MVC: створення веб-сайтів і RESTful сервісів Перекладна документація , дуже рекомендую прямо зараз подивитися що там є Книги! Для початку потрібно ними обзавестися, читати, звичайно, слід невеликими порціями: Spring у дії Уоллс Крейг(Spring 3) – рекомендую почати саме з цієї книги, прочитавши лише перший розділ (оскільки інше вже застаріло), можна пошукати в інтернеті У мережі гуляє частковий переклад Spring у дії | Уоллс Крейг (Spring 5) - можна спробувати взяти її за основу, виклад оригінальної книги просте і з прикладами. Хорошим варіантом основного джерела знань є: Spring 5 для професіоналів Козміна Юліана, Харроп Роб – російською мовою, можна пошукати в інтернеті Книга об'ємна та академічна, щоб після прочитання двох сторінок у ній не розчаруватися, ви повинні це розуміти. Особисто я робив так: читав якусь частину в книзі (іноді неодноразово), а потім йшов шукати з цієї теми приклади в інтернеті.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ