java-web 登陆功能
目录结构

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" metadata-complete="false" version="3.0">
	<servlet>
		<servlet-name>FirstServlet</servlet-name>
		<servlet-class>FirstServlet</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>FirstServlet</servlet-name>
		<url-pattern>/Second</url-pattern>
	</servlet-mapping>
</web-app>
web.xml中配置servlet
- <servlet-name>可以随便起名,但是要在<servlet>和<servlet-map>中一致。
- <servlet-class>是以WEB-INF/classes为根路径。在写完java文件后,将产生的class文件放到WEB-INF/classes。
- <url-pattern>可以随便起名,最后表现在URL中应用名之后的部分,即http://localhost/应用名/<url-pattern>,不能少去第一个/。
dao/DBdao
package dao;
import java.sql.Connection;
import java.sql.DriverManager;
public class DBdao{
	public static Connection getConnection(){
		String dbUrl = "jdbc:mysql://localhost:3306/web?characterEncoding=UTF-8";
		String dbUser = "root";
		String dbPassword = "jinliang";
		Connection conn = null;
		try{
			Class.forName("com.mysql.jdbc.Driver");
			conn = DriverManager.getConnection(dbUrl, dbUser, dbPassword);
		}catch(Exception e){
			e.printStackTrace();
		}
		return conn;
	}
}
- Class.forName("com.mysql.jdbc.Driver");Driver是一个java.sql包中的接口,该方法通过当前类加载器加载实现Driver接口的mysql数据库驱动,并返回Class类。
- DriverManager.getConnection()方法获得对数据库的连接
FirstServlet/java
import java.io.IOException;
import java.io.PrintStream;
import java.sql.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import dao.DBdao;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class FirstServlet extends HttpServlet{
	public void service(HttpServletRequest request,HttpServletResponse response) throws IOException,ServletException
	{
		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintStream out = new PrintStream(response.getOutputStream());
		String name = request.getParameter("userName");
		String password = request.getParameter("password");
		Connection conn = null;
		Statement statement = null;
		String sql = "select * from user where username="+"'"+name+"'";
		try{
			//获得数据库连接
			conn = DBdao.getConnection();
                        //获得Statement对象用来执行sql语句
			statement = conn.createStatement();
			//执行sql查询,并返回结果集对象
			ResultSet rs = statement.executeQuery(sql);
			if(rs.next()){
				if(rs.getString("password").equals(password)){
					out.print("<h1>success</h1>");
				}
			}
		}
		catch(Exception e){
			e.printStackTrace();
		}
	}
}
登陆界面
callFirstServlet.jsp
<%@ page pageEncoding="UTF-8"%>
<form method="post" action="Second">
	<input type="text" name="userName"/>
	<input type="password" name="password"/>
	<input type="submit"/>
</form>
- form表单在点击提交后,通过post方式,将表单中的数据以name:value键值对存入request,并发送request至action,即web.xml中配置的FirstServlet。
- tomcat接收到表单请求后,将其层层包装,最后递交至FirstServlet中service方法的request参数,从参数中获得姓名和密码。将该密码与从数据库通过姓名查询到的密码比对,确定是否通过,并将结果放在response中,由tomcat再次包装后返回至客户端浏览器。
java-web 登陆功能的更多相关文章
- 【Servlet】java web 文件下载功能实现
		需求:实现一个具有文件下载功能的网页,主要下载压缩包和图片 两种实现方法: 一:通过超链接实现下载 在HTML网页中,通过超链接链接到要下载的文件的地址 <!DOCTYPE html> & ... 
- java web文件下载功能实现 (转)
		http://blog.csdn.net/longshengguoji/article/details/39433307 需求:实现一个具有文件下载功能的网页,主要下载压缩包和图片 两种实现方法: 一 ... 
- node 开发web 登陆功能
		node.js基于express框架搭建一个简单的注册登录Web功能 这个小应用使用到了node.js bootstrap express 以及数据库的操作 :使用mongoose对象模型来操作 ... 
- java模拟登陆功能
		package test; import java.util.Scanner; public class Login { static Scanner sc=new Scanner(System.in ... 
- Java Web(一) Servlet详解!!
		这篇文章到上一篇,距离的有点遥远呀,隔了大概有两个月把,中间在家过了个年,哈哈~ 现在重新开始拾起,最近在看一本个人觉得很棒的书,<Java Web 整合开发王者归来>,现在写的这一系列基 ... 
- (转)Java Web(一) Servlet详解!!
		https://www.cnblogs.com/whgk/p/6399262.html 这篇文章到上一篇,距离的有点遥远呀,隔了大概有两个月把,中间在家过了个年,哈哈~ 现在重新开始拾起,最近在看一本 ... 
- 重拾Java Web应用的基础体系结构
		目录 一.背景 二.Web应用 2.1 HTML 2.2 HTTP 2.3 URL 2.4 Servlet 2.4.1 编写第一个Servlet程序 2.5 JSP 2.6 容器 2.7 URL映射到 ... 
- java web程序   上机考试做一个登陆注册程序
		大二期末 java web.用到数据库,jdbc.myeclipse实现用户的注册,登陆 并且不能出现500错误,用户不能重复注册.当用户任意点击时也不能出现500错误! 这里.我只写注册成功的页面. ... 
- java web程序  上机考试登陆界面设计实现
		今天是java web上机.做一个登陆注册的界面.要求:jsp.mysql数据库,js做一个美观的界面.功能.可以添加 更多啊.我做的界面被老师狠狠的扣了分.问题在于.当用户没有输入任何信息(没有输入 ... 
- 从零开始编写自己的C#框架(15)——Web层后端登陆功能
		对于一个后端管理系统,最重要内容之一的就是登陆页了,无论是安全验证.用户在线记录.相关日志记录.单用户或多用户使用帐号控制等,都是在这个页面进行处理的. 1.在解决方案中创建一个Web项目,并将它设置 ... 
随机推荐
- C#通过Redis实现分布式锁
			Redis有三个最基本属性来保证分布式锁的有效实现: 安全性: 互斥,在任何时候,只有一个客户端能持有锁. 活跃性A:没有死锁,即使客户端在持有锁的时候崩溃,最后也会有其他客户端能获得锁,超时机制. ... 
- redis的maxmemory设置以及淘汰策略介绍
			转载地址:http://www.2cto.com/database/201507/420889.html redis的maxmemory参数用于控制redis可使用的最大内存容量.如果超过maxmem ... 
- HDU 4756 Install Air Conditioning (MST+树形DP)
			题意:n-1个宿舍,1个供电站,n个位置每两个位置都有边相连,其中有一条边不能连,求n个位置连通的最小花费的最大值. 析:因为要连通,还要权值最小,所以就是MST了,然后就是改变一条边,然后去找出改变 ... 
- 团体程序设计天梯赛L3-010  是否完全二叉搜索树                                                                                            2017-03-24 16:12             29人阅读              评论(0)              收藏
			L3-010. 是否完全二叉搜索树 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 将一系列给定数字顺序插入一个初始为空的二叉搜 ... 
- spring事务以及springweb
			什么是事务.事务特性.事务隔离级别.spring事务传播特性 https://www.cnblogs.com/zhangqian1031/p/6542037.html Spring AOP 中@Poi ... 
- 下了个蓝屏代码查看工具,就中病毒了。。。什么鬼病毒,竟然还是用的VBS
			扫描所有盘下面的html文件,加入VBS脚本...真是奇葩,多少年前的病毒了... http://files.cnblogs.com/files/guangshan/lpdmcxq.rar 这个是病毒 ... 
- css flex cheat sheet
			.container{ display: -webkit-flex/inline-flex; display: -moz-flex/inline-flex; display: -ms-flex/inl ... 
- [IE bug] ajax请求 304解决方案
			最近和筒子们做了个校园电台,进去之后会自动播放歌曲,每首放完了的话会随机get新的json,然后再播放下一首 整体做成了命令行的风格,在最后输入next,start等命令来操作,5+M/s校园网+W级 ... 
- C# try catch finally
			抛出异常开销非常大(相对而言),所以不要过多的在程序中使用它们 既然finally一定是要执行的,即使try块中有return 
- Java的进程内缓存框架:EhCache
			EhCache 是一个纯Java的进程内缓存框架,具有快速.精干等特点,是Hibernate中默认的CacheProvider. Ehcache缓存的特点: 1. 快速. 2. 简单. 3. 多种 ... 
