JavaWeb期末总结 2019-03-28 14:38 第一章 Web开发基础知识(简单描述) 表单(续) 表单元素 元素括起整个表单,并给出一些基本定义。表单仅占用HTML文档的部分空间;实际上,一个HTML文档可以包含几个独立的、完成不同功能的表单。method指定了信息传递给HTTP服务器的方法;action给出与处理提交信息的脚本相关的URL(如“registinfor.asp”,“registinfor.jsp”)。 表单输入元素 ? 用来把不同的字段放在表单里,以便用户输入信息。 ? name属性指定该字段在某个表单中的唯一名称; ? 可选的value属性给出该标记的默认值。 ? 在提交表单时,向Web服务器呈上以一组用“?”开头并用“&”号分开的一组“名字=值”形式的信息,如http://…/Scriptname?name=me&address=here&time=now ? type属性给出所使用标记的样式,“string”可以是: ? CHECKBOX(复选框)。 ? RADIO(单选按钮) ? TEXT(单行的文本输入栏)。 ? IMAGE(图像放在表单里) ? SUBMIT(提交按钮) ? RESET(清除按钮) ? HIDDEN(在表单中保留不供显示的内容) ? FILE(上传文件) 第二章 Servlet开发 1.什么Servlet Servlet是用Java语言编写的运行在服务器端的小应用程序,能够接收Web客户端的请求,并能对Web客户端进行响应,通常是通过HTTP(HyperText Transfer Protocol)协议进行工作的。(可以认为Servlet是服务器端的一个动态Java程序,用户通过访问这个程序获取服务器的服务。) 2. Servlet的主要方法 Servlet是一个Java类,通常会有3类方法,分别是: init方法,用于初始化。 destroy方法,用于释放资源。 service方法,服务类方法,对用户的请求进行处理,并对用户进行响应,几乎所有处理功能都在这里完成。这类方法可以有多个,最常用的是doGet和doPost方法。 3. Servlet运行原理(生命周期) ?装载Servlet:这项操作一般是动态执行。有些服务器提供了相应的管理功能,可以在启动的时候就装载Servlet,并能够初始化特定的Servlet: ?创建过程:创建一个Servlet实例 ; ?初始化过程:调用Servlet的init()方法 ; ?响应服务:如果容器接收到对此Servlet的请求,那么它调用Servlet的service()方法 ; ?销毁释放资源:实例被销毁,通过调用Servlet的destroy()方法销毁Servlet 。 2.3 Servlet运行原理 ? 1.Servlet的工作过程如下 ① Servlet容器接收到客户端的请求时,先判断用户所请求的Servlet对象是否存在。如果不存在,则加载Servlet类、创建Servlet对象并实例化,然后调用init方法进行初始化。② 容器创建request和response对象,并且创建一个线程,调用Servlet对象的service方法(间接调用doGet方法或者doPost方法)。 ③ service方法产生响应,容器将响应发回客户端。 ④ 容器销毁reqeust和response对象以及相应的线程。 ? 注意: ? 加载Servlet类、创建对象、调用初始化方法init和销毁方法destroy都只有一次。 ? 当Web应用被卸载或者服务器被关闭的时候,系统卸载Servlet,调用destroy方法释放资源。 ? 2.Servlet的加载有两种方式: ? 第一次请求的时候加载。 ? 服务器启动的时候加载。 2.4开发Servlet基本流程 开发一个Servlet程序基本包括以下几步: (1)编写Servlet 1、引入用到的包,需要的导入的包有:javax.servlet.*,javax.servlet.http.*等 2、定义类的基本框架并继承HttpServlet 3、重写成员方法。如果需要对Servlet进行初始化,需要重写init方法。如果需要在卸载Servlet的时候执行一些功能,可以重写destory方法。一般情况下,根据需要完成的功能只需要重写服务类方法即可。服务类方法包括doGet方法和doPost方法等。 import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class TestServlet extends HttpServlet { public void init() throws ServletException { } //Process the HTTP Get request public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } } Servlet中获取参数:隐含对象Request String request.getParamter(参数名称); 例子: String userName=“”; userName=request.getParameter(“username”); System.out.println(“userName”+userName); 下面是一个具体事例: import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class HelloServlet extends HttpServlet { public HelloServlet() { super(); } public void destroy() { super.destroy(); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding(\ response.setContentType(\ String name=request.getParameter(\ PrintWriter out = response.getWriter(); if(name!=null){ out.write(\ out.flush(); out.close(); } public void init() throws ServletException { // Put your code here } } Servlet在web.xml(配置文件) 每个Servlet在web.xml中都对应一对标签和一对标签。其中: 标签用于声明Servlet。其中的子标签又包括: 用于声明Servlet的名字,是web.xml中内部使用的名字。 标签:用于声明Servlet所对应的类名。 标签用于进行Servlet映射。其中的子标签又包括: 标签:表示Servlet的名字,需要和上面标签的子标签中声明的名字保持一致。 标签:用于配置Servlet的访问地址。 HelloServlet HelloServlet HelloServlet /servlet/HelloServlet (4)部署Servlet ?Servlet编写完成之后,需要部署到服务器才能访问,编译好的文件需要放在Web应用的WEB-INF\\classes下面。 ?利用MyEclipse创建的Servlet,成功编译后其.class文件已自动放置到WEB-INF\\classes目录下。 第四章 JSP基础语法 3.1 JSP的基本概念 1、什么是J S P: Java Server Page Java的动态网页技术,是Java Web应用开发的界面技术; JSP是在Servlet技术基础上,为了方便页面开发的简化设计,是将Java逻辑与界面设计分开,开发更方便; HTML中嵌入Java脚本: HTML语法的 java 扩展,加入新的标签(<%, %>,…); 2、 J S P的特点: 从技术上改进了Servlet技术,Servlet是Java代码和HTML静态代码的混合代码;而JSP是将Java代码嵌入到HTML静态代码中,直观编写简单; JSP不需要编译(实际上是由服务器自动监测JSP文件的变化,由服务器将其翻译成Java代码后然后再进行编译并再第一次请求时创建一个Servlet实例。正因为如此,第一次访问JSP页面时会后延迟); JSP以静态代码为主,Java代码为辅 ;功能由强大的Java语言和J2EE平台提供支持 JSP示例(Hello.jsp) <%@ page contentType=\<%@ page import=\ <% for ( int i=0; i<2; i++ ) { %> 你好 <% } %> JSP执行过程(复习) 3.2 JSP语法 语法概述 ? JSP原始代码中包含了JSP元素和Template(模板) data两类 ? Template data指的是JSP引擎不处理的部分,即标记<%……%>以外的部分,例如代码中的HTML的内容等 ,这些数据会直接传送到客户端的浏览器 ? JSP元素则是指将由JSP引擎直接处理的部分,这一部分必须符合JSP语法,否则会导致编译错误。 共5页: 上一页12345下一页 JavaWeb期末总结.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决! 下载这篇word文档