中国开发网: 论坛: Java/J2ME: 贴子 436689
品雪: Java与WEB
Java可以以三种不同的方式参与web开发:
1、applet:古老但仍旧十分有用的技术。这种java程序实际上是在浏览器内置的vm里执行的,可以将GUI的交互能力带给WEB页面。
2、cgi:更古老的技术,基本上任何一种能够处理stdin/out的程序都可以做成cgi。
3、servlet/jsp:Servlet对WEB开发活动的一种抽象,经由http传递进服务器的信息被封装成HttpServletRequest,由服务端程序产生并经http发送给浏览器的信息被封装成HttpServletResponse,服务端程序则抽象成一个Servlet Container,它嵌在Web Server里,服务端应用变成一个一个的servlet 对象,这些对象在被访问时实例化,并长期生存在container里,因些性能很好,但相应的也比较吃内存。
jsp就是servlet,不过它是在运行时即时编译成servlet的,以便以符合html页面开发的工作习惯编制servlet。

4、JSP Model 1
只使用jsp来开发WEB应用,工作方式与一般的php/asp等并无二致。缺点很明显:业务逻辑与html表示混在一起,难以维护。

5、JSP Model 2
jsp只包含表示,通过useBean、taglib等方式将程序逻辑剥离成单独的类

6、Struts
通常应用由一组servlet构成,每个都要处理HttpServletRequest,获取并转换输入参数,验证输入有效性,业务逻辑,生成html或转向某个jsp或转向另一个servlet等完整的过程。
Struts将所有的http请求都集中到一个Dispatcher Servlet里,将业务逻辑映射成Action对象,通过配置文件将Action与其所需要的输入(Form)、验证(Validator)和导航(Navigation)关联起来。
Struts是对前端控制器模式等众多最佳实践的集成。

7、JSF
与Struts类以,通过一个Dispather Servlet将用户请求转换分发给不同的对象。但JSF对表现层有完整的支持,开发者可以用它的tag建立一个GUI Component树,并以事件驱动的方式将UI与业务逻辑联系起来。
JSF在工具支持下开发WEB就象Delphi开发Win32 GUI一样容易。

8、AJAX
ajax是随着对web ui复杂度和易用性要求的提高而流行起来的,核心思想就是异步http交互、局部刷新web页面。

看上去,对于MIS类的应用,JSF over AJAX是比较有前景的,对于重负载的互联网应用将表现层完全移到browser后台用servlet+jax-ws是比较有前景的。

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录