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

 

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 应用。
 
 
李绪成 优快云 Blog http://blog.youkuaiyun.com/javaeeteacher
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值