Vaadin a VerticalLayout

VerticalLayout má ve výchozím nastavení šířku 100% a výšku nedefinovánu (undefined). To znamená, že na šířku se roztáhne do velikosti okna prohlížeče a výška se přizpůsobí velikosti komponent, které obsahuje. Pokud je výška větší než okno prohlížeče, objeví se posuvník.

final VerticalLayout layout = new VerticalLayout();
Label l1 = new Label("Ahoj");
Label l2 = new Label("Nazdar");
Label l3 = new Label("Čau");

layout.addComponents(l1, l2, l3);

setContent(layout);

vaadin_vertical_layout_01

Pozicování komponent se provádí pomocí metody setComponentAlignment(). Tato metoda se volá až po přidání komponent do layoutu.

Číst dálVaadin a VerticalLayout

Spring Boot a Spring Batch – vytvoření projektu

V tomto příspěvku si vytvoříme Spring Boot projekt se Spring Batch. V dalších číslech pak budeme s tímto projektem pokračovat. Nejdříve si nechte vygenerovat projekt pomocí Spring Initializr. Přidejte závislost na Batch.

spring_boot_batch_initializr

Stáhněte si zip s vygenerovaným projektem, rozbalte jej a naimportujte do Eclipse IDE (File -> Import… -> Maven -> Existing Maven Projects -> najít rozbalený projekt -> Finish). Projekt spusťte (pravým na projekt -> Run As -> Java Application, nebo pokud používáte STS tak Spring Boot App). Měli byste dostat následující chybu:

Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled.
2017-09-05 13:49:01.364 ERROR 14088 --- [           main] o.s.b.d.LoggingFailureAnalysisReporter   :

***************************
APPLICATION FAILED TO START
***************************

Description:

Cannot determine embedded database driver class for database type NONE

O této chybě již byla řeč v tomto příspěvku. Přidejte tedy do pomu závislost:

<dependency>
	<groupId>org.hsqldb</groupId>
	<artifactId>hsqldb</artifactId>
</dependency>

Pokud projekt spustíte nyní, vše by mělo proběhnout v pořádku.

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v1.5.6.RELEASE)

2017-09-05 13:53:11.461  INFO 12504 --- [           main] c.v.s.SpringBootBatchApplication         : Starting SpringBootBatchApplication on W2AB00HL with PID 12504 (C:\Users\jd99517\Documents\STS\WorkspaceSpringBatch\spring_boot_batch\spring_boot_batch\target\classes started by JD99517 in C:\Users\jd99517\Documents\STS\WorkspaceSpringBatch\spring_boot_batch\spring_boot_batch)
2017-09-05 13:53:11.464  INFO 12504 --- [           main] c.v.s.SpringBootBatchApplication         : No active profile set, falling back to default profiles: default
2017-09-05 13:53:11.510  INFO 12504 --- [           main] s.c.a.AnnotationConfigApplicationContext : Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@3bbc39f8: startup date [Tue Sep 05 13:53:11 CEST 2017]; root of context hierarchy
2017-09-05 13:53:12.240  INFO 12504 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2017-09-05 13:53:12.250  INFO 12504 --- [           main] c.v.s.SpringBootBatchApplication         : Started SpringBootBatchApplication in 1.049 seconds (JVM running for 1.64)
2017-09-05 13:53:12.250  INFO 12504 --- [       Thread-2] s.c.a.AnnotationConfigApplicationContext : Closing org.springframework.context.annotation.AnnotationConfigApplicationContext@3bbc39f8: startup date [Tue Sep 05 13:53:11 CEST 2017]; root of context hierarchy
2017-09-05 13:53:12.251  INFO 12504 --- [       Thread-2] o.s.j.e.a.AnnotationMBeanExporter        : Unregistering JMX-exposed beans on shutdown

Pohled pg_stat_activity

Pohled pg_stat_activity ukazuje jaká je aktuální aktivita na databázovém serveru (jaká jsou aktuální připojení k serveru), na které databázi/databázích tato aktivita probíhá, uživatele (který se připojil), status daného připojení a třeba též sql dotaz, který probíhá (v případě, že status je active), nebo poslední dotaz, který na tomto připojení proběhl (pokud je status jiný než active).

select * from pg_stat_activity;

Některé zajímavé sloupce

datid databázové OID
datname název databáze
usename název připojeného uživatele
backend_start čas, kdy se klient připojil do databáze
query_start čas, kdy byl spuštěn sql dotaz
state_change čas, kdy došlo k poslední změně stavu (state)
waiting true, pokud se čeká na zámek (lock)
state stav připojení
query poslední sql dotaz, který proběhl (pokud je stav active tak probíhá)

Zdroje:

 

Konfigurační soubory v PostgreSQL a jejich umístění

Konfigurační soubory a jejich umístění lze jednoduše získat dotazem do pohledu (view) pg_settings.

SELECT name, setting FROM pg_settings WHERE category = 'File Locations';

Ve Windows můžete dostat tento výsledek

name              settings
config_file       C:/Program Files/PostgreSQL/9.4/data/postgresql.conf"
data_directory    C:/Program Files/PostgreSQL/9.4/data"
external_pid_file
hba_file          C:/Program Files/PostgreSQL/9.4/data/pg_hba.conf"
ident_file        C:/Program Files/PostgreSQL/9.4/data/pg_ident.conf"

Na Linuxovém serveru tato umístění

       name        |                 setting
-------------------+------------------------------------------
 config_file       | /etc/postgresql/9.4/main/postgresql.conf
 data_directory    | /var/lib/postgresql/9.4/main
 external_pid_file | /var/run/postgresql/9.4-main.pid
 hba_file          | /etc/postgresql/9.4/main/pg_hba.conf
 ident_file        | /etc/postgresql/9.4/main/pg_ident.conf

Pro krátký popis jednotlivých souborů slouží sloupec short_desc

SELECT name, short_desc FROM pg_settings WHERE category = 'File Locations';
       name        |                    short_desc
-------------------+--------------------------------------------------
 config_file       | Sets the server's main configuration file.
 data_directory    | Sets the server's data directory.
 external_pid_file | Writes the postmaster PID to the specified file.
 hba_file          | Sets the server's "hba" configuration file.
 ident_file        | Sets the server's "ident" configuration file.