Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
1 Struts framework Java Servlet JSP JavaServer Pages web application Struts Internet application Struts Craig R. McClanahan Apache Software Foundation 2000 ASF Struts Apache Struts Struts Apache Jakarta log4j Tomcat Struts Ant Jakarta Java 1.1 World Wide Web WWW hypertext document CERN 1989 1 2 CERN Common CGI Gateway Interface CGI web server CGI 1990 CGI CGI request OS operating system process CGI script OS CGI CGI authorization workflow CGI logging FastCGI CGI CGI FastCGI FastCGI CGI FastCGI CGI mode_perl Netspcae NSAPI Apache Microsoft IIS ISAPI CGI 1997 Java 1.2 Java Java Servlet Java Servlet Java servlet Java component servlet servlet CGI CGI servlet thread Java Java Virtual 3 Machine JVM servlet instance URL servlet uniform resource locator servlet URL servlet service method servlet servlet Java servlet CGI servlet servlet OS servlet Java Java API application programming interface servlet DataBase Connectivity™ EJB JDBC Enterprise JavaBeans Java servlet Java servlet servlet servlet servlet container container servlet engine servlet servlet container 1-1 servlet container servlet container servlet servlet container servlet 4 servlet container servlet container servlet application server container servlet container 1-1 1-1 servlet container servlet container Borland Enterprise Server http://www.inprise.com Sun One Application Server http://www.sun.com Jetty http://jetty.mortbay.org/jetty/index.html JRun http://www.macromedia.com/software/jrun Orion Application Server http://www.orionserver.com Resin http://www.caucho.com Apache Tomcat http://jakarta.apache.org/tomcat Weblogic Application Server http://www.bea.com WebSphere http://www-4.ibm.com/software/webservers/appserv EAServer http://www.sybase.com servlet container Sun servlet/industry.html http://java.sun.com/pr oducts/ servlet container servlet HTML HyperText Markup Language servlet HTML servlet HTML servlet servlet I18N internationalization servlet HTML servlet HTML servlet internationalization 18 Java HTML Java I18N I N 5 servlet Java Servlet Jason Hunter O'Reilly Programming Java Servlet Sun Servlet http://java.sun.com/ products/servlet/index.html JSP Java JSP JSP page JSP servlet 1.3 JSP JavaServer Pages JSP JSP translator JSP Java Servlet Java serlvet JSP HTML .jsp XML scriptlet tag scriptlet .jsp Java .java servlet container .class .jsp servlet servlet JSP .java 1-2 JSP Java Java 6 JSP Java JSP JSP JSP JSP Java custom tag JSP Java Wr i t e O n c e , R u n Anywhere HTML servlet JSP HTML JSP JSP JSP scriptlet .jsp JSP JSP servlet Java JSP scriptlet scriptlet scriptlet JSP reuse copy-and-paste scriptlet 7 1.4 JSP Model 1 JSP Model 2 JSP JSP Model 1 Model 2 JSP web tier JSP Model 1 JSP 1-3 Model 1 JSP servlet JSP JavaBeans JSP JSP Model 2 servlet servlet controller servlet JSP servlet 1-4 8 Model 2 JSP servlet authentication centralized login authorization i18n servlet JSP JSP servlet / Model 2 Model 1 Model 2 MVC Model-View-Controller MVC MVC Model 2 1.5 Model 1 MVC MVC Java Smalltalk MVC Smalltalk Model 2 JSP JSP design pattern MVC MVC model view controller MVC 9 MVC stateless push mechanism pull approach 1.5.1 MVC MVC two-tier web tier Java ResultSet TopLink CocoBase ORM object-to-relational mapping EJB EJB EJB 2.0 MVC local interface entity bean remote call JavaBeans session bean JavaBeans data transfer object 1.5.2 MVC MVC HTML JSP HTML JSP JavaScript MVC stateless session data 10 HTML JSP WML HTML 1.5.3 MVC MVC 1. Java servlet HTTP 2. 3. 4. 5. Front Controller pattern Edition J2EE Java 2 Platform, Enterprise http://java.sun.com/blueprints/patter ns/index.html JSP controller servlet 1.6 framework pattern generic behavior 11 Java class interface library function routine invoke extension point upside-down 1-5 1.6.1 Struts Struts Craig R. McClanahan JSP 2000 Craig ASF Servlet Tomcat JavaOne ApacheCon Struts Struts Struts general availability release GA Struts committer Struts developer repository Struts 12 1.6.2 Struts Struts Struts User mailing list Struts Developer http://jakarta.apache.or g/site/mail.html http://jakarta.apache.or g/site/mail2.html Jakarta Struts Struts Struts http://jakarta.apache.org/struts/ B 1.7 Jakarta Struts Struts Java Struts Java ASP Microsoft Active Server Pages ASP ASP ASP+ Struts JSP JSP JSP servlet ASP Struts Microsoft Application Block User Interface Process UIP UIP .NET 1.7.1 Struts MVC Struts 13 1. 2. 3. 4. 5. 1.7.2 Barracuda Barracuda Model 2 Struts JSP Barracuda template engine component XMLC user interface XMLC Java HTML Java DOM API XML Document Object Model Java Barracuda HTML validation Barracuda Barracuda http://barracudamvc.org/Barracuda/index.html 1.7.3 Cocoon Stefano Mazzocchi 1999 1 Cocoon Cocoon Cocoon ASF XML XML XSLT SAX Extensible Stylesheet Language Transformations Simple API for XML XML Cocoon 2.0 pipeline Cocoon XML API Cocoon 14 Cocoon RDBMS LDAP Cocoon http://cocoon.apache.org 1.7.4 Expresso Jcorporate Expresso Expresso EJB EJB EJB Expresso Expresso Struts Struts Expre s s o http://www.jcorporate.com 1.7.5 Freemarker Velocity WebMacro template engine Freemarker HTML Freemarker Java servlet HTML servlet HTML HTML BSD Freemarker Velocity Struts Freemarker Freemarker http://freemarker.sourceforge.net Jakarta Velocity Java Freemarker Velocity SQL PostScript XML Velocity Turbine Velocity Velocity Velocity http://jakarta.apache.org/velocity Java servlet We b M a c r o WebMacro lightweight WebMacro WebMacro servlet container http://www.webmacro.org 1.7.6 Maverick Maverick MVC JSP Maverick XML XSLT MVC Maverick reflection Velocity JavaBean DOM API XML XSLT Maverick http://mav.sourceforge.net 15 1.7.7 SiteMesh SiteMesh SiteMesh Decorator pattern SiteMesh Servlet JSP XML J2EE SiteMesh CGI SiteMesh http://www.opensymphony.com/sitemesh 1.7.8 Jakarta Turbine Turbine servlet Jakarta Tu r b i n e Tu r b i n e Turbine http://jakarta.apache.org/turbine 1.7.9 WebWork We b Wo r k OpenSymphony OpenSymphony SourceForg e J2EE OpenSymphony http://www.opensymphony.com We b Wo r k Pull HMVC Hierarchical Model View MVC Controller We b Wo r k push pull We b Wo r k servlet Swing WebWork http://www.opensymphony.com/webwork 1.7.10 Spring Framework Spring J2EE J2EE Rod Johnson Spring Spring Vissides Gamma Helm Johnson Decorator pattern Addison Wesley http://www.springframework.org Design Patterns structual design pattern 16 1.7.11 JavaServer Faces 2001 JSR Java Specification Request JavaServer Faces JSF Java Java JSR Servlet JSP JSP HTML pluggable rendering kits JSR API Java API JSR JSF Struts JSR Struts Jakarta Struts Struts JSF Craig McClanahan Struts JSR 2 18 http://www.jcp.org/jsr/detail/127.jsp