| Semester_Vaadin |
|---|
| 01_StartProject |
| 02_Component |
| 03_Layout |
| 04_Basiklasse |
| 05_Serviceklasse |
| 06_GridSimple |
| 07_Event |
| 08_Exception |
| 09_Grid_Manuell |
| 10_Delete |
| 11_Validation |
| 12_Insert |
@Service ist eine Stereotyp-Annotation in Spring (org.springframework.stereotype.Service). Sie markiert eine Klasse als Service-Komponente (also Teil der Business-Logik). Spring erkennt diese Klasse beim Component Scanning und registriert sie automatisch als Bean im Application Context.
In einer typischen 3-Schichten-Architektur: - Controller / View → nimmt HTTP- oder UI-Anfragen entgegen - Service → enthält die Geschäftslogik - Repository → kommuniziert mit der Datenbank
@Service
public class UrlaubService {
private final ArrayList<Urlaub> data;
public UrlaubService() {
this.data = new ArrayList<>();
}
}
@Service macht ZugService zu einer Spring-Bean
Andere Klassen können ihn einfach mit @Autowired oder im Konstruktor verwenden.
Die Klasse Faker dient dazu, realistisch aussehende, aber zufällige Testdaten zu generieren. Perfekt für Demos, Tests oder Mock-Daten in Projekten (z. B. Vaadin-Formulare, Datenbanken, Unit-Tests).
Typische Faker-Kategorien - Personendaten: name().firstName(), name().lastName(), name().fullName() - Adressen: address().streetAddress(), address().city(), address().country() - Internet: internet().emailAddress(), internet().domainName(), internet().ipV4Address() - Unternehmen: company().name(), company().bs(), company().industry() - Finanzen: finance().creditCard(), finance().iban() - Sonstiges: book().title(), beer().name(), color().name()
public void fillTestData(int anz) {
Urlaub u;
Faker faker;
String[] URLAUBART = {"Strand", "Stadt", "Rundreise", "Shopping", "Safari"};
faker = new Faker();
data.removeAll(data);
for (int i=0; i<anz; i++) {
u = new Urlaub(
faker.address().country(),
faker.address().cityName(),
faker.bool().bool(),
faker.number().randomDouble(2, 900, 4000),
URLAUBART[faker.number().numberBetween(0, URLAUBART.length)]
);
data.add(u);
}
}
Wie immer
class UrlaubServiceTest {
@Test
public void testToString() {
UrlaubService liste = new UrlaubService();
System.out.println(liste.toString());
}
}