Nový Spring Boot projekt s Vaadinem lze vytvořit několika způsoby.
Lze použít web start.spring.io. Jak na to můžete vidět v těchto příspěvcích: Spring Boot JDBC projekt, Spring Boot a Spring Batch vytvoření projektu.
Můžete použít vývojové prostředí STS (založeno na Eclipse) a pomocí File -> New -> Spring Starter Project si nechat projekt vygenerovat. Je to podobné předchozímu způsobu, jen není třeba vygenerovaný zip rozbalovat a importovat do IDE.
Další způsob je použít generátor na stránkách Vaadinu: vaadin.com/start/latest/project-base-spring. Pro stažení vygenerovaného projektu je třeba být přihlášen.
Rozbalit zip -> importovat jako existující Maven projekt -> spustit. Aplikace funguje a na localhost:8080 se zobrazí:
Jak taková aplikace vypadá v kódu? Vstupním bodem je třída s anotací @SpringBootApplication, která může vypadat následovně:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
To co vidíme je třída s anotací @Route. Dříve bychom řekli, že je to view. Ta ve vygenerovaném projektu vypadá následovně:
import com.vaadin.flow.component.button.Button;
import com.vaadin.flow.component.notification.Notification;
import org.springframework.beans.factory.annotation.Autowired;
import com.vaadin.flow.component.orderedlayout.VerticalLayout;
import com.vaadin.flow.router.Route;
@Route
public class MainView extends VerticalLayout {
public MainView(@Autowired MessageBean bean) {
Button button = new Button("Click me",
e -> Notification.show(bean.getMessage()));
add(button);
}
}

