Další vlastnosti Springu Moduly Springu. Spring Framework. Pavel Mička. Pavel Mička Spring Framework 1/18

Rozměr: px
Začít zobrazení ze stránky:

Download "Další vlastnosti Springu Moduly Springu. Spring Framework. Pavel Mička. Pavel Mička Spring Framework 1/18"

Transkript

1 Spring Framework Pavel Mička Pavel Mička Spring Framework 1/18

2 Obsah Úvod 1 Úvod 2 Service locator Dependency injection Rozsah platnosti bean 3 4 Pavel Mička Spring Framework 2/18

3 Co je to Spring framework Inversion of control/dependency injection container Open source Convention over configuration POJO based (zabraňuje vendor lock-inu) Nezávislý na konkrétním paradigmatu Snadno integrovatelný s mnoha frameworky a knihovnami Neinvazivní Je kontejnerem sám o sobě (nevyžaduje aplikační server) Lze použít pro desktopové i webové aplikace Pavel Mička Spring Framework 3/18

4 Co je to Spring framework Inversion of control/dependency injection container Open source Convention over configuration POJO based (zabraňuje vendor lock-inu) Nezávislý na konkrétním paradigmatu Snadno integrovatelný s mnoha frameworky a knihovnami Neinvazivní Je kontejnerem sám o sobě (nevyžaduje aplikační server) Lze použít pro desktopové i webové aplikace Pavel Mička Spring Framework 3/18

5 Co je to Spring framework Inversion of control/dependency injection container Open source Convention over configuration POJO based (zabraňuje vendor lock-inu) Nezávislý na konkrétním paradigmatu Snadno integrovatelný s mnoha frameworky a knihovnami Neinvazivní Je kontejnerem sám o sobě (nevyžaduje aplikační server) Lze použít pro desktopové i webové aplikace Pavel Mička Spring Framework 3/18

6 Co je to Spring framework Inversion of control/dependency injection container Open source Convention over configuration POJO based (zabraňuje vendor lock-inu) Nezávislý na konkrétním paradigmatu Snadno integrovatelný s mnoha frameworky a knihovnami Neinvazivní Je kontejnerem sám o sobě (nevyžaduje aplikační server) Lze použít pro desktopové i webové aplikace Pavel Mička Spring Framework 3/18

7 Co je to Spring framework Inversion of control/dependency injection container Open source Convention over configuration POJO based (zabraňuje vendor lock-inu) Nezávislý na konkrétním paradigmatu Snadno integrovatelný s mnoha frameworky a knihovnami Neinvazivní Je kontejnerem sám o sobě (nevyžaduje aplikační server) Lze použít pro desktopové i webové aplikace Pavel Mička Spring Framework 3/18

8 Co je to Spring framework Inversion of control/dependency injection container Open source Convention over configuration POJO based (zabraňuje vendor lock-inu) Nezávislý na konkrétním paradigmatu Snadno integrovatelný s mnoha frameworky a knihovnami Neinvazivní Je kontejnerem sám o sobě (nevyžaduje aplikační server) Lze použít pro desktopové i webové aplikace Pavel Mička Spring Framework 3/18

9 Co je to Spring framework Inversion of control/dependency injection container Open source Convention over configuration POJO based (zabraňuje vendor lock-inu) Nezávislý na konkrétním paradigmatu Snadno integrovatelný s mnoha frameworky a knihovnami Neinvazivní Je kontejnerem sám o sobě (nevyžaduje aplikační server) Lze použít pro desktopové i webové aplikace Pavel Mička Spring Framework 3/18

10 Co je to Spring framework Inversion of control/dependency injection container Open source Convention over configuration POJO based (zabraňuje vendor lock-inu) Nezávislý na konkrétním paradigmatu Snadno integrovatelný s mnoha frameworky a knihovnami Neinvazivní Je kontejnerem sám o sobě (nevyžaduje aplikační server) Lze použít pro desktopové i webové aplikace Pavel Mička Spring Framework 3/18

11 Co je to Spring framework Inversion of control/dependency injection container Open source Convention over configuration POJO based (zabraňuje vendor lock-inu) Nezávislý na konkrétním paradigmatu Snadno integrovatelný s mnoha frameworky a knihovnami Neinvazivní Je kontejnerem sám o sobě (nevyžaduje aplikační server) Lze použít pro desktopové i webové aplikace Pavel Mička Spring Framework 3/18

12 Spring vs. EJB Úvod Pavel Mička Spring Framework 4/18

13 Dependency injection motivace Service locator Dependency injection Rozsah platnosti bean public class BookService { private BookDao bookdao = new BookDaoSqlImpl(); private OwnerDao ownerdao = new OwnerDaoSqlImpl(); private HashProvider hashprovider = new Sha1HashProvider();... } Závislost třídy BookService na implementacích dílčích služeb Výměna Sql implementací DAO objektů by vyžadovala přepis všech inicializací v programu Časově náročné a náchylné k chybám Pavel Mička Spring Framework 5/18

14 Dependency injection motivace Service locator Dependency injection Rozsah platnosti bean public class BookService { private BookDao bookdao = new BookDaoSqlImpl(); private OwnerDao ownerdao = new OwnerDaoSqlImpl(); private HashProvider hashprovider = new Sha1HashProvider();... } Závislost třídy BookService na implementacích dílčích služeb Výměna Sql implementací DAO objektů by vyžadovala přepis všech inicializací v programu Časově náročné a náchylné k chybám Pavel Mička Spring Framework 5/18

15 Dependency injection motivace Service locator Dependency injection Rozsah platnosti bean public class BookService { private BookDao bookdao = new BookDaoSqlImpl(); private OwnerDao ownerdao = new OwnerDaoSqlImpl(); private HashProvider hashprovider = new Sha1HashProvider();... } Závislost třídy BookService na implementacích dílčích služeb Výměna Sql implementací DAO objektů by vyžadovala přepis všech inicializací v programu Časově náročné a náchylné k chybám Pavel Mička Spring Framework 5/18

16 Service locator Úvod Service locator Dependency injection Rozsah platnosti bean public class BookService { private ServiceLocator locator = ServiceLocator.getInstance(); private BookDao bookdao = locator.get("bookdao" ); private OwnerDao ownerdao = locator.get(" ownerdao"); private HashProvider hashprovider = locator.get ("hashprovider");... } Aplikace je nezávislá na konkrétních implementacích služeb Vznikla však závislost na implementaci service locatoru Pavel Mička Spring Framework 6/18

17 Dependency injection I. Service locator Dependency injection Rozsah platnosti bean public class BookService { private BookDao bookdao; private OwnerDao ownerdao; private HashProvider hashprovider; public void setbookdao(bookdao bookdao){ this.bookdao = bookdao; } public void setownerdao(ownerdao ownerdao){...} public void sethashprovider(hashprovider hashprovider){...}... } Kdo bude inicializovat závislosti? Pavel Mička Spring Framework 7/18

18 Dependency injection II. Service locator Dependency injection Rozsah platnosti bean Životní cyklus je řízen externím kontejnerem Kontejner zajistí, že daná instance bude mít nastavenou správnou implementaci Tomuto principu se říká Dependency injection Druhým použitým principem je Inversion of control Programovaná aplikace je v roli knihovny Řízení toku zajišt uje framework Hollywood principle don t call us, we ll call you Pavel Mička Spring Framework 8/18

19 Dependency injection II. Service locator Dependency injection Rozsah platnosti bean Životní cyklus je řízen externím kontejnerem Kontejner zajistí, že daná instance bude mít nastavenou správnou implementaci Tomuto principu se říká Dependency injection Druhým použitým principem je Inversion of control Programovaná aplikace je v roli knihovny Řízení toku zajišt uje framework Hollywood principle don t call us, we ll call you Pavel Mička Spring Framework 8/18

20 Dependency injection II. Service locator Dependency injection Rozsah platnosti bean Životní cyklus je řízen externím kontejnerem Kontejner zajistí, že daná instance bude mít nastavenou správnou implementaci Tomuto principu se říká Dependency injection Druhým použitým principem je Inversion of control Programovaná aplikace je v roli knihovny Řízení toku zajišt uje framework Hollywood principle don t call us, we ll call you Pavel Mička Spring Framework 8/18

21 Dependency injection II. Service locator Dependency injection Rozsah platnosti bean Životní cyklus je řízen externím kontejnerem Kontejner zajistí, že daná instance bude mít nastavenou správnou implementaci Tomuto principu se říká Dependency injection Druhým použitým principem je Inversion of control Programovaná aplikace je v roli knihovny Řízení toku zajišt uje framework Hollywood principle don t call us, we ll call you Pavel Mička Spring Framework 8/18

22 Dependency injection II. Service locator Dependency injection Rozsah platnosti bean Životní cyklus je řízen externím kontejnerem Kontejner zajistí, že daná instance bude mít nastavenou správnou implementaci Tomuto principu se říká Dependency injection Druhým použitým principem je Inversion of control Programovaná aplikace je v roli knihovny Řízení toku zajišt uje framework Hollywood principle don t call us, we ll call you Pavel Mička Spring Framework 8/18

23 Dependency injection II. Service locator Dependency injection Rozsah platnosti bean Životní cyklus je řízen externím kontejnerem Kontejner zajistí, že daná instance bude mít nastavenou správnou implementaci Tomuto principu se říká Dependency injection Druhým použitým principem je Inversion of control Programovaná aplikace je v roli knihovny Řízení toku zajišt uje framework Hollywood principle don t call us, we ll call you Pavel Mička Spring Framework 8/18

24 Dependency injection II. Service locator Dependency injection Rozsah platnosti bean Životní cyklus je řízen externím kontejnerem Kontejner zajistí, že daná instance bude mít nastavenou správnou implementaci Tomuto principu se říká Dependency injection Druhým použitým principem je Inversion of control Programovaná aplikace je v roli knihovny Řízení toku zajišt uje framework Hollywood principle don t call us, we ll call you Pavel Mička Spring Framework 8/18

25 XML-based injection Úvod Service locator Dependency injection Rozsah platnosti bean <bean id="mydatasource" class="org.apache.commons. dbcp.basicdatasource" destroy-method="close"> <property name="driverclassname" value="com.mysql.jdbc.driver"/> <property name="url" value="jdbc:mysql:// localhost:3306/mydb"/> <property name="username" value="root"/> <property name="password" value="masterkaoli"/> </bean> Beana dané třídy má pro dané vlastnosti setter Odkazovat lze jak hodnoty, tak kolekce, tak jiné Spring beany Umožňuje ze od jedné třídy vytvořit mnoho různých instancí Setter injection je používána zejména pro konfiguraci aplikace a integraci dalších technologíı Pavel Mička Spring Framework 9/18

26 XML-based injection Úvod Service locator Dependency injection Rozsah platnosti bean <bean id="mydatasource" class="org.apache.commons. dbcp.basicdatasource" destroy-method="close"> <property name="driverclassname" value="com.mysql.jdbc.driver"/> <property name="url" value="jdbc:mysql:// localhost:3306/mydb"/> <property name="username" value="root"/> <property name="password" value="masterkaoli"/> </bean> Beana dané třídy má pro dané vlastnosti setter Odkazovat lze jak hodnoty, tak kolekce, tak jiné Spring beany Umožňuje ze od jedné třídy vytvořit mnoho různých instancí Setter injection je používána zejména pro konfiguraci aplikace a integraci dalších technologíı Pavel Mička Spring Framework 9/18

27 XML-based injection Úvod Service locator Dependency injection Rozsah platnosti bean <bean id="mydatasource" class="org.apache.commons. dbcp.basicdatasource" destroy-method="close"> <property name="driverclassname" value="com.mysql.jdbc.driver"/> <property name="url" value="jdbc:mysql:// localhost:3306/mydb"/> <property name="username" value="root"/> <property name="password" value="masterkaoli"/> </bean> Beana dané třídy má pro dané vlastnosti setter Odkazovat lze jak hodnoty, tak kolekce, tak jiné Spring beany Umožňuje ze od jedné třídy vytvořit mnoho různých instancí Setter injection je používána zejména pro konfiguraci aplikace a integraci dalších technologíı Pavel Mička Spring Framework 9/18

28 XML-based injection Úvod Service locator Dependency injection Rozsah platnosti bean <bean id="mydatasource" class="org.apache.commons. dbcp.basicdatasource" destroy-method="close"> <property name="driverclassname" value="com.mysql.jdbc.driver"/> <property name="url" value="jdbc:mysql:// localhost:3306/mydb"/> <property name="username" value="root"/> <property name="password" value="masterkaoli"/> </bean> Beana dané třídy má pro dané vlastnosti setter Odkazovat lze jak hodnoty, tak kolekce, tak jiné Spring beany Umožňuje ze od jedné třídy vytvořit mnoho různých instancí Setter injection je používána zejména pro konfiguraci aplikace a integraci dalších technologíı Pavel Mička Spring Framework 9/18

29 Constructor injection Úvod Service locator Dependency injection Rozsah platnosti bean <bean id="exmplbean" class="examples.exmplbean"> <constructor-arg> <ref bean="anotherexamplebean"/> </constructor-arg> <constructor-arg ref="yetanotherbean"/> <constructor-arg type="int" value="1"/> </bean> Obdoba setter injection, která používá konstruktor pro nastavení vlastností Nejméně používaná Pavel Mička Spring Framework 10/18

30 Metadata injection Úvod Service locator Dependency injection Rozsah public class MovieRecommender private ApplicationContext context; } public MovieRecommender() {}... Nejčastěji používaná pro třídy aplikace Omezuje redundanci kód konfigurace Pavel Mička Spring Framework 11/18

31 Metadata injection Úvod Service locator Dependency injection Rozsah public class MovieRecommender private ApplicationContext context; } public MovieRecommender() {}... Nejčastěji používaná pro třídy aplikace Omezuje redundanci kód konfigurace Pavel Mička Spring Framework 11/18

32 Rozsahy platnosti bean Service locator Dependency injection Rozsah platnosti bean Kontejner zajišt uje omezenou platnost jednotlivých bean (scope) Singleton jedna instance na aplikaci (výchozí platnost) Prototype vždy nová instance Session instance vázaná na HTTP session (web) Request instance vázaná na HTTP request (web) Spring umožňuje definici vlastních rozsahů Typicky použito ve spolupráci s webovým frameworkem (JSF2 flash scope...) Pavel Mička Spring Framework 12/18

33 @Configurable I. Občas není možné, aby Spring spravoval životní cyklus beany, ale přesto vyžadujeme injekci závislostí Integrace frameworků, které na to nejsou apriori připraveny JPA entity jsou vytvářeny JPA frameworkem a Spring proto o jejich existenci neví Dle OOP paradigmatu je objekt množina dat a operací (operace obvykle vyžadují spolupráci více objektů) Problém řeší která označuje objekty mimo rozsah Spring kontejneru, které mají být injektovány Realizováno pomocí instrumentace bytekódu (aspect weaving) Load-Time weaving (java agent) Compile-time weaving (aspect compiler) Pavel Mička Spring Framework 13/18

34 @Table(name="users") public class User nullable=false) private String nullable=false) private String private transient HashProvider provider;... public void setpassword(string password) { this.password = provider.computehash( password + salt + "/* long string */"); } } Pavel Mička Spring Framework 14/18

35 Deklarativní demarkace transakcí public interface UserService public List<UserDTO> public UserDTO saveuser(userdto user, String public UserDTO getuserbyusername(string public void deleteuser(long id);... } Transakce mohou být deklarovány pomocí anotací Transakční API je nezávislé na konkrétní implementaci Pavel Mička Spring Framework 15/18

36 Deklarativní zabezpečení public interface UserService public UserDTO save(userdto userdto, String password, Boolean isadmin, Boolean iseditor );... public void removebyid(long id); Autorizace přístupu k metodám pomocí anotací Pavel Mička Spring Framework 16/18

37 Vybrané moduly Springu Spring Core jádro frameworku Spring AOP podpora aspektového programování Spring ORM integrace s JPA Spring MVC MVC webový framework Spring Test podpora testování Spring Security zabezpečení aplikace Spring Social podpora sociálních sítí Spring Integration integrace aplikací ve velkém Pavel Mička Spring Framework 17/18

38 Vybrané moduly Springu Spring Core jádro frameworku Spring AOP podpora aspektového programování Spring ORM integrace s JPA Spring MVC MVC webový framework Spring Test podpora testování Spring Security zabezpečení aplikace Spring Social podpora sociálních sítí Spring Integration integrace aplikací ve velkém Pavel Mička Spring Framework 17/18

39 Vybrané moduly Springu Spring Core jádro frameworku Spring AOP podpora aspektového programování Spring ORM integrace s JPA Spring MVC MVC webový framework Spring Test podpora testování Spring Security zabezpečení aplikace Spring Social podpora sociálních sítí Spring Integration integrace aplikací ve velkém Pavel Mička Spring Framework 17/18

40 Vybrané moduly Springu Spring Core jádro frameworku Spring AOP podpora aspektového programování Spring ORM integrace s JPA Spring MVC MVC webový framework Spring Test podpora testování Spring Security zabezpečení aplikace Spring Social podpora sociálních sítí Spring Integration integrace aplikací ve velkém Pavel Mička Spring Framework 17/18

41 Vybrané moduly Springu Spring Core jádro frameworku Spring AOP podpora aspektového programování Spring ORM integrace s JPA Spring MVC MVC webový framework Spring Test podpora testování Spring Security zabezpečení aplikace Spring Social podpora sociálních sítí Spring Integration integrace aplikací ve velkém Pavel Mička Spring Framework 17/18

42 Vybrané moduly Springu Spring Core jádro frameworku Spring AOP podpora aspektového programování Spring ORM integrace s JPA Spring MVC MVC webový framework Spring Test podpora testování Spring Security zabezpečení aplikace Spring Social podpora sociálních sítí Spring Integration integrace aplikací ve velkém Pavel Mička Spring Framework 17/18

43 Vybrané moduly Springu Spring Core jádro frameworku Spring AOP podpora aspektového programování Spring ORM integrace s JPA Spring MVC MVC webový framework Spring Test podpora testování Spring Security zabezpečení aplikace Spring Social podpora sociálních sítí Spring Integration integrace aplikací ve velkém Pavel Mička Spring Framework 17/18

44 Vybrané moduly Springu Spring Core jádro frameworku Spring AOP podpora aspektového programování Spring ORM integrace s JPA Spring MVC MVC webový framework Spring Test podpora testování Spring Security zabezpečení aplikace Spring Social podpora sociálních sítí Spring Integration integrace aplikací ve velkém Pavel Mička Spring Framework 17/18

45 Zdroje a literatura SpringSource Spring Framework dokumentace spring-framework-reference/html/ Spring 3 a Maven obtaining-spring-3-artifacts-with-maven/ Pavel Mička Spring Framework 18/18

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV) Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Enterprise Java

Více

Spring framework 2.0. Roman Pichlík http://sweb.cz/pichlik/ CZJUG http://java.cz/jug

Spring framework 2.0. Roman Pichlík http://sweb.cz/pichlik/ CZJUG http://java.cz/jug Spring framework 2.0 Spring framework 2.0 Roman Pichlík http://sweb.cz/pichlik/ Nejdůležitejší slide http://springframework.org/ http://www.springframework.org/documen Historie 2002 - Rod Johnson kniha

Více

Spring Framework Handout

Spring Framework Handout Spring Framework Handout Martin Ledvinka martin.ledvinka@fel.cvut.cz 25. listopadu 2015 1 Spring Framework Spring framework vznikl v roce 2002 jako alternativa tehdejší težkopádné enterprise verze Javy

Více

KIV/PIA 2013 Jan Tichava

KIV/PIA 2013 Jan Tichava KIV/PIA 2013 Jan Tichava Java EE JSF, PrimeFaces Spring JPA, EclipseLink Java Platform, Enterprise Edition Persistence Zobrazovací vrstva Interakce aplikací Deployment Java Persistence API Enterprise

Více

Základy Guice Vazby Scopes. Google Guice. základní seznámení s frameworkem Google Guice

Základy Guice Vazby Scopes. Google Guice. základní seznámení s frameworkem Google Guice základní seznámení s frameworkem Lukáš Koĺısko lkolisko@gmail.com 26.11.2007 Cíle prezentace Cíle prezentace To DI, or not to DI Varianty řešení DI Výhody a nevýhody Cílem prezentace je ukázat, že... v

Více

Technology Entry form Entry up-to-date? Internal links Faulty internal Possible internal links

Technology Entry form Entry up-to-date? Internal links Faulty internal Possible internal links Technology Entry form Entry up-to-date? Internal links Faulty internal Possible internal links links Apache Struts Article with examples JSTL a EL (into JSP) MVC, webové aplikace, JSP Bezpečnost ve webových

Více

Vybrané partie z jazyka Java Spring a Enterprise JavaBeans (EJB)

Vybrané partie z jazyka Java Spring a Enterprise JavaBeans (EJB) Vybrané partie z jazyka Java Spring a Enterprise JavaBeans (EJB) Michal Papež Spring & EJB Program: K čemu je to dobré, historie, odlišnosti Spring 2.5 EJB 3.0 K čemu jsou? 1 Vývoj velkých podnikových

Více

IoC/DI. Tomáš Herceg Microsoft MVP (ASP.NET) www.dotnetcollege.cz

IoC/DI. Tomáš Herceg Microsoft MVP (ASP.NET) www.dotnetcollege.cz IoC/DI Tomáš Herceg Microsoft MVP (ASP.NET) www.dotnetcollege.cz SOLID 5 pravidel pro testovatelný kód Na netestovatelném kódu se IoC/DI používá špatně SOLID Single Responsibility Principle Každá třída

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1, Miroslav Beneš 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

NOVINKY V JEE EJB 3.1. Zdeněk Troníček Fakulta informačních technologií ČVUT v Praze

NOVINKY V JEE EJB 3.1. Zdeněk Troníček Fakulta informačních technologií ČVUT v Praze NOVINKY V JEE EJB 3.1 Zdeněk Troníček Fakulta informačních technologií ČVUT v Praze PROGRAM Seznámení s Java Enterprise Edition (JEE) Enterprise Java Beans (EJB) Novinky v EJB 3.1 2 JAVA EDITIONS Java

Více

Nástroje a frameworky pro automatizovaný vývoj. Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/

Nástroje a frameworky pro automatizovaný vývoj. Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Nástroje a frameworky pro automatizovaný vývoj Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Proces vývoje webové aplikace Předepsaná adresářová struktura. Kompilace zdrojových kódů.

Více

Návrhové vzory Tvorba objektů

Návrhové vzory Tvorba objektů Objektové modelování, AD7B36OMO Návrhové vzory Tvorba objektů ČÁST B Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze https://edux.feld.cvut.cz/courses/ad7b36omo Přednáška

Více

PA165: Úvod do Java EE. Petr Adámek

PA165: Úvod do Java EE. Petr Adámek PA165: Úvod do Java EE Petr Adámek Obsah přednášky Organizace předmětu Formy výuky Hodnocení Osnova Java EE aplikace Architektury Java EE aplikací Technologie Java EE Základní koncepty PA165: Úvod do Java

Více

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU 8.6.2011 Technologie Java Enterprise Edition Přemek Brada, KIV ZČU 8.6.2011 Přehled tématu Motivace a úvod Infrastruktura pro velké Java aplikace (Java základní přehled) Části třívrstvé struktury servlety, JSP

Více

Podpora aplikační logiky v J2EE aplikačních rámcích

Podpora aplikační logiky v J2EE aplikačních rámcích Podpora aplikační logiky v J2EE aplikačních rámcích Petr Matulík, Tomáš Pitner Masarykova univerzita v Brně, Fakulta informatiky Abstrakt. Prostředí J2EE (Java2 Enterprise Edition) je dobrou volbou všude

Více

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Web Jaroslav Nečas Obsah přednášky Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Co to je web HTTP protokol bezstavový GET POST HEAD Cookies Session HTTPS

Více

Web Services na SOAP

Web Services na SOAP Web Services Používají HTTP Existují dvě varianty: Služby postavené na protokolu SOAP Java standard pro vytváření : JAX-WS RESTfull služby Java standard pro vytváření : JAX-RS Web Services na SOAP Žádost

Více

UJO Framework. revoluční architektura beans. verze 0.80 http://ujoframework.org/

UJO Framework. revoluční architektura beans. verze 0.80 http://ujoframework.org/ UJO Framework revoluční architektura beans verze 0.80 http://ujoframework.org/ Pavel Pone(c), září 2008 Historie rok 2004 upravené objekty z frameworku Cayenne nevýhodou byla špatná typová kontrola rok

Více

public static void main(string[] args) { System.out.println(new Main().getClass().getAnnotation(Greet.class).text());

public static void main(string[] args) { System.out.println(new Main().getClass().getAnnotation(Greet.class).text()); Anotace a Hibernate Aleš Nosek, Ondřej Vadinský, Daniel Krátký Anotace v Javě Anotace jsou novinkou v Javy verze 5. Anotace umožňují doplnit kód Javy o dodatečné informace. Zapisují se přímo do zdrojového

Více

Zabezpečení webové vrstvy a EJB projektu Část nastavení specifická pro Glassfish, část dána Java EE

Zabezpečení webové vrstvy a EJB projektu Část nastavení specifická pro Glassfish, část dána Java EE X33EJA Security, Realms Zabezpečení webové vrstvy a EJB projektu Část nastavení specifická pro Glassfish, část dána Java EE 'web.xml' 'glassfish-web.xml' dále nutno nastavit realm v admin. konzoli GF 1

Více

(Enterprise) JavaBeans. Lekce 7

(Enterprise) JavaBeans. Lekce 7 (Enterprise) JavaBeans Lekce 7 JavaBeans vs. Enterprise JavaBeans (EJB) JavaBeans technologie: jedná se o tzv. komponentní architekturu určenou pro JSE platformu určená pro tvorbu JSE GUI programů pomocí

Více

Softwarové komponenty a Internet

Softwarové komponenty a Internet Softwarové komponenty a Internet Doc. Dr. Ing. Miroslav Beneš Katedra informatiky FEI VŠB-TU Ostrava Miroslav.Benes@vsb.cz Obsah přednášky Motivace Vývoj přístupů k tvorbě programů Definice komponenty

Více

Úvod. Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne.

Úvod. Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne. Úvod Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne. Organizace předmětu Materiály k předmětu -Web stránky: http://cw.felk.cvut.cz/doku.php/courses/x33eja/start

Více

Enterprise Java Beans 3.0

Enterprise Java Beans 3.0 Enterprise Java Beans 3.0 Lukáš Zapletal liberix.cz EJB 3.0 a JPA 1.0 JavaBean - vysvětlení pojmu Java třída s get/is a set metodami má tedy vlastnosti žádné další podmínky nejsou kladeny JavaBean je tedy

Více

GWT pro pokročilé. MoroSystems, s.r.o. Pavel Klobása. Senior Java Developer.

GWT pro pokročilé. MoroSystems, s.r.o. Pavel Klobása. Senior Java Developer. GWT pro pokročilé MoroSystems, s.r.o. Pavel Klobása Senior Java Developer pavel.klobasa@morosystems.cz Obsah Co je to GWT? Návrhové vzory a užitečné knihovny Komunikace klient - server ExtGWT GWT+Spring

Více

Multiplatformní osobní organizér v jazyce Java

Multiplatformní osobní organizér v jazyce Java Mendelova zemědělská a lesnická univerzita v Brně Provozně ekonomická fakulta Multiplatformní osobní organizér v jazyce Java Bakalářská práce Vedoucí práce: Ing. Petr Jedlička, Ph.D Petr Gola Brno 2009

Více

JAVA. Aspekty (AOP) AspectJ

JAVA. Aspekty (AOP) AspectJ JAVA Aspekty (AOP) AspectJ AOP Aspect-oriented programming separation of concerns concern ~ část kódu programu související s nějakou funkčností většinou se chápe jako rozšíření OOP řeší problém, že ne

Více

[ASP].NET Core Demystified. Miroslav Holec. Konzultant a lektor [ASP].NET Core.

[ASP].NET Core Demystified. Miroslav Holec. Konzultant a lektor [ASP].NET Core. [ASP].NET Core 2.1-2.2 Demystified Miroslav Holec Konzultant a lektor [ASP].NET Core mirek@miroslavholec.cz www.miroslavholec.cz Miroslav Holec Nezávislý konzultant a lektor [ASP].NET Core - školím ve

Více

Jak na IoC/DI kontejnery

Jak na IoC/DI kontejnery Jak na IoC/DI kontejnery aneb píšeme aplikace pořádně Tomáš Herceg Chief Software Architect @ Microsoft ASP.NET MVP http://www.herceg.cz, http://www.vbnet.cz SOLID 5 pravidel pro testovatelný kód Na netestovatelném

Více

Semináˇr Java X J2EE Semináˇr Java X p.1/23

Semináˇr Java X J2EE Semináˇr Java X p.1/23 Seminář Java X J2EE Seminář Java X p.1/23 J2EE Složitost obchodních aplikací robusní, distribuované, spolehlivé aplikace s transakcemi na straně serveru, klientské aplikace co nejjednodušší Snaha : Návrh,

Více

Spring portfolio. Tomáš Krátký tomas.kratky@profinit.eu http://www.profinit.eu

Spring portfolio. Tomáš Krátký tomas.kratky@profinit.eu http://www.profinit.eu Spring portfolio Tomáš Krátký tomas.kratky@profinit.eu http://www.profinit.eu Obsah Když se řekne Spring Představení ukázkové aplikace Využití Spring portfolia Spring Framework (core) Spring Web Services

Více

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod. Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání

Více

SPECIFIKACE PŘEDMĚTU PLNĚNÍ

SPECIFIKACE PŘEDMĚTU PLNĚNÍ SPECIFIKACE PŘEDMĚTU PLNĚNÍ pro zakázku, na kterou se nevztahuje postup pro zadávací řízení dle zákona č. 134/2016 Sb., o zadávání veřejných zakázek Název zakázky IT Vzdělávání zaměstnanců UBK s.r.o. Základní

Více

Co je nového v Java EE 6

Co je nového v Java EE 6 Co je nového v Java EE 6 Petr Adámek Disclaimer Ačkoliv jsem snažil tuto prezentaci připravit co nejpečlivěji, může obsahovat nepřesnosti nebo dokonce nepravdivé informace. S popisovanými novinkami nemám

Více

1. Distribuce Javy. 2. Vlastnosti J2EE aplikace. 3. Fyzická architektura J2EE aplikace. Distribuce Javy se liší podle jejího zamýšleného použití:

1. Distribuce Javy. 2. Vlastnosti J2EE aplikace. 3. Fyzická architektura J2EE aplikace. Distribuce Javy se liší podle jejího zamýšleného použití: Architektura webové aplikace, funkce jednotlivých vrstev, životní cyklus standardizovaných komponent Java EE, Servlety, JSP, frameworky, návrhové vzory 1. Distribuce Javy Distribuce Javy se liší podle

Více

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV) Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Enterprise Java

Více

Vhodnost nasazení jednotlivých webových architektur, sdílení dat, perzistence, webové služby a REST, asynchronnost, messaging

Vhodnost nasazení jednotlivých webových architektur, sdílení dat, perzistence, webové služby a REST, asynchronnost, messaging Vhodnost nasazení jednotlivých webových architektur, sdílení dat, perzistence, webové služby a REST, asynchronnost, messaging 1. Vhodnost nasazení jednotlivých webových architektur - toto je podle Klímy

Více

OSGi. Aplikační programování v Javě (BI-APJ) - 6 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha

OSGi. Aplikační programování v Javě (BI-APJ) - 6 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha OSGi Aplikační programování v Javě (BI-APJ) - 6 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Více

Technologie Java. Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/

Technologie Java. Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Technologie Java Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Trocha historie Java vznikla v roce 1995 jak minimalistický programovací jazyk (211 tříd). Syntaxe vycházela z C/C++. V

Více

HMI * nad webovými technologiemi

HMI * nad webovými technologiemi HMI * nad webovými technologiemi Cesta vývojářů webových aplikací do nitra automobilu 6.11.2016 *) Human Machine Interface Osoby a obsazení! Štěpán Mík (java, backend)! Ivan Čentéš (frontend)! Etnetera

Více

Platformy / technologie. Jaroslav Žáček

Platformy / technologie. Jaroslav Žáček Platformy / technologie Jaroslav Žáček jaroslav.zacek@osu.cz Které platformy / technologie znáte Java Trocha historie Java EE Java EE 5 Java EE 6 Pruning, Extensibility Ease of Dev, CDI, JAX-RS Java EE

Více

PLATFORMY / TECHNOLOGIE JAROSLAV ŽÁČEK

PLATFORMY / TECHNOLOGIE JAROSLAV ŽÁČEK PLATFORMY / TECHNOLOGIE JAROSLAV ŽÁČEK JAROSLAV.ZACEK@OSU.CZ KTERÉ PLATFORMY / TECHNOLOGIE ZNÁTE JAVA TROCHA HISTORIE JAVA EE Java EE 7! Java EE 6 Java EE 5 J2EE 1.4 J2EE 1.3 J2EE 1.2 Servlet, JSP, EJB,

Více

Ruby on Rails: zapomeňte na Javu

Ruby on Rails: zapomeňte na Javu Ruby on Rails: zapomeňte na Javu Jiří Hradil Kyberie s.r.o. jirka@hradil.cz http://www.hradil.cz ` 28.2.2011, CZJUG, Praha Java sága, persistence I. Kyberie, rok 2004 Cíl: persistence pro Java webové aplikace

Více

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV) Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Enterprise Java

Více

Google Web Toolkit. Martin Šurkovský, SUR března Katedra informatiky

Google Web Toolkit. Martin Šurkovský, SUR března Katedra informatiky Google Web Toolkit Martin Šurkovský, SUR096 Vysoká škola Báňská - Technická univerzita Ostrava Katedra informatiky 29. března 2010 Martin Šurkovský, SUR096 (VŠB - TUO) Google Web Toolkit 29. března 2010

Více

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV) Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Enterprise Java

Více

Session Beans. Petr Aubrecht CA. Vtipy budou tentokrát o krizi:

Session Beans. Petr Aubrecht CA. Vtipy budou tentokrát o krizi: Session Beans Petr Aubrecht CA Vtipy budou tentokrát o krizi: Resty z minula -2 slidy s anotacemi servletů -JPA, slide 42, kaskády Anotace v Servletech 3.0 - Netřeba zápis do web.xml @WebServlet(name="CalculatorServlet",

Více

Využití EJB 3.0 při tvorbě podnikových aplikací

Využití EJB 3.0 při tvorbě podnikových aplikací Univerzita Hradec Králové Fakulta informatiky a managementu Katedra informatiky a kvantitativních metod Využití EJB 3.0 při tvorbě podnikových aplikací Diplomová práce Autor: Studijní obor: Bc. Tomáš Olívka

Více

Architektura aplikace

Architektura aplikace Architektura aplikace MARBES-JIRA plugin Tým: GRSS Členové: František Schneider Jaroslav Ráb Lukáš Gemela Jaromír Staněk Upravil Verze dokumentu Datum F. Schneider 1.0 25.3.2012 F. Schneider 2.0 25.4.2012

Více

Platforma Java. Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. Petr Krajča (UP) KMI/PJA: Seminář V. 27. říjen, / 15

Platforma Java. Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. Petr Krajča (UP) KMI/PJA: Seminář V. 27. říjen, / 15 Platforma Java Objektově relační mapování II Petr Krajča Katedra informatiky Univerzita Palackého v Olomouci Petr Krajča (UP) KMI/PJA: Seminář V. 27. říjen, 2016 1 / 15 Dotazování vyhledání objektu podle

Více

Úvod do Entity Frameworku

Úvod do Entity Frameworku PV178 Úvod do Entity Frameworku Mgr. David Gešvindr MVP MSP MCSD: Windows Store MCSE: Data Platform gesvindr@mail.muni.cz Osnova 1. Úvod do Entity Frameworku 2. Návrh databáze s využitím Entity Framework

Více

Quo vadis programování? Automatizace vyhodnocování studentských úloh

Quo vadis programování? Automatizace vyhodnocování studentských úloh Vaše jistota na trhu IT Quo vadis programování? Automatizace vyhodnocování studentských úloh Rudolf PECINOVSKÝ rudolf@pecinovsky.cz Vladimír Oraný vladimir.orany@gmail.com Vaše jistota na trhu IT Obsah

Více

Technologie JavaBeans

Technologie JavaBeans Technologie JavaBeans doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Historie Komponentový model Typy komponent

Více

Principy objektově orientovaného programování

Principy objektově orientovaného programování Principy objektově orientovaného programování Třídy a objekty doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz C E T

Více

Jalapeño: pekelně ostrá Java persistence v Caché. Daniel Kutáč Senior Sales Engineer

Jalapeño: pekelně ostrá Java persistence v Caché. Daniel Kutáč Senior Sales Engineer Jalapeño: pekelně ostrá Java persistence v Caché Daniel Kutáč Senior Sales Engineer Co je Jalapeño Pár slov ředitele vývoje software Klikni! Tak tedy, o čem dnes budeme mluvit Architektura Instalace Anotace

Více

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV) Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Enterprise Java

Více

X33EJA Web Services. Martin Ptáček, KOMIX s.r.o.

X33EJA Web Services. Martin Ptáček, KOMIX s.r.o. X33EJA Web Services Martin Ptáček, KOMIX s.r.o. ptacek@komix.cz Copyright 2007 KOMIX Copyright s.r.o. 2007 KOMIX s.r.o. 1. Obsah Historie Co jsou Web Services? Co je to SOA? JAX-WS (Java API for XML Web

Více

Nové předměty z oblasti softwarového vývoje na FIM UHK

Nové předměty z oblasti softwarového vývoje na FIM UHK Nové předměty z oblasti softwarového vývoje na FIM UHK Tomáš Kozel Katedra informatiky a kvantitativních metod Fakulta informatiky a managementu Univerzity Hradec Králové tomas.kozel@uhk.cz Abstrakt V

Více

NetBeans platforma. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

NetBeans platforma. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti NetBeans platforma Aplikační programování v Javě (BI-APJ) - 7 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha Evropský sociální fond Praha & EU: Investujeme

Více

Internetové technologie na platformě JAVA. Miroslav Hrúz

Internetové technologie na platformě JAVA. Miroslav Hrúz České vysoké učení technické v Praze Fakulta elektrotechnická ČVUT FEL katedra počítačů Bakalářská práce Internetové technologie na platformě JAVA Miroslav Hrúz Vedoucí práce: Ing. Andrej Zachar Studijní

Více

Java a Caché IV: Manipulace s objekty

Java a Caché IV: Manipulace s objekty 1 z 6 11.1.2007 11:13 přihlašovací jméno heslo Registrace Přihlásit články odkazy aktuality CZJUG konference o portálu přidejte se o nás Vyhledávání Text: najdi Oborový filtr J2ME J2SE J2EE Enterprise

Více

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007 Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků

Více

SOAP & REST služby. Rozdíly, architektury, použití

SOAP & REST služby. Rozdíly, architektury, použití SOAP & REST služby Rozdíly, architektury, použití Obsah Srovnání SOAP a REST služeb Service Oriented Architecture Microservice Architecture Příklady použití Nástroje pro vývoj SOAP a REST služeb (v Java)

Více

1 - Úvod do platformy.net. IW5 - Programování v.net a C#

1 - Úvod do platformy.net. IW5 - Programování v.net a C# 1 - Úvod do platformy.net IW5 - Programování v.net a C# Strana 1 Obsah přednášky Objektově orientované paradigma.net Framework Základní rysy jazyka C# Strana 2 Objektová orientace C# implementuje základní

Více

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML Obsah přednášky Webové služby a XML Miroslav Beneš Co jsou to webové služby Architektura webových služeb SOAP SOAP a Java SOAP a PHP SOAP a C# Webové služby a XML 2 Co jsou to webové služby rozhraní k

Více

Snadný vývoj webových aplikací s Nette. Lukáš Jelínek

Snadný vývoj webových aplikací s Nette. Lukáš Jelínek Snadný vývoj webových aplikací s Nette Lukáš Jelínek Proč framework? ušetří spoustu práce (implementace, úpravy) vývoj = co udělat, ne jak to udělat bezpečnost štábní kultura prostředky pro ladění podpora

Více

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE

Více

Databáze v Java aplikacích, JPA Handout

Databáze v Java aplikacích, JPA Handout Databáze v Java aplikacích, JPA Handout Martin Ledvinka martin.ledvinka@fel.cvut.cz 11. listopadu 2015 1 Přístup k databázím v Javě Jednou z mnoha výhod (a občas nevýhodou) platformy Java je její zaměření

Více

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INTELIGENTNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS SROVNÁNÍ NÁSTROJŮ

Více

Platformy / technologie. Jaroslav Žáček jaroslav.zacek@osu.cz

Platformy / technologie. Jaroslav Žáček jaroslav.zacek@osu.cz Platformy / technologie Jaroslav Žáček jaroslav.zacek@osu.cz Které platformy / technologie znáte Java Java Java EE 5 Java EE 6 Pruning, Extensibility Ease of Dev, CDI, JAX-RS Java EE 7! JMS 2, Batch, Concurrency,

Více

Kurz Databáze. Přechod na SQL server. Obsah. Vytvoření databáze. Lektor: Doc. Ing. Radim Farana, CSc.

Kurz Databáze. Přechod na SQL server. Obsah. Vytvoření databáze. Lektor: Doc. Ing. Radim Farana, CSc. Kurz Databáze Přechod na SQL server Lektor: Doc. Ing. Radim Farana, CSc. Obsah Vytvoření databáze. Konverze databáze z MS-Access na SQL Server. Konverzní předpis pro pozdější použití. Definice schématu

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2006 2008 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

IRAE 07/08 Přednáška č. 1

IRAE 07/08 Přednáška č. 1 Úvod do předmětu OOP Objekt Proč OOP? Literatura, osnova předmětu viz. cvičení Základní prvek OOP sw inženýrství = model reálných objektů (věcí) člověk, auto, okno (ve windows), slovník, = model abstraktní

Více

Základy objektové orientace I. Únor 2010

Základy objektové orientace I. Únor 2010 Seminář Java Základy objektové orientace I Radek Kočí Fakulta informačních technologií VUT Únor 2010 Radek Kočí Seminář Java Základy OO (1) 1/ 20 Téma přednášky Charakteristika objektově orientovaných

Více

Vývoj multiplatformní aplikace v Qt

Vývoj multiplatformní aplikace v Qt Vývoj multiplatformní aplikace v Qt z pohledu vývoje Datovky Karel Slaný karel.slany@nic.cz 13. 11. 2015 Obsah Co je Qt Nástroje Qt Koncepty Qt Problémy při vývoji Datovky Balíčkování aplikace Datovka

Více

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace Připravil: Ing. Jiří Lýsek, Ph.D. Verze: 26. 2. 2019 Webové aplikace PHP OOP, PHP a databáze, migrace DB, ORM, šablony, MVC/MVP, PHP frameworky strana 2 PHP skriptovací jazyk dynamicky typovaný interpret

Více

Jak správně na Hibernate. Martin Hlavatý

Jak správně na Hibernate. Martin Hlavatý Jak správně na Hibernate Martin Hlavatý Úvod Co je Hibernate? Hibernate je ORM! Agenda 18:00 18:10 ORM základní koncepty, historie, vymezení 18:10 18:25 Plain Old JDBC 18:25 18:50 Základy Hibernate 18:50

Více

Dědění, polymorfismus

Dědění, polymorfismus Programování v jazyce C/C++ Ladislav Vagner úprava Pavel Strnad Dědění. Polymorfismus. Dnešní přednáška Statická a dynamická vazba. Vnitřní reprezentace. VMT tabulka virtuálních metod. Časté chyby. Minulá

Více

Servlety a JSP. Petr Adámek, petr.adamek@ibacz.eu

Servlety a JSP. Petr Adámek, petr.adamek@ibacz.eu Servlety a JSP Petr Adámek, petr.adamek@ibacz.eu Úvod Rekapitulace vstupních znalostí Standardy Nástroje (Běhové prostředí, nástroje pro vývoj) Servlety JSP JSP značky EL (Expression Language) Internacionalizace

Více

FG Forrest, a.s. Jan Novotný. Automatické testování v praxi 2. www.fg.cz

FG Forrest, a.s. Jan Novotný. Automatické testování v praxi 2. www.fg.cz FG Forrest, a.s. Jan Novotný Automatické testování v praxi 2 Dependency injection (IOC) motivace tight coupling vede ke složitým integračním testům (cz.novoj.business.usermanagernodi) přínos IOC obtíže

Více

Programování v Javě I. Leden 2008

Programování v Javě I. Leden 2008 Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Leden 2008 Radek Kočí Seminář Java Programování v Javě (1) 1/ 45 Téma přednášky Datové typy Deklarace třídy Modifikátory

Více

MVVM pro desktop i web

MVVM pro desktop i web MVVM pro desktop i web Tomáš Herceg CEO @ RIGANTI Co-founder of Update Conference Microsoft MVP tomas.herceg@riganti.cz @hercegtomas www.tomasherceg.com/blog MVVM Model View ViewModel { firstname: "Humphrey",

Více

Obsah přednášky. Technologie. Enterprise Java Beans. Enterprise Java Beans. EJB kontejner. Enterprise Java Beans (EJB)

Obsah přednášky. Technologie. Enterprise Java Beans. Enterprise Java Beans. EJB kontejner. Enterprise Java Beans (EJB) Obsah přednášky Technologie Miroslav Beneš Popis technologie EJB J2EE aplikace Typy komponent Entity Beans Session Beans Message-Driven Beans Java Messaging Service (JMS) Závěr 2 (EJB) EJB kontejner Specifikace

Více

Portál pro doučování

Portál pro doučování České vysoké učení technické v Praze Fakulta elektrotechnická Katedra počítačů Bakalářská práce Portál pro doučování Pavel Pokorný Vedoucí práce: Ing. Božena Mannová, Ph.D. Studijní program: Softwarové

Více

WPA - Konfigurace Java EE aplikace (Maven, struktura war arch. kontejnerem Tomcat 8

WPA - Konfigurace Java EE aplikace (Maven, struktura war arch. kontejnerem Tomcat 8 WPA - Konfigurace EE aplikace (Maven, struktura war archivů), práce s webovým kontejnerem 8 1. října 2014 Obsah 1 2 3 4 Maven Konfigurace maven projektu - pom.xml 5 6 ? Semestrálky mohou dělat dohromady

Více

PREPROCESOR POKRAČOVÁNÍ

PREPROCESOR POKRAČOVÁNÍ PREPROCESOR POKRAČOVÁNÍ Chybová hlášení V C# podobně jako v C++ existuje direktiva #error, která způsobí vypsání chybového hlášení překladačem a zastavení překladu. jazyk C# navíc nabízí direktivu #warning,

Více

Technologie Java. Jaroslav Žáček

Technologie Java. Jaroslav Žáček Technologie Java Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Trocha historie Java vznikla v roce 1995 jak minimalistický programovací jazyk (211 tříd). Syntaxe vycházela z C/C++. V

Více

Teoretické minimum z PJV

Teoretické minimum z PJV Teoretické minimum z PJV Pozn.: následující text popisuje vlastnosti jazyka Java zjednodušeně pouze pro potřeby výuky. Třída Zavádí se v programu deklarací třídy což je část programu od klíčových slov

Více

Distribuované systémy a výpočty

Distribuované systémy a výpočty Distribuované systémy a výpočty X36DSV Jan Janeček XML-RPC jednoduchá definice www.xmlrpc.com implementace obvykle opřené o XML parser X36DSV - Distribuované systémy a výpočty (3) 2 XML-RPC jednoduché

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006-2007 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

Sem vložte zadání Vaší práce.

Sem vložte zadání Vaší práce. Sem vložte zadání Vaší práce. České vysoké učení technické v Praze Fakulta informačních technologií Katedra softwarového inženýrství Bakalářská práce Rezervační komponenta pro informační systém sportovního

Více

Analýza a Návrh. Analýza

Analýza a Návrh. Analýza Analysis & Design Návrh nebo Design? Design = návrh Není vytváření použitelného uživatelského prostředí (pouze malinká podmnožina celého návrhu) Často takto omezeně chápáno studenty nedokáží si představit,

Více

X33EJA Enterprise Java

X33EJA Enterprise Java X33EJA Enterprise Java Petr Šlechta Sun Microsystems petr.slechta@sun.com Petr Aubrecht CA (Computer Associates) petr.aubrecht@ca.com X33EJA (2+2) Cvičení Formou samostatné práce na projektu témata budou

Více

Úvod do Groovy pro Java experty

Úvod do Groovy pro Java experty Úvod do Groovy pro Java experty Václav Pech Senior Software Developer JetBrains, Inc. Něco o mně Václav Pech Programátor Nadšenec do Groovy JetBrains Dodavatel Vašich oblíbených nástrojů IntelliJ IDEA,

Více

Proč Angular JS framework?

Proč Angular JS framework? Angular JS Proč Angular JS framework? Open Source vytvořený a spravovaný Googlem Vhodný pro tvorbu formulářových aplikací Dodá aplikaci základní architekturu a udržovatelnost Deklarativní způsob práce

Více

Motivační příklad reálný svět. výroba (assembly line)

Motivační příklad reálný svět. výroba (assembly line) Template method Motivační příklad reálný svět n Pásová výroba (assembly line) Motivační příklad SW inženýrství n Otevírání souborů n Třídy Application a Document (+potomci) Motivační příklad SW inženýrství

Více

<Insert Picture Here> Vývoj portálových řešení v Javě

<Insert Picture Here> Vývoj portálových řešení v Javě Vývoj portálových řešení v Javě Pavel Kubal Program Úvod do problematiky portálů Co je to Portál Jak se vyvíjejí portlety Softwarová podpora vývoje Výhody vývoje portálů Praktické

Více

DPKOM_06 Dědičnost entit a zpětná volání posluchači

DPKOM_06 Dědičnost entit a zpětná volání posluchači DPKOM_06 Dědičnost entit a zpětná volání posluchači 1 Obsah přednášky Jedna tabulka pro hierarchii tříd Tabulka pro konkrétní třídu Tabulka pro podtřídu Neentitní základní třídy Události zpětného volání

Více

ZABEZPEČENÍ A ARCHITEKTURA SPRÁVCE IPTV

ZABEZPEČENÍ A ARCHITEKTURA SPRÁVCE IPTV VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV TELEKOMUNIKACÍ FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION DEPARTMENT OF TELECOMMUNICATIONS

Více

Architektura, design, konstrukce

Architektura, design, konstrukce Architektura, design, konstrukce Dnešní program Úvod Upřesnění z minula Připomenutí poslat téma zápočtové práce. Změna pořadí cvičení Architektura Design Konstrukce Integrace Architektura vs. design Zjednodušeně:

Více