题目:

第一步:创建用户表,并插入数据(插入后记得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. Jetty,Tomcat对MIME协议的配置参数说明

      此处做一下小的汇总,针对Jetty容器内,存在excel的xlsx文件直接通过链接的方式下载的时候,如果是在Chrome浏览器时,则直接触发浏览器的下载行为,但是在IE11的浏览器上,则浏览器会直 ...

  2. caffe的python接口提取resnet101某层特征

    论文的caffemodel转化为tensorflow模型过程中越坑无数,最后索性直接用caffe提特征. caffe提取倒数第二层,pool5的输出,fc1000层的输入,2048维的特征 #codi ...

  3. 【LeetCode】Excel Sheet Column Number(Excel表列序号)

    这道题是LeetCode里的第171道题. 题目描述: 给定一个Excel表格中的列名称,返回其相应的列序号. 例如, A -> 1 B -> 2 C -> 3 ... Z -> ...

  4. 如何删除本地docker images镜像

    背景 本地空间较小,想删除无效的docker镜像内容. 操作步骤 查看本地docker镜像 尝试删除本地镜像 发现无法直接删除镜像 原因分析: 有关联docker容器,无法删除 删除docker容器 ...

  5. AtCoder Regular Contest 092 B Two Sequences

    题目大意 给定两个长为 $n$ 个整数序列 $a_1, \dots, a_n$ 和 $b_1, \dots, b_n$ .求所有 $a_i + b_j$($1\le i, j\le n$)的 XOR ...

  6. hdu 3721 树的直径

    思路:枚举+树的直径 #include<iostream> #include<cstring> #include<cstdio> #include<algor ...

  7. poj 3053 优先队列处理

    Fence Repair Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 39029   Accepted: 12681 De ...

  8. nginx问题

    1.杀死nginx之后,找不到pid http://bbs.pxecn.com/thread-122116-1-1.html

  9. Unity使用 16bit 压缩 Texture 颜色能均匀过渡

    下面是unity自带 16bit 图 的效果,可以看到颜色过度的很不均匀,占用内存 0.5M    如果调成 truecolor 后 颜色过渡很均匀,而内存却占到 1.1 M    讲图片 后缀名改成 ...

  10. 设置Animation 的播放位置

    AnimationState.normalizedTime 官方文档的描述 Description The normalized time of the animation. A value of 1 ...