Servlet是什么
简单来说,Servlet就是Java的类,它可以被看作是位于客户端和服务器端的一个中间层,负责接收和请求客户端用户的响应。Server使用了很多Web服务器都支持的API,可调用和扩展Java中提供的大量程序设计接口、类、方法等功能。Servlet具有高效率、简单方便的技术特点。在创建Servlet时一定要继承HttpServlet。
Servlet的生命周期
每个生命都有其特殊的生命周期,Servlet也不例外,它有三个阶段,分别是:初始化( init()),运行( service()),消亡( destory()),代码如下:
//初始化
public void init() throws ServletException {
// TODO Auto-generated method stub
super.init();
}
//运行
protected void service(HttpServletRequest arg0, HttpServletResponse arg1)
throws ServletException, IOException {
// TODO Auto-generated method stub
super.service(arg0, arg1);
}
//销毁
public void destroy() {
// TODO Auto-generated method stub
super.destroy();
}
doGet和doPost方法
通过doGet和doPost这两个方法,可以在控制台显示出登录时用户在页面输入的账户和密码,代码如下:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String name = req.getParameter("name");
String pwd = req.getParameter("pwd");
System.out.println("账号:"+name+"/密码:"+pwd);
System.out.println("get...");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String name = req.getParameter("name");
String pwd = req.getParameter("pwd");
System.out.println("账号:"+name+"/密码:"+pwd);
System.out.println("post...");
}
web.xml工具类
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>login</servlet-name>
<servlet-class>org.zjh.LoginServelt</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>login</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
</web-app>
index.jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<form action="login" method="post">
用户名:
<input type="text" name="name"/><br/>
密 码:
<input type="password" name="pwd"/><br/>
<input type="submit" value="登录"/>
</form>
</body>
</html>
登陆页面
三段代码完成后,在浏览器地址栏中输入自己的本机地址就可以进行简单的登录操作了,效果如下:
这样,一个简单的登陆页面就制作完成了。通过Servlet还可以完成像这样很多的请求与响应,在开发过程中,系统也会提供大量的实用工具方法。
登录、注册成功页面