题目:

第一步:创建用户表,并插入数据(插入后记得commit

create table users
(
name varchar2(16),
password varchar2(16)
);
insert into users values('lisi','');
insert into users values('zhangsan','');

第二步:编写登陆界面(index.jsp)

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>index.jsp</title>
</head>
<body>
<form action="dologin.jsp">
用户名:<input name="user" type="text"/><br>
密码:<input name="password" type="text" /><br>
<input type="submit" value="lojin" />
</form>
</body>
</html>

第三步:编写工具类(题目要求将COnnection的获取封装,我这里还封装了关闭连接的部分)(Util.jsva)

关闭注意事项:

1,关闭先判断(如果不为空在判断,防止未打开就关闭的空指针异常)

2,try{}catch(){}捕获异常

3,关闭后及时垃圾回收,xx=null;

package songyan.Util;

import java.sql.*;

public class Util {

    static Connection conn;
static String sql="select * from users"; static String driver= "oracle.jdbc.driver.OracleDriver";
static String user= "scott";
static String url="jdbc:oracle:thin:@localhost:1521:inspur";
static String pass= "tiger"; public static Connection getConnection() throws Exception
{
//加载驱动
Class.forName(driver);
//获取连接
return DriverManager.getConnection(url,user,pass);
} public static void closeAll(ResultSet rs,PreparedStatement sta,Connection conn) {
//关闭连接
if(rs!=null)
{
try{rs.close();}catch(Exception e){}
rs=null;
}
if(sta!=null)
{
try{rs.close();}catch(Exception e){}
rs=null;
}
if(conn!=null)
{
try{rs.close();}catch(Exception e){}
rs=null;
}
}
}

第四步:编写处理页面(dologin.jsp)

注意:

1,导包(在开始就导入oracle驱动包,放在webinf中的lib目录下)

2,引入包,songyan.Util.*:自己写的工具

  java.sql.*:java提供的操作数据库的包

<%@ page language="java"  pageEncoding="UTF-8"%>
<%@ page import="java.util.*,songyan.Util.*,java.sql.*" %>
<html>
<head>
<title>dolojin.jsp</title>
</head>
<body>
<%!
Connection conn;
PreparedStatement sta;
ResultSet rs;
String sql="select * from users"; String driver= "oracle.jdbc.driver.OracleDriver";
String user= "scott";
String url="jdbc:oracle:thin:@localhost:1521:inspur";
String pass= "tiger";
String name="";
String password="";
%>
<%
try {
name=request.getParameter("user");
password=request.getParameter("password");
conn=Util.getConnection();
//获取sta对象
sql="select * from users where name=? and password=?";
sta=conn.prepareStatement(sql);
sta.setString(1, name);
sta.setString(2, password); //执行sql获取结果
rs=sta.executeQuery();
//处理结果
if(rs.next())
{
request.getRequestDispatcher("success.jsp").forward(request, response);
}else{
response.sendRedirect("index.jsp");
} } catch (ClassNotFoundException e) {
e.printStackTrace();
}
finally{
Util.closeAll(rs, sta, conn);
}
%>
</body>
</html>

第五步:编写成功登陆界面

<%@ page language="java"  pageEncoding="UTF-8"%>
<html>
<head>
<title>success</title>
</head>
<body>
<%
out.print("登录成功");
%>
</body>
</html>

1.在整个过程中,修改.java文件或者修改WEB-INF中的内容都需要重启tomcat(也可以设置自动重启)

2.在这个题目中涉及到两个username,password,一个是你登陆oracle的用户和密码,一个是自己写的登陆窗口的用户名和密码,在命名上一定要注意区分

不足之处欢迎补充*&*

JDBC-oracle(登陆)的更多相关文章

  1. JavaWeb 例子 JDBC+JSP登陆注册留言板

    注册页面: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnc ...

  2. JDBC模拟登陆及SQL语句防注入问题

    实现模拟登陆效果:基于表Tencent package boom; import java.sql.Connection; import java.sql.DriverManager; import ...

  3. jdbc:oracle:thin:@192.168.3.98:1521:orcl(详解)

    整理自互联网 一. jdbc:oracle:thin:@192.168.3.98:1521:orcljdbc:表示采用jdbc方式连接数据库oracle:表示连接的是oracle数据库thin:表示连 ...

  4. Oracle登陆及修改用户密码

    16:20 2013/7/7 Oracle 登陆 管理员登陆 sqlplus sys/root as sysdba (密码认证)这个root是安装数据库最初你输入的口令 sqlplus     /as ...

  5. 关于jdbc Oracle数据库连接的URL错误

    今天写了个java类连接oracle,抛出了这个问题 java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@127 ...

  6. jdbc oracle 连接字符串

    1.普通SID方式 jdbc:oracle:thin:username/password@x.x.x.1:1521:SID 2.普通ServerName方式 jdbc:Oracle:thin:user ...

  7. mvc模式jsp+servel+jdbc oracle基本增删改查demo

    mvc模式jsp+servel+jdbc oracle基本增删改查demo 下载地址

  8. JDBC Oracle sys 用户连接

    Class.forName("oracle.jdbc.driver.OracleDriver"); conn = DriverManager.getConnection( &quo ...

  9. 【转】jdbc:oracle:thin:@192.168.3.98:1521:orcl(详解)

    整理自互联网 一. jdbc:oracle:thin:@192.168.3.98:1521:orcljdbc:表示采用jdbc方式连接数据库oracle:表示连接的是oracle数据库thin:表示连 ...

  10. 一、JDBC的概述 二、通过JDBC实现对数据的CRUD操作 三、封装JDBC访问数据的工具类 四、通过JDBC实现登陆和注册 五、防止SQL注入

    一.JDBC的概述###<1>概念 JDBC:java database connection ,java数据库连接技术 是java内部提供的一套操作数据库的接口(面向接口编程),实现对数 ...

随机推荐

  1. laravel5.2总结--服务提供者,契约(Contracts)

    首先理解两个概念 1.契约:一组定义了框架核心服务的接口 2.服务提供者:所有 Laravel 应用程序启动的中心所在. 包括你自己的应用程序,以及所有的 Laravel 核心服务,都是通过服务提供者 ...

  2. PHP 自定义二维码生成

    环境:PHP 7.*.* ,Composer 包管理工具.QrCode 效果如下: 使用 Composer 安装 QrCode QrCode 类库基于 php 的 GD 库,用于生成任意尺寸的二维码, ...

  3. Leetcode 488.祖玛游戏

    祖玛游戏 回忆一下祖玛游戏.现在桌上有一串球,颜色有红色(R),黄色(Y),蓝色(B),绿色(G),还有白色(W). 现在你手里也有几个球. 每一次,你可以从手里的球选一个,然后把这个球插入到一串球中 ...

  4. java基础-流

    大致列一下这个周末需要学习的内容 1 容器 2 线程 3 流 (本节内容) 一. 流 按方向-------------输入流输出流 按处理数据单位-----字节流字符流 按功能------------ ...

  5. 生成比较短的Token字符串

    有的时候,我们需要生成一些Token作为标识:如认证后的标识符,资源的提取码等.一个比较常见的算法是生成一个GUID来作为Token,由于GUID的随机性和唯一性特点,作为Token是一个非常可靠的选 ...

  6. python百度贴吧爬虫

    # -*- coding: utf-8 -*- #coding=utf-8 import urllib import urllib2 import re import thread import ti ...

  7. 预编译scss以及scss和less px 转rem

    预编译scss步骤: 1 搜索ruby并安装,点击 2 安装sass: 3 在hubuilder工具中设置预编译: 触发命令地址为ruby安装地址 命令参数为 %FileName% %FileBase ...

  8. POJ 2635 The Embarrassed Cryptographer (千进制,素数筛,同余定理)

    The Embarrassed Cryptographer Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 15767   A ...

  9. .Net Framework 4.0: Using System.Lazy<T>

    原文发布时间为:2011-04-26 -- 来源于本人的百度文章 [由搬家工具导入] http://weblogs.asp.net/gunnarpeipman/archive/2009/05/19/n ...

  10. AspNetPager分页控件的使用以及常见错误

    原文发布时间为:2009-05-25 -- 来源于本人的百度文章 [由搬家工具导入] 【Repeater采用AspNetPager分页成功↓】 using System;using System.Co ...