java web开发学习(一):java web的发展历史

Java Web开发技术的发展经历了如几个阶段:

1、servlet技术

2、JSP技术

3、模型1:JSP+JavaBean

4、模型2:JSP+JavaBean+Servlet

5、框架

6、可视化开发

一、Servelet技术阶段

Servlet是Java技术中最早的Web解决方案,Servlet与普通Java类的编写非常类似。使用Servlet技术,页面中的所有信息需要通过输出语句来生成。下面的代码(部分代码)生成的页面的内容就是“HelloWorld!”。

public void doGet(HttpServletRequest request,HttpServletResponse)
   throws IOException,ServletException
{
    response.setContentType("text/html;charset=gb2312");
    PrintWriter out = response.getWriter();
    out.println("");
    out.println("Hello World!");
    out.println("");
    out.println("

Hello World!

");     out.println(""); }

如果采用HTML语言直接生成相同功能的界面,将非常简单。正因为此,Java推出了JSP技术,JSP可以有效解决Servlet生成页面比较困难的问题。

二、JSP技术阶段

JSP技术的目标是快速开发网站,在网页中嵌入Java代码完成网站。例如下面的代码就是1个简单的JSP例子:


   测试
   
      第一阶段<% String str = “test” ; out.println(str); %>

如果希望进行一些处理,直接在界面中使用<% %>脚本标识嵌入Java代码。如果要开发具有大量网页内容的网站效率比较高,可以先使用网页编辑工具编写网页,然后在网页中嵌入处理代码即可。但是缺点是:网站的输入输出、处理、控制全部夹杂在一起,维护不方便。当网站中需要进行大量的处理代码的时候,JSP文件将很难维护,并且代码也不容易共享。
因为JSP在编写网页方面具有优势,而编写处理代码存在很多问题,所以产生了模型1,把JSP中的处理代码使用JavaBean来实现。

三、模型1:JSP+JavaBean阶段

JavaBean是使用Java语言编写的组件,简单的理解,可以认为JavaBean是比较特殊的Java类。JavaBean会把网站中处理过程进行封装,这样的结果就是在JSP文件中仅仅是输入输出功能和控制功能,处理过程放在JavaBean中,然后在JSP中调用JavaBean的功能,JSP提供了若干标签支持调用。下面的例子展示了这种模型。
JavaBean文件:
 

package test;
public class PrintMessage
{
   public String print()
   {
      return “使用JavaBean返回信息”;
   }
}

页面文件:

<%@ page import=”test.*” %>


   测试
   
      第一阶段<% out.print(printMessage.print()); %>

这种模型的优点是:业务处理由JavaBean完成,减少了页面中的代码。缺点是:页面中仍然有用于控制的代码。

四、模型2:JSP+Javabean+Servelet阶段

在模型2中,把JSP中的控制功能提取出来使用Servlet实现。这样,JavaBean强调的是功能,Servlet主要用于控制。从完成的功能来说,JSP和Servlet是相同的,但是JSP主要以标签(HTML标签和JSP标签)为主,Servlet是Java代码。JavaBean和Servlet都是Java代码,但是Servlet能够接收请求,用户能够直接访问,JavaBean不能接收请求,需要由JSP或者Servlet调用。
这种模型的特点:JSP完成输入和输出,主要使用HTML标签和JSP标签。Servlet主要完成控制,接收请求,调用业务处理(JavaBean),根据调用的结果找到一个JSP页面对用户进行响应。JavaBean完成所有的处理过程。
这种方式实际上是MVC模式的采用。MVC模式由3部分组成:M表示模型(模拟现实事物),主要用于处理过程;V表示视图,实际上就是输入和输出功能;C表示控制器,主要控制程序的流程。

五、框架阶段

随着Java Web应用技术的发展,出现了大量的框架包括Web层框架和持久层框架。
Web层框架通常可以提供一些Web应用的通用功能,用户在编写应用的时候只需要关注自己比较特殊的东西即可。例如,Servlet作为控制器完成的功能包括:获取用户的输入信息;对信息进行验证、转换;使用这些信息调用业务逻辑(JavaBean的方法);然后选择界面对用户响应。如果把获取的信息设置成变量、要进行的验证和转换进行配置、要调用的方法进行配置、要响应的界面进行配置,这样Servlet就可以通用了。在本书的第二部分对流行的Web层框架Struts2和JSF进行了介绍,并自己实现了1个简单的框架。
持久层框架,主要是解决数据库访问问题,同样是把数据库访问中通用的内容提取出来,在编写应用的时候只编写特殊的东西。例如,要把用户信息和图书信息添加到数据库中,采用JDBC技术,编写的两段代码的区别是表名不同,列与属性的对应关系不同。持久层框架就可以完成这个添加工程,用户只需要提供表名并且提供列与属性的对应关系。书中第二部分持久性部分将对持久层框架进行介绍。

六、可视化开发

随着集成开发环境对于Web应用支持的增强,可视化Web应用开发(JSF技术)应该是未来的发展趋势。这种方式的开发就像以前在C++Builder或者VB中开发应用一样方便。
--------------------- 
作者:老李-大连 
来源:CSDN 
原文:https://blog.csdn.net/javaeeteacher/article/details/6478450 
版权声明:本文为博主原创文章,转载请附上博文链接!

你可能感兴趣的:(java)