简单的以代码的形式纪念一下,因为现在还没有解决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. struts2框架 转载 精华帖

    一.Struts2简介 参考<JavaEE 轻量级框架应用与开发—S2SH> Struts框架是流行广泛的一个MVC开源实现,而Struts2是Struts框架的新一代产品,是将Strut ...

  2. C#只能lock 引用类型的值 (转载)

    Lock:        C#只能lock 引用类型的值,如果lock一个int, bool,编译器会报错.    当一个互斥锁已被占用时,在同一线程中执行的代码仍可以获取和释放该锁.但是,在其他线程 ...

  3. android创建目录和文件和安装其它apk

    一.android下创建目录 File sd=Environment.getExternalStorageDirectory(); String path=sd.getPath()+"/no ...

  4. Linux Shell常用技巧(一)

    一.    特殊文件: /dev/null和/dev/tty Linux系统提供了两个对Shell编程非常有用的特殊文件,/dev/null和/dev/tty.其中/dev/null将会丢掉所有写入它 ...

  5. [原创]升级Gerrit的commit-msg,检查git commit时必须填写开发任务编号TaskID

    公司使用git+gerrit+jenkins进行持续集成实践,其中gerrit用来进行Code Review.另外我们自己研发了一套敏捷项目管理系统TPM(TeamPlus Management),用 ...

  6. 【OC底层】KVC原理

    定义 KVC的全称是Key-Value Coding,俗称“键值编码”,可以通过一个key来访问某个属性 常见的API有: - (void)setValue:(id)value forKeyPath: ...

  7. BZOJ4033 [HAOI2015]树上染色

    本来是考虑, $ f[x][i][0/1] $ 表示 $ x $ 子树中有$i$个黑点,且 $ x $ 是白点/黑点.但是这里的答案是要统计不同的子树的贡献的.所以就gg了. 看了题解. 应该是要设$ ...

  8. Qt常用控件

    Qt常用控件 QWidget与QFrame QWidget所有图形控件的基类 QFrame与QWidget的区别 QFrame是基本控件的基类, QWidget是QFrame的基类. 因此QFrame ...

  9. 一个yum源for centos6.x

    rpm -Uvh http://www.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-1-12.rhel6.noarch.rpm

  10. golang 实现海明距离 demo

    Simhash的算法简单的来说就是,从海量文本中快速搜索和已知simhash相差小于k位的simhash集合,这里每个文本都可以用一个simhash值来代表,一个simhash有64bit,相似的文本 ...