java jsp+servlet+mysql实现登录网页设计

涉及下面几个文件:

1,登录页面 login.jsp

2,成功跳转页面 success.jsp

3,失败跳转页面 fail.jsp

4,servlet 处理类 LoginTestServlet.java

5,配置文件 web.xml

---------------------------------------------  依次看代码      --------------------------------------------

LoginTestServlet.java 内容

package com.test;

import java.io.IOException;
import java.sql.DriverManager;
import java.sql.ResultSet;

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;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;

/**
 * Servlet implementation class LoginTestServlet
 */
@WebServlet("/LoginTestServlet")
public class LoginTestServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public LoginTestServlet() {
        super();

    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doPost(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("text/heml;charset=gb2312");
		request.setCharacterEncoding("gb2312");

		String result = "";

		String username = request.getParameter("username");
		String psw = request.getParameter("password");

		if(username == "" || username == null || username.length()>20){
			try {
				result = "请输入用户名(不能超过20个字符)";
				request.setAttribute("message", result);
				response.sendRedirect("login.jsp");
				return;
			} catch (Exception e) {
				e.printStackTrace();
			}
		}

		if(psw == "" || psw == null || psw.length() > 20){
			try {
				result = "请输入密码(不能超过20个字符)";
				request.setAttribute("message", result);
				response.sendRedirect("login.jsp");
				return;
			} catch (Exception e) {
				e.printStackTrace();
			}
		}

		//登记JDBC驱动程序
		try {
			Class.forName("com.mysql.jdbc.Driver");
		} catch (Exception e) {
			System.out.print("Class Not Found Exception");
		}

		//链接URL
		String url = "jdbc:mysql://localhost:3306/demo";
		Connection conn = null;
		Statement stmt = null;
		ResultSet rs = null;

		try {
			conn = (Connection) DriverManager.getConnection(url,"root","root");
			stmt = (Statement) conn.createStatement();

			String sql = "select * from userInfo where username='"+username+"' and userpsw= '"+psw+"'";
			rs = stmt.executeQuery(sql);
		} catch (Exception e) {
			e.printStackTrace();
		}

	HttpSession session = request.getSession();
	session.setAttribute("username", username);

	try {
		if(rs.next()){
		    session.setAttribute("age",rs.getString("age")) ;
		    session.setAttribute("sex",rs.getString("sex")) ;
		    session.setAttribute("weight",rs.getString("weight")) ;
		    response.sendRedirect("success.jsp") ;
		    return;
		}else{
		    session.setAttribute("message", "用户名或密码不匹配。");
		    response.sendRedirect("fail.jsp") ;
		    return;
		}

	} catch (Exception e) {
		e.printStackTrace();
	}
	}

}

login.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>
 	<form method="POST" name="frmLogin" action="LoginTestServlet">
 		<h1 align="center">用户登录</h1>
 		<center>
 			<table border="1">
 				<tr>
 					<td>用户名:</td>
 					<td>
 					    <input type="text" name="username" value="" size="20" maxlength="20" onfocus="if (this.value=='Your name')  this.value='';" />
 					</td>
 				</tr>
 				<tr>
 					<td>密  码</td>
 					<td>
 						<input type="password" name="password" value="" size="20" maxlength="20" onfocus="if(this.value=='Your Password') this.value='';">
 					</td>
 				</tr>
 				<tr>
 					<td>
 						<input type="submit" name="Submit" value=" 提交" onclick="return validateLogin()">
 					</td>
 					<td>
 					    <input type="reset" name="Reset" value="重置" />
 					</td>
 				</tr>
 			</table>
 		</center>
 	</form>

 	<script type="text/javascript">
 			   function validateLogin(){
 				 var sUserName = document.frmLogin.username.value;
 				 var sPassword = document.frmLogin.psssword.value;
 			    if (sUserName ==""){
 			     alert("请输入用户名!");
 			     return false ;
 			    }

 			    if (sPassword ==""){
 			     alert("请输入密码!");
 			     return false ;
 			    }
 		}
 	</script>
</body>
</html>

success.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>
<%
   String userName = (String)session.getAttribute("username") ;
   String age = (String)session.getAttribute("age") ;
   String weight = (String)session.getAttribute("weight") ;
   String sex = (String)session.getAttribute("sex") ;
   System.out.println("性别:A" + sex +"A")  ;
   if (sex.trim().equals("M")) {
    sex ="男" ;
   }else{
    sex = "女" ;
   }
  %>
  <div align="center">
   <%=userName %>
   欢迎您,登陆成功!<br />
   <font color="blue">登陆用户信息:</font>
   <table border =1 >
    <tr>
     <td> 姓名: </td>
     <td>  <%=userName %>  </td>
    </tr>
    <tr>
     <td> 年龄: </td>
     <td>  <%=age %>  </td>
    </tr>
    <tr>
     <td> 体重: </td>
     <td>  <%=weight %> kg </td>
    </tr>
    <tr>
     <td> 性别: </td>
     <td>  <%=sex %>  </td>
    </tr>
   </table>
   <a href="login.jsp">返回</a>
  </div>
</body>
</html>

fail.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>
	<%
		String userName = (String) session.getAttribute("username");
		String msg = (String) session.getAttribute("message");
	%>
	<div align="center">
		<%=userName%>
		对不起,登陆失败!<br /> <font color="red">原因: </font>
		<%=msg%>
		<br /> <br /> 5秒后将返回登陆界面。
	</div>

	<%
		response.setHeader("Refresh", "5;URL=/webDemo/login.jsp");
	%>
</body>
</html>

-------------------------------------------------------配置数据库------------------------------------------------------

mysql数据库中需要创建数据库demo,其中创建表userInfo 创建表语句为:

create databasedemo;

use demo

create table userInfo(id int not null primary key,username char(20) not null,userpsw char(20) ,age int ,weight int ,sex enum(‘M‘,‘F‘)) ;

需要把连接mysql的jar包放到项目的lib目录中

---------------------------------------------华丽的分割线----------------------------------------

最后 web.xml 内容

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	id="WebApp_ID" version="3.0">
	<display-name>webDemo</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>LoginTestServlet</servlet-name>
		<servlet-class>com.test.LoginTestServlet</servlet-class>
	</servlet>

	<servlet-mapping>
		<servlet-name>LoginTestServlet</servlet-name>
		<url-pattern>/loginTestServlet</url-pattern>
	</servlet-mapping>
</web-app>
时间: 2024-08-10 10:52:34

java jsp+servlet+mysql实现登录网页设计的相关文章

jsp+servlet+mysql 实现简单的银行登录转账功能

jsp+servlet+mysql 实现简单的银行登录转账功能 [前期的准备] html(登录界面),servlet(处理业务逻辑),jsp(主要实现界面),mysql(实现与数据库的简单的交互)先从一个登录页面开始(利用表单提交,action="jsp实现页面")第一步:在(mysql)数据库中建表:建立一个用户的基本信息表(用户姓名,密码,账户余额),用户转账(用户名,转账金额)的操作表第二步:登录页面:输入用户名和密码对数据库中的用户信息(login.jsp)进行验证(qq浏览器

jsp+servlet+mysql员工管理系统源代码下载

原文:jsp+servlet+mysql员工管理系统源代码下载 源代码下载地址:http://www.zuidaima.com/share/1550463498996736.htm jsp+servlet+mysql员工管理系统

jsp/servlet/mysql/linux基本概念和操作

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px "PingFang SC" } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px "PingFang SC"; min-height: 18.0px } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px "PingFang SC Semibo

jsp+servlet+mysql简单实现用户登陆注册

原码,项目中遇到的错误,解决方法,文章最后有链接可以获取 项目简介 功能描述 登陆,注册,用户一览表,修改,删除,添加,模糊查询和精确查询 采用的技术及环境 JSP:前端的信息展示 Servlet:业务逻辑功能实现,及调用数据库的实现数据处理和传输 MySQL:用来实现数据存储 利用Eclipse来实现,MySQL数据库版本:5.x 运行效果展示 数据库数据 项目结构图 *因屏幕小,截图用了两张图片 登陆页面 登陆成功用户一览表页面 注册页面 *因我在数据设计表时,性别(sex)设置的大小为2长

Jsp+servlet+mysql搭建套路

1.建立数据库根据需求建立相应的数据库确立数据库的字段.属性.主键等2.建立javaweb项目,搭建开发环境在开发环境的/WebRoot/WEB-INF下建立lib文件夹,存放需要使用的jar包常用的包:mysqldriver.jarbeanutil.jarcommons-logging.jarjstl.jarstandard.jar3.java内部书写,建立domain包在其下书写bean类,类的字段与数据库对应4.定义dao和其接口(1)接口dao包:对daoimlents包进行抽象(为了增

java+jsp+servlet实现分页

web.xml配置: <servlet> <servlet-name>abc</servlet-name> <servlet-class>test.pageServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>abc</servlet-name> <url-pattern>/insertstu</url

jsp,servlet,mysql技术建立动态网站的一些细节问题

当今的购物网站,多使用jsp和servlet技术,连接数据库来进行页面的动态显示以及数据库的读写.接下来我写的一些问题是在进行类似技术设计时遇到的,献给一些像我这样的初学者,为你们摆平一些困难.请大神们无视 1.java连接mysql数据库的具体过程在这里不进行详细讲解,自行百度“jdbc连接mysql数据库”,这里说的问题是一定要要导入包mysql-connector-java-x.x.x,这一点一般没有问题,但是还有一点要注意的是一定要在环境变量的系统变量classpath里添加“包路径”+

Java jsp servlet 实现文件上传 最简单操作

|--实现文件上传的方式 1.进入http://commons.apache.org/proper/commons-fileupload/using.html 2.点击用户指南 3.对着用户指南一步步复制粘贴,并把代码撸成自己想要的样子 补充:记得要将commons-io-2.4.jar和commons-fileupload-1.2.2.jar这两个包放到编译器里面 |--现成的代码 1 <%-- 2 Created by IntelliJ IDEA. 3 User: Administrator

从0开始学Java——JSP&amp;Servlet——HttpServletRequest相关的几个路径信息

在HttpServletRequest中有几个获取路径的接口:getRequestURI/getContextPath/getServletPath/getPathInfo 这些接口互相之间有什么区别,通过下面这段代码就可以分辨清楚了: 1 @WebServlet("/hello.view") 2 public class FirstServlet extends HttpServlet { 3 /*....*/ 4 protected void doGet(HttpServletRe