培训第四天-----jdbc连接oracle

时间:2022-02-27 01:17:01
  • oracle链接数据库并向tableone插入中一条数据
package com.zjw.db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement; public class mydbbase { private Connection conn;
private String oracleUrl="jdbc:oracle:thin:@localhost:1521:orcl";
//private String mysqlUrl="jdbc:mysql://localhost:3306//mysql";
private String username = "u1";
private String password = "Admin123";
public mydbbase(){
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
DriverManager.setLoginTimeout(0);
conn = DriverManager.getConnection(oracleUrl,username,password); Statement stmt = conn.createStatement();
String sql = "insert into tableone(id,name,sex,age) values(1,'jiewei','男','23') ";
stmt.executeUpdate(sql);
conn.commit();
stmt.close();
conn.close();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
mydbbase mb = new mydbbase();
} }
  • 查询数据库中tableone的数据
package com.zjw.db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; public class mydbbase { private Connection conn;
private String oracleUrl="jdbc:oracle:thin:@localhost:1521:orcl";
//private String mysqlUrl="jdbc:mysql://localhost:3306//mysql";
private String username = "u1";
private String password = "Admin123";
public mydbbase(){
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
DriverManager.setLoginTimeout(0);
conn = DriverManager.getConnection(oracleUrl,username,password); Statement stmt = conn.createStatement();
//插入语句
//String sql = "insert into tableone(id,name,sex,age) values(1,'jiewei','男','23') ";
//String sql = "delete from tableone where id=1";
//stmt.executeUpdate(sql);
//查询语句
String sqlSelect = "select * from tableone";
ResultSet rs = stmt.executeQuery(sqlSelect);
while(rs.next()){
System.out.print(rs.getInt("id")+" ");
System.out.print(rs.getString("name")+" ");
System.out.print(rs.getString("sex")+" ");
System.out.print(rs.getString("age")+" ");
}
conn.commit();
stmt.close();
conn.close();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
mydbbase mb = new mydbbase();
} }
  • 用 preparedStatement来进行增删改查
    //用preparedStatement来进行增删改查
    public static boolean auth(String name,String password){
    conn = getConnection();
    try {
    PreparedStatement pstmt = conn.prepareStatement("select * from tableone " + "where name=? and password = ?");
    pstmt.setString(1, name);
    pstmt.setString(2, password);
    ResultSet rs = pstmt.executeQuery();
    if(rs.next()){
    return true;
    }
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return false;
    }

    解决了当对象没有被NEW 的时候,去setid会出现空指针。

    public userTableDaoBean selector(String where) {
    PreparedStatement ps;
    userTableDaoBean ub = new userTableDaoBean();
    try {
    String sql = "select * from usertable where id=?";
    ps = conn.prepareStatement(sql);
    ps.setInt(1, Integer.parseInt(where));
    ResultSet rs = ps.executeQuery();
    if(rs.next()){
    ub.setId(rs.getInt("id"));
    ub.setName(rs.getString("name"));
    ub.setSex(rs.getString("sex"));
    ub.setAge(rs.getString("age"));
    }
    rs.close();
    ps.close();
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return ub;
    }
    像这个方法,new userTableDaoBean()如果写成null,容易出现空指针。

培训第四天-----jdbc连接oracle的更多相关文章

  1. jdbc连接oracle数据库

    /*** 通过改变配置文件来连接不同数据库*/package com.xykj.jdbc; import static org.junit.Assert.*; import java.io.Input ...

  2. Linux(Centos)下jdbc连接oracle速度超慢的问题

    最近在centos下写个java swing程序,发现在linux用jdbc连接oracle及其缓慢,还经常失败.但是同样的程序在windows下运行就连接的非常快.网上搜索了很长时间都和我这情况没关 ...

  3. jdbc 连接 oracle rac

    jdbc 连接 oracle rac 的连接串如下:   jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192. ...

  4. JDBC连接Oracle数据库的问题

    场景:最近做一个java web项目,使用jdbc连接Oracle数据库,遇到了两个问题. 问题1:jdbc连接不上Ubuntu Oracle服务器? 后来发现这个问题的原因是由于连接字符串写错了,修 ...

  5. JDBC连接Oracle数据库时出现的ORA-12505错误及解决办法

    转载至http://www.blogjava.net/itspy/archive/2007/12/20/169072.html Oracle 问题描述:今天使用jdbc连接oracle 10.2.0. ...

  6. jdbc连接oracle数据库问题

    下面是JDBC连接oracle数据库流程: String dbURL = "jdbc:oracle:thin:@url:1521:service_name"; String use ...

  7. JDBC 连接Oracle 数据库,JDBC 连接Mysql 数据库

    首先是JDBC 连接Oracle  数据库 package com.util; import com.pojo.UserInfo; import java.sql.*; public class DB ...

  8. JAVA通过JDBC连接Oracle数据库详解【转载】

    JAVA通过JDBC连接Oracle数据库详解 (2011-03-15 00:10:03) 转载▼http://blog.sina.com.cn/s/blog_61da86dd0100q27w.htm ...

  9. JDBC连接ORACLE无法登陆java.sql.SQLException: ORA-01017: invalid username/password; logon denied

    当用jdbc连接Oracle数据库的时候 private Connection getConnection() throws SQLException { OracleDataSource ods = ...

随机推荐

  1. could not get lock /var/lib/dpkg/lock

    这个问题的原因可能是有另外一个程序正在运行,导致资源被锁不可用.而导致资源被锁的原因,可能是上次安装时没正常完成,而导致出现此状况. 解决方法:输入以下命令 sudo rm /var/cache/ap ...

  2. MapReduce二次排序

    默认情况下,Map 输出的结果会对 Key 进行默认的排序,但是有时候需要对 Key 排序的同时再对 Value 进行排序,这时候就要用到二次排序了.下面让我们来介绍一下什么是二次排序. 二次排序原理 ...

  3. MVC中数据的内部校验

    针对MVC中实例类型的修饰,我们可以采用DataAnnotations类来完成,该类所处的命名空间是System.ComponentModel.DataAnnotations; 一.通过开类型,能够修 ...

  4. C# 中using的几个用途

    参考文献 http://www.cnblogs.com/morningwang/archive/2008/03/12/1102952.html http://msdn.microsoft.com/zh ...

  5. 利用less监视模式实时预览样式刷新浏览器

    [前言]此处介绍的方法只是我个人的用法,相信大家有更好更简洁的方式. 上次写到利用LiveReload解放F5.而且LiveReload可以编辑sass/less/stylus.但是可惜发现LiveR ...

  6. stm32上的Lava虚拟机开发进度汇报(3)

    感觉遇到一个瓶颈了,这几天都没有什么进度. 前几天把函数和一些最基本的伪指令实现了一下,能跑一点仅使用了绘图函数的lav,但是函数调用的问题一直没解决. 后来发现是粗心漏写了个++,解决了函数调用的问 ...

  7. Java super与this用法解析

    1.     子类的构造函数如果要引用super的话,必须把super放在函数的首位. class Base { Base() { System.out.println("Base&quot ...

  8. Node入门教程(5)第四章:global 全局变量

    global - 全局变量 全局对象(global object),不要和 全局的对象( global objects )或称标准内置对象混淆.这里说的全局的对象是说在全局作用域里的内的对象.全局作用 ...

  9. 仿淘宝购物车demo---增加和减少商品数量

    在上一篇博客中,小编简单的介绍了如何使用listview来实现购物车,但是仅仅是简单的实现了列表的功能,随之而来一个新的问题,买商品的时候,我们可能不止想买一件商品,想买多个,或许有因为某种原因点错了 ...

  10. JavaScript选择点击

    //class选择器[分类添加商品] var a=document.getElementsByClassName("item-collection-detail__products-item ...