JavaWeb Servlet开发注册页面实例


Posted in Java/Android onApril 11, 2022

Servlet-注册页面

环境准备:

本文所用到环境如下:

软件:Eclipse(2018)

服务器:Tomcat 9

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

在index.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>Insert title here</title>
</head>
<body>

<h1>用户注册</h1>
<div>
    <form action="RegisterServlet" method="get">
    <table>
    <tr>
    <td>登录名:</td> 
    <td><input type="text" name="username" required> (可包含a-z、0-9和下划线)</td>
    </br>
    <tr>
    <td>密码:</td> 
    <td><input type="password" name="password" required> (至少包含6个字符)</td>
    </tr>
    <tr>
    <td>再次输入密码:</td> 
    <td><input type="password" name="confirmPassword" required></td>
    </tr>
    <tr>
    <td>电子邮箱:</td> 
    <td><input type="text" id="email" name="youxaing" required> (必须包含@字符)</td>
    </tr>
    <tr>
    <td>性别:</td> 
    <td><input type="radio" name="gender" value="男" required>男
        <input type="radio" name="gender" value="女" required>女</td>
    </tr>
     <td>头像:</td> 
    <td><input type="file" name="bfile" value="选择文件" accept="image/*" ></td>
    </tr>
     <td>爱好:</td> 
    <td>
    <p>
   	  <input type="checkbox" name="hobby" value="运动"> 运动
      <input type="checkbox" name="hobby" value="聊天" > 聊天
      <input type="checkbox" name="hobby" value="玩游戏" > 玩游戏</p>
      
    </td>
    </tr>
   
     </tr>
     <td>喜欢的城市:</td> 
    <td>
         <select name="selectList">
         <option>[请选择]</option>
         <option>北海</option>
         <option>海南</option>
         <option>重庆</option>
         <option>杭州</option>
         <option>深圳</option>
         <option>成都</option>
     	 </select>
    </tr>    
    </table>
    <div>
    <p>
       <input type="submit" value="提交">
       <input type="reset" value="重置">
     </p>
     </div>
    </form>
</div>

</body>
</html>

效果为:

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

Login_Servlet.java代码

package onlyxiu_ceshi.com;

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;
import javax.servlet.http.HttpSession;

/**
 * Servlet implementation class Login_Servlet
 */
@WebServlet("/Login_Servlet")
public class Login_Servlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Login_Servlet() {
        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.getWriter().append("Served at: ").append(request.getContextPath());
		
		
		 request.setCharacterEncoding("UTF-8");//处理乱码问题
	        response.setCharacterEncoding("UTF-8");//处理乱码问题
	        //获得用户在register界面提交的数据
	        String username = request.getParameter("username");
	        String password = request.getParameter("password");
	        String confirmPassword = request.getParameter("confirmPassword");
	        String gender = request.getParameter("gender");
	        String youxaing = request.getParameter("youxaing");
	        String bfile = request.getParameter("bfile");
	        String hobby  = request.getParameter("hobby");
	        String selectList = request.getParameter("selectList");
	        //判断密码是否正确
	        if (password.equals(confirmPassword)){//如果密码相同,重定向到成功界面
	            HttpSession session = request.getSession();//获取session
	            session.setAttribute("session_username",username);
	            session.setAttribute("session_password",password);
	            session.setAttribute("session_gender",gender);
	            session.setAttribute("session_youxaing",youxaing);
	            session.setAttribute("session_bfile",bfile);
	            session.setAttribute("session_hobby", hobby);
	            session.setAttribute("session_selectList",selectList);
	           
	            request.getRequestDispatcher("SuccessServlet").forward(request, response);
	          //  response.sendRedirect("register_login.jsp");//重定向到成功页面
	        }else {//如果密码不同,通知用户密码输入不一样
	            request.getSession().setAttribute("passwordError","yes");
	            request.getRequestDispatcher("ErrorServlet").forward(request, response);
//	            response.sendRedirect("register.jsp");//重定向到登陆界面
	        }
	    }
	

	/**
	 * @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);
	}

}

配置web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>onlyxiu_ceshi</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  
  <servlet>
    <servlet-name>Login_Servlet</servlet-name>
    <servlet-class>onlyxiu_ceshi.com</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Login_Servlet</servlet-name>
    <url-pattern>/onlyxiu_ceshi/Login_Servlet</url-pattern>
  </servlet-mapping>
  
</web-app>

JavaWeb Servlet开发注册页面实例

ErrorServlet.java的代码

package onlyxiu_ceshi.com;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Arrays;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * Servlet implementation class ErrorServlet
 */
@WebServlet("/ErrorServlet")
public class ErrorServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public ErrorServlet() {
        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.getWriter().append("Served at: ").append(request.getContextPath());
		
		response.setHeader("Content-type","text/html; charset=UTF-8");
		String username = request.getParameter("username");
		String password = request.getParameter("password");
		String gender = request.getParameter("gender");
		String youxaing = request.getParameter("youxaing");
		String bfile = request.getParameter("bfile");
		String hobby = request.getParameter("hobby");
		String selectList = request.getParameter("selectList");
		PrintWriter out = response.getWriter();
		out.print("<h1>用户注册信息</h1>");
		out.print("用户名:\n"+username+"<br>");
		out.print("密码:"+password+"<br>");
		out.print("电子邮箱:"+youxaing+"<br>");
		out.print("性别:"+gender+"<br>");
		out.print("头像:"+bfile+"<br>");
		out.print("爱好:"+hobby+"<br>");
		out.print("喜欢的城市:"+selectList+"<br>");
//		out.print("登陆失败");
		out.close();
	}

	/**
	 * @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);
	}

}

SuccessServlet.java

package onlyxiu_ceshi.com;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * Servlet implementation class SuccessServlet
 */
@WebServlet("/SuccessServlet")
public class SuccessServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public SuccessServlet() {
        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.getWriter().append("Served at: ").append(request.getContextPath());
		response.setHeader("Content-type","text/html; charset=UTF-8");
		String username = request.getParameter("username");
		String password = request.getParameter("password");
		String gender = request.getParameter("gender");
		String youxaing = request.getParameter("youxaing");
		String bfile = request.getParameter("bfile");
		String hobby = request.getParameter("hobby");
		String selectList = request.getParameter("selectList");
		PrintWriter out = response.getWriter();
		out.print("<h1>用户注册信息</h1>");
		out.print("用户名:\n"+username+"<br>");
		out.print("密码:"+password+"<br>");
		out.print("电子邮箱:"+youxaing+"<br>");
		out.print("性别:"+gender+"<br>");
		out.print("头像:"+bfile+"<br>");
		out.print("爱好:"+hobby+"<br>");
		out.print("喜欢的城市:"+selectList+"<br>");
//		out.println("登陆成功");
		out.close();
	}

	/**
	 * @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);
	}

}

JavaWeb Servlet开发注册页面实例

JavaWeb Servlet开发注册页面实例

Java/Android 相关文章推荐
Java框架入门之简单介绍SpringBoot框架
Jun 18 Java/Android
spring项目中切面及AOP的使用方法
Jun 26 Java/Android
SpringBoot工程下使用OpenFeign的坑及解决
Jul 02 Java/Android
dubbo服务整合zipkin详解
Jul 26 Java/Android
浅谈sql_@SelectProvider及使用注意说明
Aug 04 Java/Android
Java面试题冲刺第十九天--数据库(4)
Aug 07 Java/Android
spring cloud 配置中心客户端启动遇到的问题
Sep 25 Java/Android
Java基于Dijkstra算法实现校园导游程序
Mar 17 Java/Android
Java 超详细讲解设计模式之中的抽象工厂模式
Mar 25 Java/Android
Spring Boot DevTools 全局配置学习指南
Mar 31 Java/Android
Android在Sqlite3中的应用及多线程使用数据库的建议
Apr 24 Java/Android
ConditionalOnProperty配置swagger不生效问题及解决
Jun 14 Java/Android
Java中的继承、多态以及封装
JAVA长虹键法之建造者Builder模式实现
Apr 10 #Java/Android
SpringCloud项目如何解决log4j2漏洞
Apr 10 #Java/Android
零基础学java之循环语句的使用
Apr 10 #Java/Android
零基础学java之带参数以及返回值的方法
Apr 10 #Java/Android
零基础学java之带返回值的方法的定义和调用
Apr 10 #Java/Android
零基础学java之方法的定义与调用详解
Apr 10 #Java/Android
You might like
php mssql 时间格式问题
2009/01/13 PHP
php中flush()、ob_flush()、ob_end_flush()的区别介绍
2013/02/17 PHP
PHP简单日历实现方法
2016/07/20 PHP
php 微信公众平台开发模式实现多客服的实例代码
2016/11/07 PHP
laravel如何开启跨域功能示例详解
2017/08/31 PHP
JavaScript 模拟类机制及私有变量的方法及思路
2013/07/10 Javascript
JS获取当前网页大小以及屏幕分辨率等
2014/09/05 Javascript
js控制文本框输入的字符类型方法汇总
2015/06/19 Javascript
JS遍历数组及打印数组实例分析
2016/01/21 Javascript
微信小程序实战之运维小项目
2017/01/17 Javascript
JS ES6多行字符串与连接字符串的表示方法
2017/04/26 Javascript
Angular客户端请求Rest服务跨域问题的解决方法
2017/09/19 Javascript
详解使用Next.js构建服务端渲染应用
2018/07/10 Javascript
RequireJS用法简单示例
2018/08/20 Javascript
使用 vue 实现灭霸打响指英雄消失的效果附demo
2019/05/06 Javascript
Vue Render函数创建DOM节点代码实例
2020/07/08 Javascript
夯基础之手撕javascript继承详解
2020/11/09 Javascript
[50:24]VGJ.S vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
Python查询Mysql时返回字典结构的代码
2012/06/18 Python
Python多线程编程(五):死锁的形成
2015/04/05 Python
Python模糊查询本地文件夹去除文件后缀的实例(7行代码)
2017/11/09 Python
python3射线法判断点是否在多边形内
2019/06/28 Python
基于Python实现人脸自动戴口罩系统
2020/02/06 Python
jupyter notebook 多环境conda kernel配置方式
2020/04/10 Python
numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)
2020/04/28 Python
python文件编写好后如何实践
2020/07/07 Python
区分python中的进程与线程
2020/08/13 Python
深入浅析HTML5中的article和section的区别
2018/05/15 HTML / CSS
5分钟实现Canvas鼠标跟随动画背景
2019/11/18 HTML / CSS
网络安全方面的面试题
2016/01/07 面试题
升职自荐信
2013/11/28 职场文书
外语系毕业生自荐信范文
2013/12/16 职场文书
婚前协议书范本
2014/10/27 职场文书
总经理助理岗位职责范本
2015/03/31 职场文书
《和时间赛跑》读后感3篇
2019/12/16 职场文书
python如何做代码性能分析
2021/04/26 Python