Transaction API + webové frameworky + další poznámky. Petr Aubrecht CA
|
|
- Zdeňka Sedláková
- před 6 lety
- Počet zobrazení:
Transkript
1 Transaction API + webové frameworky + další poznámky Petr Aubrecht CA
2 Co dnes probereme Slíbené JTA Webové frameworky (serverové) Další Třívrstvá architektura Různé z JEE 6 Doporučení pro postup práce v JEE
3 Java Transaction API (JTA) Něco definice: Java Transaction API (JTA) specifies standard Java interfaces between a transaction manager and the parties involved in a distributed transaction system: the resource manager, the application server, and the transactional applications. The JTA specification was developed by Sun Microsystems in cooperation with leading industry partners in the transaction processing and database system arena. See JSR 907. Also see the Java Transaction Service (JTS) page
4 Bean Managed Transaction javax.transaction.usertransaction interface begin() commit() rollback()
5 Container Managed Transactions Probrali jsme u session bean, default nastavení tedy transakce je vždy použita pro každou metodu (session beany)
6 Attributes Transaction Attr. Client s Tr. Business Method s Tr. Required None T2 Required T1 T1 RequiresNew None T2 RequiresNew T1 T2 Mandatory None Error Mandatory T1 T1 NotSupported None None NotSupported T1 None Supports None None Supports T1 T1 Never None None Never T1 Error
7 JTA toť vše Je to samozřejmě složitější (např. synchronizaci napříč servery), ale nad rámec našich potřeb.
8 Webové frameworky Čistě Javascriptové knihovny necháme na příští přednášku Martina Ptáčka. Další možností je použití cloudu (PaaS) např. Amazon (v případě zájmu řekněte Martinovi), dostanete k dispozici celý server, kam můžete dát, co libo Google App Engine neumí JEE, tedy session beany, má vlastní API, JPA 1.0+JDO, umí Java, Python, Go Zabývat se budeme především frameworky nad Javou nebo aspoň JVM (o MS se dozvíte v jiných předmětech). RIA Rich Internet Application
9 Hlavní rozdělení client/server Serverové frameworky řeší především procesy na serveru, tedy IoC, transakce ap. JEE session beans, JPA Spring (+DataServices, WebFlow) Klientské komponentové nabízejí grafické komponenty: GWT (Vaadin), JSF nekomponentové pomáhají s HTML: Spring MVC, Grails (RoR), Wicket
10 Spring Framework Spring vznikl jako knihovna pro jednodušší programování JEE při psaní knihy Expert One-on-One J2EE Design and Development Roda Johnsona, později se přetvořila na samostatnou knihovnu konkurující JEE, fungující jako integrační platforma pro mnoho technologií. Spring v mnoha aplikacích slouží na backendu jako IoC, tedy stará se o inicializaci tříd.
11 Spring IoC, DI <!-- property-based --> <bean id="examplebean" class="examples.examplebean"> <!-- setter injection using the nested <ref/> element --> <property name="beanone"><ref bean="anotherexamplebean"/></property> <!-- setter injection using the neater 'ref' attribute --> <property name="beantwo" ref="yetanotherbean"/> <property name="integerproperty" value="1"/> </bean> <bean id="anotherexamplebean" class="examples.anotherbean"/> <bean id="yetanotherbean" class="examples.yetanotherbean"/> <!-- constructor-based --> <bean id="examplebean" class="examples.examplebean"> <constructor-arg index="0" value=" "/> <constructor-arg index="1" value="42"/> </bean>
12 Spring Web Flow Spring Web Flow is a Spring MVC extension that allows implementing the "flows" of a web application. A flow encapsulates a sequence of steps that guide a user through the execution of some business task. It spans multiple HTTP requests, has state, deals with transactional data, is reusable, and may be dynamic and long-running in nature.
13 Spring Data Category Relational Databases Sub-project JPA JDBC Extensions Big Data Data-Grid Key Value Stores Apache Hadoop GemFire Redis Riak Document Stores MongoDB CouchDB (planned) Graph Databases Column Stores Neo4j HBase (planned) Cassandra (planned) Blob-Stores Common Infrastructure Blob Commons Grails Mapping
14 GWT Google Web Toolkit Hlavní idea: programovat UI v Javě, která se potom přeloží do Javascriptu GWT v sobě nese kompilátor Javy, jehož výstup překládá do Javascriptu, pro každý browser zvlášť. Zdrojový kód smí obsahovat importy pouze z java.lang, java.util a z GWT knihoven. Stránka je vytvářena procedurálně, kódem, nikoliv XML definicí, velmi podobně jako Swing. GWT řeší komunikaci client-server asynchronně.
15 Příklad GWT panel public Widget oninitialize() { VerticalPanel vpanel = new VerticalPanel(); HTML label = new HTML(constants.cwCheckBoxCheckAll()); vpanel.add(label); // Add a checkbox for each day of the week String[] daysofweek = constants.cwcheckboxdays(); for (int i = 0; i < daysofweek.length; i++) { String day = daysofweek[i]; CheckBox checkbox = new CheckBox(day); checkbox.ensuredebugid("cwcheckbox-" + day); // Disable the weekends if (i >= 5) { checkbox.setenabled(false); } vpanel.add(checkbox); } // Return the panel of checkboxes return vpanel; }
16 Příklad GWT akce public Widget oninitialize() { // Create a panel to align the widgets HorizontalPanel hpanel = new HorizontalPanel(); // Add a normal button Button normalbutton = new Button( constants.cwbasicbuttonnormal(), new ClickHandler() { public void onclick(clickevent event) { Window.alert(constants.cwBasicButtonClickMessage()); } }); hpanel.add(normalbutton); // Add a disabled button Button disabledbutton = new Button(constants.cwBasicButtonDisabled()); disabledbutton.setenabled(false); hpanel.add(disabledbutton); return hpanel; }
17 Příklad GWT strom // Add a handler that automatically generates some children dynamictree.addopenhandler(new OpenHandler<TreeItem>() { public void onopen(openevent<treeitem> event) { TreeItem item = event.gettarget(); if (item.getchildcount() == 1) { // Close the item immediately item.setstate(false, false); // Add a random number of children to the item String itemtext = item.gettext(); int numchildren = Random.nextInt(5) + 2; for (int i = 0; i < numchildren; i++) { TreeItem child = item.additem(itemtext + "." + i); child.additem(""); } // Remove the temporary item when we finish loading item.getchild(0).remove(); // Reopen the item item.setstate(true, false); }
18 Asynchronní volání na server
19 Asynchronní volání na server - kód public class StockPriceServiceImpl extends RemoteServiceServlet implements StockPriceService { private void refreshwatchlist() { public StockPrice getprices(..) { stockpricesvc =... GWT.create(StockPriceService.class); } } return prices; // Set up the callback object. AsyncCallback<StockPrice[]> callback = new AsyncCallback<StockPrice>() { public void onfailure(throwable caught) { // TODO: Do something with errors. } public void onsuccess(stockprice[] result) { updatetable(result); } }; // Make the call to the stock price service. stockpricesvc.getprices(..., callback); }
20 Příklad GWT internacionalizace ErrorMessages.properties permissiondenied = User ''{0}'' has security clearance ''{1}'' and cannot access ''{2}'' ErrorMessages.java (generated) public interface ErrorMessages extends Messages { String permissiondenied(string username, String securityclearance, String inaccessibleresource); } Example.java private ErrorMessages errormessages = GWT.create(ErrorMessages.class); formattedmessage.settext(errormessages.permissiondenied(user, clearance, resource));
21 Jak začít s GWT webappcreator -out StockWatcher -junit "C:\eclipse\plugins\org.junit_3.8.2.v \junit.jar" com.google.gwt.sample.stockwatcher.stockwatcher vygeneruje projekt ant devmode Running the development mode code server
22 Linky home sada funkčních příkladů se zdrojáky
23 Vaadin Vaadin zjednodušuje a urychluje práci s GWT, takže získává podobné vlastnosti jako JSF; zavádí i vlastní komponenty
24 Vaadin příklad public class HelloWorld extends com.vaadin.application { /** * Init is invoked on application load (when a user accesses the application * for the first time). public void init() { // Main window is the primary browser window final Window main = new Window("Hello window"); setmainwindow(main); // "Hello world" text is added to window as a Label component main.addcomponent(new Label("Hello World!")); } }
25 Grails (RoR) rychlý vývoj (rapid development) běží nad JVM, Groovy automaticky generuje CRUD stránky
26 Grails List class Trip { String name String city Date startdate Date enddate String purpose String notes } class TripController {... def list = { if(!params.max) params.max = 10 [ triplist: Trip.list( params ) ] }... <g:each in="${triplist}" status="i" var="trip"> } <tr class="${(i % 2) == 0? 'odd' : 'even'}"> <td> <g:link action="show" id="${trip.id}">${trip.id?.encodeashtml()}</g:link> </td> </tr> </g:each>
27 Apache Wicket slavný framework, ceněný pro svou jednoduchost a rychlost, lze dělat vlastní komponenty důraz na server-side stav <html> <body> <span wicket:id="message">message goes here</span> </body> </html> public class HelloWorld extends WebPage { public HelloWorld() { add(new Label("message", "Hello World!")); } }
28 Drobnější témata Local vs. Remote Vícevrstvá architektura Global JNDI Names Calendar Based Time Services Embeddable Container Profily End-to-end
29 Local vs Remote 10! L (ms) R (ms) 1 000! L (ms) R (ms) 10x x x x x x x x 4,326 6, x 2,693 4, x 44,342 42, x 24,498 42, x 401, , ! L (ms) R (ms) ! L (ms) R (ms) 10x x x x x x 3,552 3, x 1, x 38,518 38, x 6,543 8, x 380, , x 67,017 84, x 4,689,103 4,768,913
30 Třívrstvá architektura 2 vrstvy obrázky jsem si půjčil od Dagiho (dagblog) 2 vrsvy byly prima v 90. letech kde to nestačí?
31 Třívrstvá architektura 3 vrstvy zjednodušený model
32 Třívrstvá architektura 3 vrstvy dnešní architektura
33 Global JNDI Names v současnosti jsou JNDI názvy specifické pro servery, takže je testování a deployment poněkud magie Glassfish: com.os.ent.customermanagerremote JBoss: ejb3sampleapp/customermanager/remote Oracle: CustomerManager ve 3.1 bude univerzání (alternativní) pojmenování: java:global[/<application-name>]/<modulename>/<bean-name>#<interface-name>
34 Calendar Based Timer Services možnost spouštět akce v určitý čas, např. každé pondělí v 6:15 podobně jako cron, diskuze se vede, jestli podporovat syntaxi cron (protože ji každý public class NewsLetterBean { 15, hour= 6, dayofweek= Mon ) public void sendnewsletter() { }...
35 EJB 3.1 Embeddable Container Problém s deploymentem lze řešit pomocí tzv. embeddable containeru. Neběží jako server, je iniciován kódem. Must have pro public void teststates() throws Exception { Properties props = new Properties(); props.setproperty(context.initial_context_factory, "org.apache.openejb.client.localinitialcontextfactory"); InitialContext context = new InitialContext(props); StateRegistry stateone = (StateRegistry) context.lookup("stateregistrybeanlocal"); StateRegistry statetwo = (StateRegistry) context.lookup("stateregistrybeanlocal"); stateone.setstate("maryland", "MD"); statetwo.setstate("virginia", "VA");
36 Profily JEE Již nyní je JEE opravdu široká technologie s mnoha požadavky, které většina aplikací ani nevyužije (viz oblíbený terč CORBA) Pro JEE 6 je navržena myšlenka profilů, kdy kontejner musí implementovat určité technologie; není potřeba implementovat úplně všechny. Aktuálně je definován pouze Web Profile, který obsahuje webové technologie, EJB mimo JMS a JavaMail, ale nemusí obsahovat CORBA, web services, management a security. Objevují se nové technologie, které budou později začleněny jako nepovinné (např. SIP Servlety, JAX-RS).
37
38 End-to-end Postup od začátku do konce... všechno presentation logic servlet, JSP, JSF backing beans business logic session beans, MDB web services Data Access Layer entities, JPA DB
39 Databáze ER servlet, JSP, JSF backing beans session beans entities, JPA DB Sprint 1,1 0,N Task 1,1 0,N Developer 1,1 0,N Assignment
40 JPA (DAO, DAL) servlet, JSP, JSF backing beans session beans entities, JPA prostě vygenerujeme a případně opravíme doporučuji mít dopředu připravená data (snáze se kontroluje) DB
41 Session beans (business logic) servlet, JSP, JSF backing beans session beans entities, JPA budeme potřebovat přístup k Entity private EntityManager em; samozřejmě necháme IDE generovat tyto části funčnost ověříme pomocí web services (buď z webového interface Glassfishe nebo necháme NB vygenerovat ws clienta) DB
42 Mock prezentační vrstvy servlet, JSP, JSF backing beans session beans entities, JPA vyrobíme webové stránky, jak mají vypadat, se statickým obsahem. Postupně je budeme nahrazovat funkčním obsahem a psát backing beany. Nepište velké části bez dalších návazností, předejdete tak velkým přepisům. Pište vždy funkcionalitu vertikálně, od session beans, backing bean až po JSF. DB
43 A rozšiřujeme... Budeme dále rozšiřovat; když už máme základ aplikace, přidávání dalších stránek je radost! Postupujte inkrementálně, práce roste viditelně pod rukama a motivuje vás k dalšímu vývoji! Rozdělená práce, kde dlouho nevidíte výsledek, demotivuje! Nesnažte se mít úchvatnou aplikaci hned z počátku, strávíte příliš času nad nedůležitými částmi a nakonec nebude aplikace hotová. Soustřeďte se na předem dohodnutou funkcionalitu. Až ji budete mít hotovou, můžete ji zkusit vylepšit, případně dodat další.
44 Linky Beginning Java EE 6 with GlassFish 3 JavaServer Faces 2.0, The Complete Reference
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
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
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
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ů.
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
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,
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
Ú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
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
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
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,
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
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,
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
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
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
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",
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
Tvorba podnikových aplikací v jazyce JAVA. Josef Pavlíček KII PEF CZU
Tvorba podnikových aplikací v jazyce JAVA Josef Pavlíček KII PEF CZU J2EE Jedná se o přístup: sadu pravidel, technologií, metod, doporučení jak provádět design, vývoj, nasazení a provozování vícevrstvých
(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í
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
Platformy / technologie. Jaroslav Žáček
Platformy / technologie Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/infs1/ Které platformy / technologie znáte Co je potřeba znát Web Applications Frontend AngularJS React Backend Java.NET
Architektury informačních systémů
Architektury informačních systémů doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes/vyuka/tis Miroslav.Benes@vsb.cz Obsah přednášky Co je to
Architektury informačních systémů
Architektury informačních systémů doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes/vyuka/tis Miroslav.Benes@vsb.cz Obsah přednášky Co je to
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
Web Frameworks Java Server Faces. Petr Aubrecht CA
Web Frameworks Java Server Faces Petr Aubrecht CA XKCD o SQL Injection http://www.abclinuxu.cz/clanky/komiks-xkcd-327-maminciny-exploity Její dcera se jmenuje Pomoc, jsem zavřená v továrně na řidičáky.
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
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
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
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
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
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
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
Platforma J2EE. Lukáš Zapletal liberix.cz. Platforma Java 2 Enterprise Edition
Platforma J2EE Lukáš Zapletal liberix.cz Platforma Java 2 Enterprise Edition Co je J2EE J2EE je standard pro vývoj robustních, škálovatelných a bezpečných serverových systémů v Javě. Poskytuje business
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
X33EJA Enterprise Java. Petr Šlechta Sun Microsystems petr.slechta@sun.com
X33EJA Enterprise Java Petr Šlechta Sun Microsystems petr.slechta@sun.com Web Services (dodatek) Dynamické vyvolání WS Pomocí SAAJ (SOAP with Attachments API for Java) Dynamicky vytvořit SOAP zprávu (např.
Distribuované systémy a výpočty
Distribuované systémy a výpočty X36DSV Jan Janeček Peter Macejko CORBA Common Object Request Broker Architecture - konsorcium OMG (Object Management Group) - standard pro podporu komunikace v DS - pouze
Další vlastnosti Springu Moduly Springu. Spring Framework. Pavel Mička. Pavel Mička Spring Framework 1/18
Spring Framework Pavel Mička Pavel Mička Spring Framework 1/18 Obsah Úvod 1 Úvod 2 Service locator Dependency injection Rozsah platnosti bean 3 4 Pavel Mička Spring Framework 2/18 Co je to Spring framework
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
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
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
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
Čipové karty Lekařská informatika
Čipové karty Lekařská informatika Následující kód je jednoduchou aplikací pro čipové karty, která po překladu vytváří prostor na kartě, nad kterým jsou prováděny jednotlivé operace a do kterého jsou ukládány
Java a J2EE. Cleverlance. Lukáš Marek lukas.marek@cleverlance.com
Java a J2EE Lukáš Marek lukas.marek@cleverlance.com Agenda: Java ve zkratce architektura aplikací aplikaèní servery a Enterprise Java DEMO enterprise aplikace zajímavé produkty vývojová IDE Java a J2EE
<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é
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
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
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
JavaServer Faces Zdeněk Troníček
JavaServer Faces Zdeněk k Troníček JSF aplikace Faces servlet web.xml faces-config.xml JSF (*.jsp) Backing Beans (*.java) model (*.java) libraries
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í
Zabezpečení platformy SOA. Michal Opatřil Corinex Group
Zabezpečení platformy Michal Opatřil Corinex Group Agenda Současný přístup k bezpečnosti Požadavky zákazníků CA Security Manager Architektura Klíčové vlastnosti Proč CA Security Manager CA 2 Security Manager
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 2005-2008 Michal Krátký, Miroslav Beneš Tvorba informačních
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ů, 2006/2007 c 2005-2007 Michal Krátký, Miroslav Beneš Tvorba
Michal Krátký, Miroslav Beneš
Tvorba informačních systémů 1/32 Tvorba informačních systémů Michal Krátký, Miroslav Beneš Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2008/2009 Tvorba informačních
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
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ů
ANT. Aplikační programování v Javě (BI-APJ) - 1 Ing. Jiří Daněček Katedra softwarového inženýrství Fakulta informačních technologií ČVUT Praha
ANT Aplikační programování v Javě (BI-APJ) - 1 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
RMI - Distribuované objekty v Javě
Vysoká škola báňská - Technická univerzita Ostrava 30. března 2009 Osnova Co je to RMI? 1 Co je to RMI? 2 Vnější pohled Vrstvy RMI Stub & Skeletons Layer Remote Reference Layer Transport Layer Pojemnování
Tvorba informačních systémů na platformě J2EE Petr Hetmánek Masarykova Univerzita, Fakulta Informatiky, Botanická 68a, Brno
Tvorba informačních systémů na platformě J2EE Petr Hetmánek (xhetman@fi.muni.cz) Masarykova Univerzita, Fakulta Informatiky, Botanická 68a, Brno Abstrakt Rostoucí dostupnost internetu vede ke vzniku stále
Server-side technologie pro webové aplikace
Server-side technologie pro webové aplikace PIA 2011/2012 Téma 6 Copyright 2006 Přemysl Brada, Západočeská univerzita Server-side scriptování Cíl dynamické generování webového obsahu/rozhraní integrace
GUIDELINES FOR CONNECTION TO FTP SERVER TO TRANSFER PRINTING DATA
GUIDELINES FOR CONNECTION TO FTP SERVER TO TRANSFER PRINTING DATA What is an FTP client and how to use it? FTP (File transport protocol) - A protocol used to transfer your printing data files to the MAFRAPRINT
JAVA Unit testing Java, zimní semestr
JAVA Unit testing Úvod unit testing testování malý jednotek funkčnosti jednotka nezávislá na ostatních testování zcela oddělené vytvářejí se pomocné objekty pro testování kontext typicky v OO jazycích
Vladimír Mach. @vladimirmach 2. 1. 2013
Vladimír Mach @vladimirmach 2. 1. 2013 SQL Server Compact Edition Jednoduchá relační databáze Použití i v malých zařízeních s omezenými zdroji Dříve pod názvem SQL Server Mobile Časté využití při programování
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é
Převod 4GL aplikací do webového prostředí. Ing. Jan Musil, IBM ČR Community of Practice for
Převod 4GL aplikací do webového prostředí Ing. Jan Musil, IBM ČR Community of Practice for CEEMEA Co je to EGL? -4GL a EGL Agenda Popis převodu z -4GL do EGL krok za krokem Obecný postup převodu Závěrečný
DPKOM_10 Transakce 1
DPKOM_10 Transakce 1 Obsah přednášky Motivace Transakce ACID Modely transakcí Dvoufázový protokol commit Transakce řízené kontejnerem, beanem a klientem Deklarativnířízení transakcí Transakční atributy
Úvod do Web Services
Úvod do Web Services Základy webových služeb a jejich implementace na platformě OS/2 Jarda Kačer jarda@kacer.biz Český Warpstock 2008 Brno, 20.-21.9.2008 Co je to webová služba? Část business logiky přístupná
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
RMI Remote Method Invocation
2. cvičení RMI Remote Method Invocation 2007/09 ver.2.0 1 RMI co to je? vyvolání metody z jiné JVM lokalizace vzdáleného objektu komunikace se vzdálenými objekty přenos objektu v bytecode typicky klient
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
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
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
Ověřování nahraditelnosti EJB komponent. Pavel Stuna
Ověřování nahraditelnosti EJB komponent Pavel Stuna 17. května 2005 Abstract Verification of EJB components substitutability The aim of this diploma thesis is to compare two Enterprise JavaBeans components
2012 ET NETERA a.s. Wicket přehled technologie Martin Strejc www.etnetera.cz 5.4.2012
Wicket přehled technologie Martin Strejc www.etnetera.cz 5.4.2012 Osnova přednášky 1. Vznik Wicketu 2. Co Wicket umí a co neumí? 3. Účely užití výhody a nevýhody 4. Rozšiřitelnost Wicketu 5. Srovnání s
Statické proměnné a metody. Tomáš Pitner, upravil Marek Šabo
Statické proměnné a metody Tomáš Pitner, upravil Marek Šabo Úvod Se statickou metodou jsme se setkali už u úplně prvního programu - Hello, world! public class Demo { public static void main(string[] args)
Integrace OpenOffice.org a Javy. CZJUG, , Robert Vojta
Integrace OpenOffice.org a Javy CZJUG, 15.12.2008, Robert Vojta Obsah Část 1 - Teorie Úvodní informace, definice pojmů Dokumentace, Java Language Binding Pomocné nástroje Část 2 - Praktické ukázky Lokální
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
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)
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
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
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
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
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
Code Contracts. Robert Haken [MVP ASP.NET, MCT] Software architect, Owner at HAVIT, s.r.o. knowledge-base.havit.cz
Code Contracts Robert Haken [MVP ASP.NET, MCT] Software architect, Owner at HAVIT, s.r.o. knowledge-base.havit.cz Contracts volaná strana deklaruje, jak se chová vzniká dohoda mezi volající a volanou stranou
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
Programování v Javě I. Únor 2009
Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Únor 2009 Radek Kočí Seminář Java Programování v Javě (1) 1/ 44 Téma přednášky Datové typy Deklarace třídy Modifikátory
Pokročilé Webové služby a Caché security. Š. Havlíček
Pokročilé Webové služby a Caché security Š. Havlíček Webové služby co se tím míní? Webová služba metoda komunikace mezi dvěma elektronickými zařízeními přes internet Typicky jsou pomocí rozhraní přístupné
Komponentově orientované webové frameworky. Jiří Stránský twitter.com/jistr
Komponentově orientované webové frameworky Jiří Stránský jistr@jistr.net twitter.com/jistr O čem to bude Three-Tier aplikace MVC frameworky Komponentově orientované frameworky Apache Wicket Three-Tier
Domino 10 nové komponenty a související témata (node.js, ES )
Domino 10 nové komponenty a související témata (node.js, ES ) David Marko TCL DigiTrade - 19.4.2018 Domino 10 Use of OpenSource components ( Java Script, ) Great focus on integration of Mobiles and Chat
Groovy agilní Java. Pavel Kříž Filip Malý
Groovy agilní Java Pavel Kříž Filip Malý Úvod Dynamický skriptovací jazyk pod JVM Navržen pro platformu Java, zcela interoperabilní (na úrovni bajtkódu) s běžnými programy v Javě, silně objektově orientovaný
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
Web frameworks v praxi Tomáš Krátký
Web frameworks v praxi Tomáš Krátký tomas.kratky@profinit.cz Stručný obsah Vzájemné seznámení Problém Definice podstatných kritérií Kandidáti Volba správného nástroje Situace na trhu práce Co si myslím
Java Server-side. Štěpán Kuchař. stepan.kuchar@vsb.cz. VŠB-TUO FEI Katedra informatiky
Java Server-side Štěpán Kuchař stepan.kuchar@vsb.cz VŠB-TUO FEI Katedra informatiky Trocha historie 500 před n. l. Pythagoras založil bratrstvo vyznávající reinkarnaci, vegetariánství, mystický význam
Vývoj informačních systémů. Architektura, návrh Vzory: Doménová logika
Vývoj informačních systémů Architektura, návrh Vzory: Doménová logika Zachman Framework Zdroje Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Design Patterns: Elements of Reusable Object-Oriented
MySQL sežere vaše data
MySQL sežere vaše data David Karban @davidkarban AWS Certified http://davidkarban.cz/ It s not a bug, it s a feature syndrome Pravděpodobně znáte indexy. Urychlují dotazy. Mohou být řazené, vzestupně i
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
Ant aneb Ferda Mravenec, práce všeho druhu
Ant aneb Ferda Mravenec, práce všeho druhu Nástroj na sestavování projektů (aplikací) podobný programu make, který se používá u programů v C či C++. Program Ant je volně k dispozici (tzv. The Apache Software
Databázové a informační systémy
Databázové a informační systémy 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 Jak ukládat a efektivně zpracovávat
VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA
Metodický list č. 1 Způsob zakončení : Úvod Technologie webových aplikací Protokol HTTP Po zvládnutí tématického celku bude student mít základní přehled o problematice programování internetových (webových)
Ú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,