目录
Servlet 为创建基于 web 的应用程序提供了基于组件、独立于平台的方法,可以不受 CGI 程序的性能限制。Servlet 有权限访问所有的 Java API,包括访问企业级数据库的 JDBC API。
Servlet 是什么?
Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。
使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。
Servlet 可以使用 javax.servlet 和 javax.servlet.http 包创建,它是 Java 企业版的标准组成部分,Java 企业版是支持大型开发项目的 Java 类库的扩展版本。
创建servlet有两种方式
- 实现servlet接口
- 继承HTTPServlet类
servlet生命周期
- 1 实例化 第一次请求时,实例化servlet对象
- 2 init()初始化 获取servlet初始化配置信息,只执行一次
- 3 service()处理客户端请求 service/doget/dopost反复的执行
- 4 destroy()销毁 服务器/tomcat停止
request常用方法
System.out.println("获取服务器名称:"+request.getServerName());
System.out.println("获取端口号"+request.getServerPort());
System.out.println("获取协议"+request.getScheme());
System.out.println("上下文对象:"+request.getServletContext());
System.out.println("servlet路径:"+request.getServletPath());
System.out.println("上下文路径/根路径:"+request.getContextPath());
System.out.println("客户端IP地址:"+request.getRemoteAddr());
System.out.println("获取请求方式:"+request.getMethod()); //get,post
System.out.println("获取请求参数列表信息"+request.getQueryString());
获取请求头信息
String host=request.getHeader("Host");
System.out.println("解析请求头信息host="+host);
解析请求头信息
//Enumeration为枚举
Enumeration<String> enums=request.getHeaderNames(); //获取请求头信息的键值
while(enums.hasMoreElements()){
String aname=enums.nextElement();//
String value=request.getHeader(aname);
System.out.println(aname+"--"+value);
}
列:简单的web项目实现
数据库实现
java代码实现
java代码个类实现步骤
导包
将三个包复制到 lib文件夹下。注:不需要构建puild path,只需复制
html代码
创建register.html页面
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="register.do">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="username" size="30"/></td>
</tr>
<tr>
<td>密 码:</td>
<td><input type="password" name="psw"/></td>
</tr>
<tr>
<td>性别:</td>