Java Web基础:第三讲 Java Web应用概述

来源:互联网 发布:数控编程理论与实训 编辑:程序博客网 时间:2024/05/17 07:40

 

Java Web应用概述
Java Web应用的核心技术包括以下几个方面:
u       JSP,进行输入输出的基本手段;
u       JavaBean,完成功能的处理;
u       Servlet,对应用的流程进行控制;
u       JDBC,是与数据库进行交互不可缺少的技术;
u       JSTL和表达式语言EL,完成JSP页面中各种信息的控制和输出。
 
JSP主要完成输入和输出的功能,主要是由HTML代码、客户端脚本(JavaScript等)、JSP的标签和指令、自定义标签库构成。下面是一个典型的JSP的例子:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
用户信息如下
<table>
   <tr>
      <th>用户编号</th>
      <th>用户名</th>
      <th>生日</th>
   </tr>
   <c:forEach items="${userlist}" var="user">
      <tr>
          <td>${user.userid}</td>  
          <td>${user.username}</td>
          <td>${user.birthday}</td>
      </tr>
   </c:forEach>
</table>
 
简单解释如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
这两行是JSP指令
用户信息如下
<table>
   <tr>
      <th>用户编号</th>
      <th>用户名</th>
      <th>生日</th>
   </tr>
以上是html代码
   <c:forEach items="${userlist}" var="user">
标准标签库标签
          <td>${user.userid}</td>
          <td>${user.username}</td>
          <td>${user.birthday}</td>
HTML中嵌套表达式语言
 
JavaBean完成系统的所有的处理功能JavaBean就是Java中的普通的Java所以没有特殊的地方。另外,Java Web技术中提供了多个与JavaBean操作相关的标签。
 
Servlet技术,可以完成与JSP相同的功能。但是其表现形式与JSP不同,JSP是以脚本文件的形式存在,而Servlet则是以Java文件的形式存在。所以Servlet也是Java类,是特殊的Java类,在Java Web技术中主要完成控制功能,负责协调JSP页面和功能JavaBean之间的关系。下面是一个典型的Servlet的例子:
package servlets;
 
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import beans.*;
public class LoginServlet extends HttpServlet{ // 所有的Servlet需要继承HTTPServlet
       //主要方法
   public void doGet(HttpServletRequest request,HttpServletResponse response)
      throws IOException,ServletException{
     
      //获取JSP页面信息,获取用户输入的用户ID和口令
      String userid = request.getParameter("userid");
      String userpass = request.getPrameter("userpass");
     
      // 创建模型对象
      UserBean user = new UserBean();    
      // 调用业务方法进行验证
      boolean b = user.validate(userid,userpass);
 
      // 要转向的文件,选择响应用户的界面
      String forward;
      if(b)
         forward = "success.jsp";
      else
         forward = "failure.jsp";
      
      // 对用户响应
      RequestDispatcher dispatcher
 = request.getRequestDispatcher(forward);
      dispatcher.forward(request,response);
   }
}
 
与数据库的交互几乎是所有Java Web应用不可缺少的,并且可能是各种类型的数据库管理系统,但现在多数都是关系型数据库管理系统。Java中提供了JDBC技术来完成Java应用与各种数据库系统之间的交互。虽然JDBC技术不属于Java Web技术,但是在Java Web技术中不可避免的要使用JDBC技术。所以JDBC是也算是Java Web开发中比较重要的技术之一。
 
JSTL和表达式语言是在JSP2.0之后引入的,主要目的是为了方便用户在JSP页面中使用常用功能。典型的是信息的输出,因为JSP界面的主要功能就是展示信息,使用表达式语言使得信息的显示非常简单。就像在上面的JSP代码中的${user.userid},完成的功能是从request(后面的章节会介绍)中获取user对象的userid属性。如果使用Java代码,就没有这么简单了。另外JSTL中提供了大量常用的功能,例如选择结构和循环结构,在上面的JSP例子中就使用了<c:forEach>标签完成循环控制。
 
注:在本书的后面部分中,如果没有特殊说明,Web应用都表示Java Web应用。
 
上一讲:第二讲 Web应用概述
下一讲:第四讲 Java Web应用的文档结构
 
李绪成 CSDN Bloghttp://blog.csdn.net/javaeeteacher
邀请您为好友:http://student.csdn.net/invite.php?u=124362&c=7be8ba2b6f3b6cc5
原创粉丝点击