简单的以代码的形式纪念一下,因为现在还没有解决SQL2008驱动的问题,并且有好多东西要学,所以日后会有更新~

所安装的软件有:SQL2008,eclipse,tomcat,JDK,涉及环境配置、等等,安装数据库感受最深,虽然网上有教程,但是实际操作起来,真心感觉这才是真正的安装软件。

设计关键:

关键在于验证页面,在该页面中必须:数据库的连接操作,数据库记录的查询操作

提交界面代码

<%@ page language="java"  pageEncoding="GB2312"%>
<!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 action ="ch07_7_yanzheng.jsp"method="post">
用户名:<input type="text"name="username">
用户密码:<input type="password"name="pass"><br></br>
<input type="submit"value="登录">
</form>>
</body>
</html>

截图:

验证界面代码:

<%@ page language="java" import="java.sql.*" pageEncoding="GB2312"%>

<html> <head>

<title>登录验证界面</title>

</head> <body>

<% Connection conn =null;

PreparedStatement pstmt =null;

ResultSet rs=null;

try{    String driverName ="com.sql.jdbc.Driver";

String dbName="user";

String url1="jdbc:sql://localhost/"+dbName;

String url2="?user=sa&password=lx13784429739";

String url3="&Unicode=true&characterEncoding=GB2312";

String url=url1+url2+url3;  Class.forName(driverName);

conn=DriverManager.getConnection(url);

request.setCharacterEncoding("GB2312");

String name=request.getParameter("username");

String pw=request.getParameter("pass");

String sql="select * from user_b where(uname=?andupassword=?) ";

pstmt =conn.prepareStatement(sql);

pstmt.setString(1,name);

pstmt.setString(2,pw);

rs=pstmt.executeQuery();

if(rs.next()){  %><%=name%>:登陆成功!<br><%

}  else{%>

<%=name %>:登录失败!<br><%}

}catch(Exception e)

{%>                出现异常错误!<br><%=e.getMessage()%>  <%}

finally{    if(rs!=null){rs.close();}

if(pstmt!=null){pstmt.close();}

if(conn!=null){conn.close();}

}%>

</body> </html>

数据库代码过于简单就不给出了。

在编写验证界面期间,遇到了些问题,所以在CSDN、博客园、jsp吧上提了一下问题,得到了热心网友的帮助,在这里表示感谢~

http://tieba.baidu.com/p/3702849992

http://ask.csdn.net/questions/175550

遇到的问题:

即 statement  result  connection  的定义 应该放在try的外面  否则在finally里面不能调用,其实提问之前已经意识到是变量定义的范围的问题,就是没能解决,这个值得自己考虑。

还需解决的问题:

数据库连接的问题

计划:

吃透JSP+JDBC的开发模式,学习javabeen,servlet,近期进行JSP、JAVABEEN、SERVLET、JDBC间的各种组合开发。

初涉JSP+JDBC 基于SQL2008的登陆验证程序的更多相关文章

  1. JDBC工具类实现登陆验证-Java(新手)

    JDBC工具类: package cn.chuang.JdbcDome; import java.sql.*; public class JdbcUtilss { private static fin ...

  2. 使用JDBC工具类模拟登陆验证-Java(新手)

    模拟登陆验证: package JdbcDome; import java.sql.Connection; import java.sql.PreparedStatement; import java ...

  3. 本博文将一步步带领你实现抽屉官网的各种功能:包括登陆、注册、发送邮箱验证码、登陆验证码、页面登陆验证、发布文章、上传图片、form验证、点赞、评论、文章分页处理以及基于tronado的后端和ajax的前端数据处理。

    本博文将一步步带领你实现抽屉官网的各种功能:包括登陆.注册.发送邮箱验证码.登陆验证码.页面登陆验证.发布文章.上传图片.form验证.点赞.评论.文章分页处理以及基于tronado的后端和ajax的 ...

  4. Shrio登陆验证实例详细解读(转)

    摘要:本文采用了Spring+SpringMVC+Mybatis+Shiro+Msql来写了一个登陆验证的实例,下面来看看过程吧!整个工程基于Mavevn来创建,运行环境为JDK1.6+WIN7+to ...

  5. 🈲Eclipse通过jdbc连接数据库制作简单登陆界面【新手必看】

    一.前言: 做网站开发,要求有多种搭配方式,前台技术可以使用PHP.ASP.JSP.ASP.NET.CGI等任何一种: 需要用到的基础语言用的最多的就是HTML/CSS.JS.JAVA.XML这些了, ...

  6. jsp+jdbc实现用户登录

    1.1 创建数据库表 表名:user 字段: userid   保存用户的登录id name     用户名 password 密码 1.2 实现思路 a. 用户登录,则需要有个一个表单页,此页面可输 ...

  7. 【Java EE 学习 70 上】【数据采集系统第二天】【数据加密处理】【登陆验证】【登陆拦截器】【新建调查】【查询调查】

    一.数据加密处理 这里使用MD5加密处理,使用java中自带加密工具类MessageDigest. 该类有一个方法digest,该方法输入参数是一个字符串返回值是一个长度为16的字节数组.最关键的是需 ...

  8. tornado web高级开发项目之抽屉官网的页面登陆验证、form验证、点赞、评论、文章分页处理、发送邮箱验证码、登陆验证码、注册、发布文章、上传图片

    本博文将一步步带领你实现抽屉官网的各种功能:包括登陆.注册.发送邮箱验证码.登陆验证码.页面登陆验证.发布文章.上传图片.form验证.点赞.评论.文章分页处理以及基于tornado的后端和ajax的 ...

  9. 【Java EE 学习 20】【使用过滤器实现登陆验证、权限认证】【观察者模式和监听器(使用监听器实现统计在线IP、登录IP 、踢人功能)】

    一.使用过滤器实现登录验证.权限认证 1.创建5张表 /*使用过滤器实现权限过滤功能*/ /**创建数据库*/ DROP DATABASE day20; CREATE DATABASE day20; ...

随机推荐

  1. iOS蓝牙APP常驻后台

    iOS蓝牙类APP常驻后台的实现方法,经过在苹果开发者论坛询问,以及查看苹果开发者文档,最后得出正确的方法为: 1.设置plist,蓝牙权限 2.到target-capabilities-backgr ...

  2. #leetcode刷题之路18-四数之和

    给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满 ...

  3. Deep Learning Tutorial 李宏毅(一)深度学习介绍

    大纲 深度学习介绍 深度学习训练的技巧 神经网络的变体 展望 深度学习介绍 深度学习介绍 深度学习属于机器学习的一种.介绍深度学习之前,我们先大致了解一下机器学习. 机器学习,拿监督学习为例,其本质上 ...

  4. C++实现tar包解析

    tar(tape archive)是Unix和类Unix系统上文件打包工具,可以将多个文件合并为一个文件,使用tar工具打出来的包称为tar包.一般打包后的文件名后缀为".tar" ...

  5. IT程序员每天的困扰:这TM为啥不可以?这TM也行?

    如果有对 Python 感兴趣的程序员,可以加我们小助手的QQ:979950755 会免费送 Python 的视频教程噢! 随着IT互联网对社会的影响越来越重要,关乎人类的未来发展进程.所以现在很多媒 ...

  6. MGR的debug版本

    debug版本的MGR 相较于 非 debug 版本,  applier性能差距有40倍之多.

  7. CSS动画效果之animation

    Y(^o^)Y css动画大乱弹之animation. 概述 什么是animation呢?在回答这个问题之前,先要说明什么叫做@keyframe(关键帧).@keyframe算是一个动画模板.在其中, ...

  8. 详解华为云基因容器服务GCS

    基因测序,作为“下一个能够改变世界”的技术,已经由实验室研究演变到临床使用,为人类预测罹患多种疾病的可能性,提前预防和治疗疾病提供了一套可靠的方法和手段.而基于基因测序在预防和治疗疾病方面的准确和可靠 ...

  9. docker 指令

    杀死所有正在运行的容器docker kill $(docker ps -a -q) 删除所有已经停止的容器docker rm $(docker ps -a -q) 删除所有未打 dangling 标签 ...

  10. Bitcoin区块链攻击方式

    目录 重放攻击-- 非人为攻击 其他攻击 重放攻击-- 非人为攻击 重放攻击 Replay Attach 攻击者重复发送相同的数据库包到目的主机,用以欺骗系统 用支付宝付款信息重复项商家索取商品 比特 ...