
注册驱动
Classforname("commysqljdbcDriver");//这是连接mysql数据库的驱动
获取数据库连接
javasqlConnection conn=javasqlDriverManagergetConnection(); 3获取表达式
javasqlStatement stmt=conncreateStatement("jdbc:mysql://localhost/test
useUnicode=true&characterEncoding=GBK","root","null");//三个参数分别是数据库连接的URL,
用户名,密码 4执行SQL
javasqlResultSet rs=stmtexecuteQuery("select from user"); 5显示结果集里面的数据
while(rsnext()){
Systemoutprintln(rsgetInt(1));
Systemoutprintln(rsgetString("username"));
Systemoutprintln(rsgetString("password"));
Systemoutpringln();
}//执行插入语句
//stmtexecuteUpdate("insert into user values(1,'中文','345')");
释放资源
rsclose();
stmtclose();
connclose();
这是我自己以前写过的一个程序里的SQL数据库连接部分,其中有一部分是我程序里要用的不是必需的。。。包括第一个student变量,内部的(位于第一个的里面的那个第二个)try块,不过这部分也是一个读取的过程,有问题欢迎追问。
import javaioFile;import javaioFileNotFoundException;
import javaioIOException;
import javaioRandomAccessFile;
import javasql;
class DataProcessing implements Var{
public static Object [][] student = new Object[STUVAR][4];
DataProcessing() {
// TODO 自动生成构造函数存根
try{
ClassforName(driver);
Systemoutprintln("数据库连接成功!");
}catch(ClassNotFoundException e){
Systemerrprintln("ClassNotFoundException");
}
Connection conn = null;
Statement stmt = null;
try{
conn = null;
stmt = null;
conn = DriverManagergetConnection(sqlurl, userName, password);
Systemoutprintln("connect database sucessfull");
stmt = conncreateStatement();
String sqlSelect = "SELECT "+"FROM student";//数据库 *** 作语句
ResultSet rs = stmtexecuteQuery(sqlSelect);//利用executeQuery执行语句
/这一块是我读取,输出的方法/
int i = 0;
File f = new File("J:\\newtxt");
RandomAccessFile raf;
try {
fcreateNewFile();
raf = new RandomAccessFile(f,"rw");
while (rsnext()) {
student[i][0] = rsgetObject(1);
student[i][1] = rsgetObject(2);
student[i][2] = rsgetObject(3);
student[i][3] = rsgetObject(4);
i++;
rafwriteUTF("INSERT INTO student VALUES( "+rsgetObject(1)+","+
rsgetObject(2)+","+rsgetObject(3)+","+rsgetObject(4)+")");
}
} catch (FileNotFoundException e1) {
// TODO 自动生成 catch 块
e1printStackTrace();
} catch (IOException e1) {
// TODO 自动生成 catch 块
e1printStackTrace();
}
/这一部分是一个我程序利用到的读取并输出到文件的过程/
}catch(SQLException e){
Systemoutprintln("SQLException异常"+egetMessage());
eprintStackTrace();
} finally {
try {
connclose();
stmtclose();
Systemgc();
} catch (Exception e) {
}
}
Systemgc();
}
//实现与数据库的链接。
public class >
这是老师发给我们的资料,共享给你:\x0d\Type 1: jdbc-odbc桥 \x0d\Jdbc-odbc 桥 是sun公司提供的,是jdk提供的的标准api 这种类型的驱动实际是把所有 jdbc的调用传递给odbc ,再由odbc调用本地数据库驱动代码( 本地数据库驱动代码是指 由数据库厂商提供的数据库 *** 作二进制代码库,例如在oracle for windows中就是oci dll 文 件) \x0d\\x0d\jdbc-odbc桥|odbc|厂商DB代码---数据库Server\x0d\\x0d\只要本地机装有相关的odbc驱动那么采用jdbc-odbc桥几乎可以访问所有的数据库,jdbc- odbc方法对于客户端已经具备odbc driver的应用还是可行的\x0d\\x0d\但是,由于jdbc-odbc先调用 odbc再由odbc去调用本地数据库接口访问数据库所以,执行效率比较低,对于那些大数据量 存取的应用是不适合的而且,这种方法要求客户端必须安装odbc 驱动,所以对于基于 internet ,intranet的应用也是不合适的因为,你不可能要求所有客户都能找到odbc driver \x0d\\x0d\=====一般ACCESS用到的比较多,初学者用。实际项目是不用的。\x0d\\x0d\Type 2: 本地Api驱动 \x0d\\x0d\本地api驱动直接把jdbc调用转变为数据库的标准调用再去访问数据库\x0d\\x0d\这种方法需要本地 数据库驱动代码 本地api驱动|厂商DB代码---数据库Server这种驱动比起jdbc-odbc桥执行效率大大提高了但是,它仍然需要在客户端加载数据库厂商 提供的代码库这样就不适合基于internet的应用并且,他的执行效率比起3,4型的jdbc驱动 还是不够高 \x0d\\x0d\Type3:网络协议驱动 这种驱动实际上是根据我们熟悉的三层结构建立的 jdbc先把对数局库的访问请求传递给网 络上的中间件服务器 中间件服务器再把请求翻译为符合数据库规范的调用,再把这种调用 传给数据库服务器如果中间件服务器也是用java开法的,那么在在中间层也可以使用1,2型 jdbc驱动程序作为访问数据库的方法 网络协议驱动--中间件服务器---数据库Server \x0d\\x0d\由于这种驱动是基于server的所以,它不需要在客户端加载数据库厂商提供的代码库而且 他在执行效率和可升级性方面是比较好的因为大部分功能实现都在server端,所以这种驱动 可以设计的很小,可以非常快速的加载到内存中 但是,这种驱动在中间件层仍然需要有配置 其它数据库驱动程序,并且由于多了一个中间层传递数据,它的执行效率还不是最好 \x0d\\x0d\Type4 纯JAVA驱动 \x0d\这种驱动直接把jdbc调用转换为符合相关数据库系统规范的请求由于4型驱动写的应用可 以直接和数据库服务器通讯这种类型的驱动完全由java实现,因此实现了平台独立性 本地协议驱动---------数据库Server \x0d\\x0d\由于这种驱动不需要先把jdbc的调用传给odbc或本地数据库接口或者是中间层服务器所 以它的执行效率是非常高的而且,它根本不需要在客户端或服务器端装载任何的软件或驱动 这种驱动程序可以动态的被下载但是对于不同的数据库需要下载不同的驱动程序 \x0d\\x0d\以上对四种类型的jdbc驱动做了一个说明那么它们适合那种类型的应用开发呢 \x0d\\x0d\Jdbc-odbc桥由于它的执行效率不高,更适合做为开发应用时的一种过度方案,或着对于初学 者了解jdbc编程也较适用 对于那些需要大数据量 *** 作的应用程序则应该考虑2,3,4型驱动在intranet方面的应用可以 考虑2型驱动,但是由于3,4型驱动在执行效率上比2型驱动有着明显的优势,而且目前开发 的趋势是使用纯java所以3,4型驱动也可以作为考虑对象 至于基于internet方面的应用就只有考虑3,4型驱动了 因为3型驱动可以把多种数据库驱 动都配置在中间层服务器所以3型驱动最适合那种需要同时连接多个不同种类的数据库, 并且对并发连接要求高的应用 4型驱动则适合那些连接单一数据库的工作组应用。\x0d\\x0d\现在是纯java 开发,所以一般都用type4的jdbc driver。
一般来说,连接文件放在哪没有固定的说法,那要看你用的是什么框架,spring,struts,java,jsp,hibernate等的连接位置都不同,有的在配置文件里,有的在代码里,tomcat的serverxml中也可以配置数据库连接,如果你的再java文件中,那就从各个文件中寻找类似下面的代码:
Stringdriver="commysqljdbcDriver";
Stringurl="jdbc:mysql://localhost:3306/test";
Stringuser="root";
Stringpassword="";
try{
ClassforName(driver);
}
catch(Exceptione){
Systemoutprintln("无法加载驱动程序"driver);
}
try{
Connectioncon=(url,user,password);
if(!conisClosed())
Systemoutprintln("数据库连接成功");
conclose();
}
catch(ee){
Systemoutprintln("数据库连接失败");
}
}
}
关键在Connectioncon=(url,user,password);
这一句,java,jsp主要用这个连接的,其余的只是把这个封装了。无非需要commysqljdbcDriver,user,password这三个字段,从项目里搜索或一个一个找应该可以找到。搜索时最好用commysqljdbcDriver或其中一部分来搜索。
======================
别人给你的源程序,那说明他本来里面应该已经有链接数据库的文件了,你就不用自己写了,数据库链接可以在tomcat中也可以不在tomcat里,已经有了,就不用你自己写了,你要做的就是找到数据库链接文件,然后把里面的地址、用户名、密码改成你目前数据库的。
按照我给你的方法应该可以找到数据库链接文件。
以上就是关于java中使用JDBC连接数据库的步骤是什么全部的内容,包括:java中使用JDBC连接数据库的步骤是什么、java 数据库连接、java数据库连接等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)