Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

2009 X33EJA Moderní Technologie Pro Vývoj JEE

756 views

Published on

2009 X33EJA Moderní technologie pro vývoj JEE

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

2009 X33EJA Moderní Technologie Pro Vývoj JEE

  1. 1. Copyright © 2007 KOMIX s.r.o. Martin Ptáček , KOMIX s.r.o. ptacek @komix.cz X33EJA Moderní technologie pro vývoj komplexních JEE systémů
  2. 2. Obsah Výběr technologie pro implementaci Podpůrné nástroje pro efektivní vývoj Unit testování Novinky JEE6 Otázky a odpovědi, Diskuse
  3. 3. <ul><li>Implementace business logiky </li></ul><ul><ul><li>EJB, Spring, JEE Design Patterns </li></ul></ul><ul><ul><li>Scheduling </li></ul></ul><ul><ul><li>Caching </li></ul></ul><ul><ul><li>Reporting </li></ul></ul><ul><li>Implementace prezentační vrstvy </li></ul><ul><ul><li>Nativní </li></ul></ul><ul><ul><li>Webový </li></ul></ul><ul><li>Integrace </li></ul><ul><ul><li>HTTP, WS, MQ atd… </li></ul></ul>Výběr technologie pro implementaci Overview
  4. 4. Výběr technologie pro implementaci Implementace business logiky – EJB, Spring JPA Presentation Layer Spring Container POJO Spring Bean EJB Descriptors Spring configuration JNDI JMS JAAS Cache Scheduler Other Services Database EJB Container Enterprise Bean
  5. 5. <ul><li>Session Facade </li></ul><ul><ul><li>Tvoří servisní vrstvu </li></ul></ul><ul><ul><li>Implementuje business logiku (služby) </li></ul></ul><ul><li>Service Locator </li></ul><ul><ul><li>Sdružuje odkazy na komponenty servisní vrstvy </li></ul></ul><ul><li>JPA </li></ul><ul><ul><li>Native Query s použitím automatického mapování </li></ul></ul><ul><ul><li>Využívat dědičnost </li></ul></ul>Výběr technologie pro implementaci Implementace business logiky – Best Practices
  6. 6. <ul><li>Apache Commons Logging http://commons.apache.org/logging/ </li></ul><ul><ul><li>Log4J http://logging.apache.org/log4j </li></ul></ul><ul><ul><li>SLF4J http://www.slf4j.org/ + Logback http://logback.qos.ch/ </li></ul></ul><ul><li>EJB Interceptor </li></ul><ul><li>Templates </li></ul><ul><ul><li>Freemarker http://freemarker.org/ </li></ul></ul><ul><li>Asynchronní zpracování </li></ul><ul><ul><li>EJB Message Driven Bean </li></ul></ul>Výběr technologie pro implementaci Implementace business logiky – Best Practices
  7. 7. <ul><li>Quartz Scheduler http://www. quartz - scheduler . org / </li></ul><ul><ul><li>Snadná implementace </li></ul></ul><ul><ul><ul><li>EJB Wrapper </li></ul></ul></ul><ul><ul><li>Dynamická konfigurace </li></ul></ul><ul><ul><ul><li>Job </li></ul></ul></ul><ul><ul><ul><li>Trigger (Unix style) </li></ul></ul></ul><ul><ul><li>JMX statistiky </li></ul></ul><ul><li>JBoss Scheduler Service </li></ul><ul><li>EJB Timer Service </li></ul>Výběr technologie pro implementaci Implementace business logiky – Scheduling
  8. 8. <ul><li>Ehcache http://ehcache.org/ </li></ul><ul><ul><li>Snadná implementace </li></ul></ul><ul><ul><li>Dynamická konfigurace </li></ul></ul><ul><ul><ul><li>Skupiny cache, policy, timeToLive, maxInMemory, maxInDisk </li></ul></ul></ul><ul><ul><li>Distribuované eventy </li></ul></ul><ul><ul><ul><li>remove, update, create </li></ul></ul></ul><ul><li>Hibernate Second Level Cache </li></ul><ul><li>EJB Container properties </li></ul>Výběr technologie pro implementaci Implementace business logiky – Caching
  9. 9. <ul><li>Birt http://eclipse.org/birt </li></ul><ul><ul><li>Advanced Report Engine </li></ul></ul><ul><ul><li>WYSIWYG Designer </li></ul></ul><ul><ul><li>HTML, PDF, DOC, XLS a PostScript </li></ul></ul><ul><li>JasperReports http:// jasperforge . org / </li></ul><ul><li>Apache POI http://poi.apache.org/ </li></ul><ul><ul><li>API pro tvorbu a čtení MS formátů </li></ul></ul><ul><ul><li>XLS, DOC, PPT </li></ul></ul><ul><li>iText http://itextpdf.com/ </li></ul><ul><ul><li>PDF reports </li></ul></ul>Výběr technologie pro implementaci Implementace business logiky – Reporting
  10. 10. <ul><li>Nativní klient </li></ul><ul><ul><li>Java Swing, Java SWT </li></ul></ul><ul><ul><li>.NET klient </li></ul></ul><ul><li>Webový klient </li></ul><ul><ul><li>Kvalitní webový framework </li></ul></ul><ul><ul><ul><li>Anotation configuration </li></ul></ul></ul><ul><ul><ul><li>Templates </li></ul></ul></ul><ul><ul><ul><li>Automatic Binding Engine </li></ul></ul></ul><ul><ul><ul><ul><li>Format, Convert </li></ul></ul></ul></ul><ul><ul><ul><li>Validations </li></ul></ul></ul><ul><ul><ul><li>Localization </li></ul></ul></ul><ul><ul><ul><li>AJAX </li></ul></ul></ul><ul><ul><ul><li>EL Support </li></ul></ul></ul>Výběr technologie pro implementaci Implementace prezentační vrstvy
  11. 11. <ul><li>WebFrameworks </li></ul><ul><ul><li>Stripes http://www.stripesframework. org </li></ul></ul><ul><ul><li>Struts2 http://struts.apache.org/2.x/index.html </li></ul></ul><ul><ul><li>JSF </li></ul></ul><ul><li>Javascript Libraries </li></ul><ul><ul><li>Prototype, JQuery, Dojo, Mootools </li></ul></ul><ul><ul><li>LiveValidation, DhtmlXtree, LayoutManager, Growler, Window, Carousel, Date Picker, Table Controller, Form Controller </li></ul></ul>Výběr technologie pro implementaci Implementace prezentační vrstvy – Webový klient
  12. 12. <ul><li>WebServices WS </li></ul><ul><ul><li>Standard pro komunikaci mezi systémy </li></ul></ul><ul><ul><li>JAX-WS </li></ul></ul><ul><ul><li>AXIS http://ws.apache.org/axis/ </li></ul></ul><ul><li>REST </li></ul><ul><li>XML, XSD </li></ul><ul><ul><li>JAXB </li></ul></ul><ul><ul><li>Simple XML http://simple.sourceforge.net/ </li></ul></ul><ul><li>JMS </li></ul>Výběr technologie pro implementaci Integrace
  13. 13. <ul><li>Verzovací systémy </li></ul><ul><ul><li>CVS </li></ul></ul><ul><ul><li>SubVersion </li></ul></ul><ul><li>Nástroje pro řízení překladu a sestavování aplikace </li></ul><ul><ul><li>Ant http://ant.apache.org/ </li></ul></ul><ul><ul><li>Maven http://maven.apache.org/ </li></ul></ul><ul><ul><li>Hudson http://hudson-ci.org/ </li></ul></ul><ul><li>Task Management System, Project Collaboration </li></ul><ul><ul><li>JIRA, Bugzilla </li></ul></ul>Podpůrné nástroje pro efektivní vývoj Part1
  14. 14. <ul><li>Database Browser </li></ul><ul><ul><li>Squirrel http://squirrel-sql.sourceforge. net </li></ul></ul><ul><ul><li>Aqua Data Studio http://www.aquafold.com </li></ul></ul><ul><li>Analýza zdrojového kódu </li></ul><ul><ul><li>PMD http://pmd.sourceforge. net </li></ul></ul><ul><li>Ostatní </li></ul><ul><ul><li>The Regex Coach http://weitz.de/regex-coach </li></ul></ul><ul><ul><li>Java Decompiler http://java.decompiler.free. fr </li></ul></ul>Podpůrné nástroje pro efektivní vývoj Part2
  15. 15. <ul><li>Podpora různých fází implementace </li></ul><ul><ul><li>Při tvorbě business logiky </li></ul></ul><ul><ul><li>Při implementaci komunikace s okolními systémy </li></ul></ul><ul><ul><li>Pro ověřování správného fungování základních funkčností </li></ul></ul><ul><li>TestNG http://testng.org </li></ul><ul><li>JUnit http://www.junit.org/ </li></ul><ul><li>Jak testovat EJB komponenty? </li></ul>Unit testování
  16. 16. <ul><li>Profiles </li></ul><ul><li>EJB 3.1 </li></ul><ul><ul><li>Singleton, Scheduling, @Asynchronous </li></ul></ul><ul><ul><li>Standardizace JNDI názvů </li></ul></ul><ul><li>JPA 2.0 </li></ul><ul><ul><li>Criteria API </li></ul></ul><ul><li>Servlet 3.0 </li></ul><ul><ul><li>@WebServlet, @ServletFilter </li></ul></ul><ul><ul><li>Comet support </li></ul></ul>Novinky JEE6
  17. 17. Otázky a odpovědi <ul><li>Otázky ? </li></ul>
  18. 18. Děkuji za vaši pozornost Martin Ptáček [email_address] +420 225 989 981 KOMIX s.r.o. Holubova 1, 150 00 Praha 5 www.komix.cz

×