【J2EE十三个规范】Web应用层之JSP和Servlet

简介:
【学习概要】
    本篇博客开始将会开始总结J2EE十三个规范的内容,在学习完十三个规范之后,宏观梳理了一遍,将其进行归类和联系,十三个规范是什么是必须要知道的。下面我们就从Web应用层开始。
【学习笔记】
    一.是什么
    1.什么是JSP?
    JSP与ASP、PHP等语言相似,是运行在服务端的语言。
    JSP,Java Server Pages,是一种动态网页开发技术。 它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。
    2.什么是Servlet?
    Servlet,Java Servlet,是用java编写的服务端程序。其功能在于交互式地浏览和修改数据,生成动态Web内容。
    二.有什么
    1.一个JSP页面的组成部分:
  •     静态数据,如HTML,这点大家都不陌生。
  •     JSP指令,如include指令。JSP指令控制JSP编译器如何去生成Servlet。
  •     JSP脚本元素和变量,有三种基本的脚本元素,作用是使java代码可以直接插入Servlet。
  •     JSP动作,是一系列可以调用内建于网络服务器中的功能的XML标签。
  •     用户自定义标签
    2.Servlet的生命周期
  •     客户端请求该 Servlet;
  •     加载 Servlet 类到内存;
  •     实例化并调用init()方法初始化该 Servlet;
  •     service()(根据请求方法不同调用doGet() 或者 doPost(),此外还有doHead()、doPut()、doTrace()、doDelete()、doOptions());
  •     destroy()。    
    三.Eclipse JSP/Servlet环境搭建
    在上篇博客中,自己写到了各种软件安装和环境搭建遇到的问题。在拥有了Eclipse环境的前提下,下面就来创建两个简单的实例。
    1.Eclipse JSP实例

    下面是一个JSP文件的代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>菜鸟教程</title></head><body><%out.println("Hello World!");
%>
</body></html>
      输出效果如下:

  2.Eclipse Servlet实例

下面是一个Servlet文件代码:

package com.runoob.test;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class HelloServlet
 */
@WebServlet("/HelloServlet")
public class HelloServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public HelloServlet() {
        super();
        // TODO Auto-generated constructor stub
    }
    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        response.setCharacterEncoding("GBK");
        response.getWriter().write("Hello Servlet!");
        //response.getWriter().append("Served at: ").append(request.getContextPath());
    }
    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }
}
输出效果如下:


【学习比较】
    在上面的两个简单的实例中,我们可以看出JSP和Servlet都可以输出一样的效果,但两者又不一样。并且JSP也可以和我们.NET平台下的语言进行比较。所以,下面我们将各种语言进行简单比较。
    1.从三层思想看JSP与Servlet:
    三层我们都知道分别是数据层、业务层和表现层。Servlet用来写业务层是很强大的,但对于写表现层就很不方便。JSP则主要是为了方便写表现层而设计的,当然也可以写业务层。其实,JSP是基于java Servlet API形成的。
    2.JSP与ASP的比较:
    两者都是常用的动态网页技术,也都可以嵌入HTML中,但两者也有区别:
  •     Web服务器的支持:支持ASP的服务器只有微软和Personal Web Server,而大多数服务器都支持JSP。
  •     平台的支持:Windows平台可以很好地支持ASP,但很难移植到其它平台。JSP具有平台独立性。
  •     组件模型:ASP使用的是基于Win32的COM组件模型,JSP是建立在可重用的、跨平台的组件。
  •     脚本语言:ASP使用VBScript或Jscript作为脚本语言,而JSP可以使用java语言或Jscript。
【学习感悟】
    对于j2ee的十三规范学习,其实自己感觉是比较费劲的,毕竟是刚开始接触java编程环境,很多东西都是陌生的,从学习的内容上看,概念模糊,区分不清,所以,自己也是在结束视频的学习后,慢慢梳理,和之前的学习建立联系,多查资料,多了解,尽可能地将十三个规范弄得更明白些。

目录
相关文章
|
4月前
|
自然语言处理 Java 数据库连接
掌握JSP页面编程:动态生成Web内容
【4月更文挑战第3天】Java Server Pages (JSP) 是一种用于创建动态Web内容的Java技术,它结合HTML并允许在页面中嵌入Java代码。JSP支持代码片段、表达式语言(EL)和JSTL标签库,简化动态内容生成。当服务器接收到请求时,执行JSP中的Java代码并将结果嵌入HTML返回给客户端。示例展示了如何显示当前日期和时间。JSP可与Servlet、JavaBeans、数据库等结合,用于构建功能丰富的交互式Web应用。
104 5
掌握JSP页面编程:动态生成Web内容
|
11月前
|
存储 Java 关系型数据库
JSP考试质量分析系统myeclipse开发mysql数据库bs框架java编程web网页结构
JSP 考试质量分析系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发,系统主要采用B/S模式开发。
212 1
|
3月前
|
自然语言处理 前端开发 Java
Servlet与JSP:Java Web开发的基石技术详解
【6月更文挑战第23天】Java Web的Servlet与JSP是动态网页的核心。Servlet是服务器端的Java应用,处理HTTP请求并响应;JSP则是结合HTML与Java代码的页面,用于动态内容生成。Servlet通过生命周期方法如`init()`、`service()`和`destroy()`工作,而JSP在执行时编译成Servlet。两者在MVC架构中分工,Servlet处理逻辑,JSP展示数据。尽管有Spring MVC等框架,Servlet和JSP仍是理解Web开发基础的关键。
75 12
|
3月前
|
存储 Java 关系型数据库
基于Servlet和JSP的Java Web应用开发指南
【6月更文挑战第23天】构建Java Web应用,Servlet与JSP携手打造在线图书管理系统,涵盖需求分析、设计、编码到测试。通过实例展示了Servlet如何处理用户登录(如`LoginServlet`),JSP负责页面展示(如`login.jsp`和`bookList.jsp`)。应用基于MySQL数据库,包含用户和图书表。登录失败显示错误信息,成功后展示图书列表。部署到Tomcat服务器测试功能。此基础教程为深入Java Web开发奠定了基础。
76 10
|
3月前
|
缓存 负载均衡 安全
Servlet与JSP在Java Web应用中的性能调优策略
【6月更文挑战第23天】在Java Web中,Servlet和JSP调优至关重要,以应对高并发和复杂业务带来的性能挑战。优化包括Servlet复用、线程安全、数据库连接池,以及JSP的编译优化、使用JSTL、页面缓存和静态内容分离。全局优化涉及负载均衡、异步处理和缓存策略。通过这些实践,开发者能提升应用响应速度和吞吐量,确保高负载下的稳定运行。
55 7
|
3月前
|
搜索推荐 Java 数据库连接
探索Java Web开发:Servlet与JSP的协同工作原理
【6月更文挑战第23天】Java Web开发中,Servlet和JSP协同打造动态网站。Servlet是服务器端的Java程序,处理HTTP请求并执行复杂逻辑;JSP则结合HTML和Java,生成动态内容。Servlet通过`doGet()`等方法响应请求,JSP在首次请求时编译成Servlet。两者常搭配使用,Servlet处理业务,JSP专注展示,通过`RequestDispatcher`转发实现数据渲染。这种组合是Java Web应用的基础,即使新技术涌现,其价值仍然重要,为开发者提供了强大的工具集。
43 7
|
2月前
|
前端开发
网页设计04 WEB端按钮设计技巧,交互规范参考资料,点击事件,什么是3:1 ,3:1 的介绍,网页设计牵扯的知识整理成口诀
网页设计04 WEB端按钮设计技巧,交互规范参考资料,点击事件,什么是3:1 ,3:1 的介绍,网页设计牵扯的知识整理成口诀
|
4月前
|
XML JavaScript 前端开发
Web标准是一系列由W3C和其他组织制定的规范
【5月更文挑战第26天】Web标准是一系列由W3C和其他组织制定的规范
45 2
|
4月前
|
XML 前端开发 Oracle
16:JSP简介、注释与Scriptlet、Page指令元素、Include操作、内置对象、四种属性-Java Web
16:JSP简介、注释与Scriptlet、Page指令元素、Include操作、内置对象、四种属性-Java Web
30 2
|
4月前
|
前端开发
【Web前端】CSS基本语法规范和引入方式&&常见选择器用法&&常见元素属性
【Web前端】CSS基本语法规范和引入方式&&常见选择器用法&&常见元素属性