一、数据库连接

1、Drivermanager链接数据库

String className,url,uid,pwd;

className="oracle.jdbc.driver.OracleDriver";

uid="scott";

pwd="tiger";

url="jdbc:oracle:thin:@localhost:1521:ora92";//这里ora92是你的数据库实例名的例子

Class.forName(classname);

Connection conn=DriverManager.getConnection(url,uid,pwd);

2、JNDI链接数据库

String jndi ="jdbc/db"; //  e20-040 9L0-609 数据源的名称

//context是一组名称到对象的绑定组成

Hashtable env=new Hashtable ();

Context ctx=(Context)new InitialContext.lookup("env");// 获得数据源所在的上下文点的对象

DataSource ds=(DataSource)ctx.lookup(jndi);//找到数据源

Connection conn=ds.getConnection();//

二、执行sql语句

String sql;

StateMent stat=conn.createStatement();

ResultSet rs=stat.executeQuery(sql);//执行数据的查询语句(select);

stat.executeupdate(sql);//执行数据的更新语句(inset into ,delete ,update ,drop)

stat.close();

三、用preparedStatement来执行sql语句

String sql="inset into table(id,name) values(?,?)";

PreparedStatement ps=conn.prepareStatement(sql);

ps.setInt(1,001);

ps.setString(2,"zhangmanli");

ps.executeQuery();

int count=ps.executeupdate();

四、处理执行结果

查询语句,返回记录集ResultSet对象

更新语句,返回数字,表示该更新影响的记录数

javax.sql.*

javax.naming.*;

数据处理:

1、关闭connection 的自动提交

conn.setAutoCommit(false);

2、执行一系列sql 语句

Statement sm;

sm=conn.createStatement(sql);

sm.executeupdate();

sm.close();

3、提交

conn.commit();

4、回滚机制;

conn.rollback();

五、线程处理

jndi和dataSource来获得数据库的链接:

import java.sql.ResultSet ;

import java.sql.*;

import javax.sql.DataSource;

import javax.naming.Context;

import javax.naming.InitialContext;

import java.util.Hashtable;

import java.util.Properties;

import java.io.*;

public class BasicExample{

public static void main(String args[]){

Connection conn=null;

try{

Properties prop =new Properties();

prop.load(new FileInputStream("simple.properties"));

Hashtable env =new Hashtable();

env.put(Context.INITIAL_CONTEXT_FACTORY,

prop.getProperty("INITIAL_CONTEXT_FACTORY"));

env.put(Context.PROVIDER_URL,prop.getProperty("PROVIDER_URL"));

InitialContext ctx=new InitialContext(env);

DataSource ds=(DataSource)ctx.lookup("Book");

Conn=ds.getConnection();

Statement stat=conn.createStatement();;

ResultSet rs=stmt.executeQuery(sql);

while(rs.next()){

int id=Integer.parseInt(rs.getString("userId"));

String userName=rs.getString ("username");

}

}catch(SQLException e){

e.printStackTrace();

}finally{

try{

if(conn!=null){

conn.close();

}

}catch(SQLException e){

e.printStackTrace();

}

}

}

};

java调用数据库的基本步骤_Java实现数据库操作的基本流程(转)相关推荐

  1. java 调用kettle job 传参_java调用kettle向job(任务)和transformation(转换)传递参数实例...

    虽然网上文章有说java可以传递参数给kettle,不过只找到了传递参数给转换的文章,没有讲参数传递给job,kettle中如何使用java传递的参数.今天就以上问题,一并共享. /** * 本测试类 ...

  2. java调用kafka接口发送数据_Java调用Kafka生产者,消费者Api及相关配置说明

    本次的记录内容包括: 1.Java调用生产者APi流程 2.Kafka生产者Api的使用及说明 3.Kafka消费者Api的使用及说明 4.Kafka消费者自动提交Offset和手动提交Offset ...

  3. Java调用MySQL并返回数据_Java调用MySQL存储过程并获得返回值的方法

    本文实例讲述了Java调用MysqL存储过程并获得返回值的方法.分享给大家供大家参考.具体如下: private void empsInDept(Connection myConnect,int de ...

  4. java调用摄像头保存到图库_Java调用摄像头并拍摄保存

    Java调用摄像头并拍摄保存. 找到一篇关于java调用硬件(摄像头),一篇挺有意思的文章,索性转一下: ------------------------------------- 转自:http:/ ...

  5. java调用包中的类_java调用另一个包中的类的方法

    java调用另一个包中的类的方法 发布时间:2020-05-18 15:04:40 来源:亿速云 阅读:199 作者:小新 今天小编给大家分享的是java调用另一个包中的类的方法,相信很多人都不太了解 ...

  6. java调用接口实现的方法_java调用接口的实现方法

    java调用接口的实现方法 发布时间:2020-06-29 11:08:46 来源:亿速云 阅读:78 作者:Leah 本篇文章给大家分享的是有关java调用接口的实现方法,小编觉得挺实用的,因此分享 ...

  7. java调用oracle删除,使用IDEA对Oracle数据库进行简单增删改查操作

    1.1 java中的数据存储技术 在java中,数据库存取技术可分为如下几类: 1.jdbc直接访问数据库 2.jdo(java data object)是java对象持久化的新的规范,也是一个用于存 ...

  8. java 调用 swf 文件上传_java SpringMvc 实现文件在线预览(openoffice+swftools+flexpaper)

    项目需求:服务器接受的文件当下只能下载之后才能浏览内容,现需要后台能在线浏览到文件内容,避免繁琐无用文件下载操作. 通过几天网上资料搜索,目前免费的在线预览开发技术使用最多还是(openoffice+ ...

  9. java调sqlloader,Java调用SqlLoader将大文本数据导入数据库

    项目描述 将一千万条数据,大约500M的文本文档的数据导入到数据库 分析:通过Java的IO流解析txt文本文档,拼接动态sql实现insert入库,可以实现,缺点如下 第一:IO流解析大文本文件对机 ...

最新文章

  1. 计算机技术应用及信息管理,计算机应用技术与信息管理整合研究(共2808字).doc...
  2. WPF 的Listbox 滚动处理
  3. 学写网站(一)前端配置之安装nvm、node、npm
  4. 使用NPOI将数据库里信息导出Excel表格并提示用户下载
  5. 中国房地产市值已经超过450万亿,为何还不见房价下跌?
  6. final 在 java 中有什么作用?
  7. greenplum gpfdist应用
  8. python 函数进度条怎么_刷新你对进度条的认识,用python写出不一样的进度条
  9. 最短路径 floyd java_java实现Floyd算法求最短路径
  10. keil无法生成axf文件之解决方法
  11. DB2中不同于其它数据库的操作
  12. 姓名的首字母组成的图案C语言怎么编,c语言编写一个程序,根据用户输入英文名和姓先显示姓氏,其后跟一个逗号,然后显示名的首字母:...
  13. Layui 数据表格动态cols(字段)动态变化
  14. cc2530设计性实验代码六
  15. android 调用百度地图客户端,
  16. dc dc变换器的建模及matlab仿真,基于Matlab的AC/DC变换器的系统建模和仿真.pdf
  17. 明明有内存报错CUDA out of memory
  18. 简单弄懂配置github CND加速
  19. 暗猝灭剂BHQ-2 氨基,BHQ-2 amine,CAS:1241962-11-7
  20. 职场中年人,愿你终能体面的离开

热门文章

  1. 【李宏毅2020 ML/DL】P74 Generative Adversarial Network | Basic Idea
  2. 【李宏毅2020 ML/DL】P10 Classification_1 | 简单的例子告诉你使用 wx+b 以及 Sigmoid 作为激活函数的合理性
  3. 微信小程序实质是什么? Hybrid App
  4. python 学习之 PythonBasic2
  5. 思科 接入点 本地转发_思科路由器配置 IPv6 和 OSPFv3 路由
  6. 安卓nfs网络文件服务器,Linux网络文件服务器 NFS
  7. 跳出框架iframe的操作语句
  8. Stanford Parser的学习之开篇(一)
  9. 最新pvz服务器补偿码,阴阳师:补偿来了!大量活动导致服务器崩溃,现已修复且下发补偿...
  10. data spring 指定时区_今天的工作内容:Spring Boot 2.X整合Spring-cache