java oss web technologies by dave ford introduction purpose describe javas relationship to the oss...
TRANSCRIPT
Java OSS Web Technologies
By Dave Ford
IntroductionPurposeDescribe Java’s relationship to the OSS
communityDescribe OSS tools used on recent projectHighlight a few of those tools
Tools I used for a recent project
Apache Jakarta TomcatJakarta Taglibs (JSTL)StrutsHibernateApache Maven IntelliJ (not OSS)JUnitmySql (not Java)
What Exactly is Java?
Java is 3 sets of specificationsLanguage Spec
Binary Format (VM Spec)
Platform/API SpecsJ2SE
J2EE
Other Sun APIs
The Language
Statically Typed and Dynamic
Object-Oriented from the Start
General PurposeYou can write servlets with JavaYou can write a word processor with Java
Multi-Threaded
Implementation Versus Specification
Java’s Web StackServlet
JSP (Java Server Pages)
JSTL (JSP Standard Tag Lib)
JSF (Java Server Pages)
Code and Knowledge are Portable
Implementations
Open SourceApache Jakarta Tomcat (Servlet/JSP)JettyEnhydra
CommercialIBM Web SphereBEA Web LogicOracle 9iASCaucho ResinOrion
J2EE Stack
Java/J2SE
J2EE
Other Sun API’s
3rd Party and OSS
Tomcat
Implements Servlet Spec/JSP Spec
Stable and Fast Enough
Great Support
HTTP Server
Relationship to Apache “Classic”
Beyond Java’s Web Stack
From Servlet Only
To JSP Only
To Servlet -> JSP
To Servlet -> Action -> JSP (MVC)
Web Frameworks and Struts
Struts
Front Controller (Master Servlet)Action (handles request)Form Bean (screen buffer)Mapping (request uri ->action class)JSP Tag Lib (renders the Form Bean) Validation and ConvertersScreen Re-PopulationsPros and Conshttp://jakarta.apache.org/struts/
Hibernate
OOP and Database ProgrammingClasses: Data + ResponsibilitiesStructs (Transfer Objects)
JDBC in 2003For most projects use Object Persistence layer – not JDBC direct.
Hibernate is an O/R MappingTransparent PersistenceBest online support I’ve ever seenwww.hibernate.org