
对于连接JDBC我也只是略懂而已,以下是我写的代码,顺便告诉你一个小窍门:“贾琏欲执事”,意思就是加载驱动,连接数据库,创建需要的SQL语句,执行语句,释放链接。(希望你能看明白)
import javasqlConnection;
import javasqlDriverManager;
import javasqlResultSet;
import javasqlResultSetMetaData;
import javasqlSQLException;
import javasqlStatement;
public class JdbcTest {
/
@param args
/
public static void main(String[] args) {
//加载一个驱动
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
ResultSetMetaData rsmd=null;
try {
// new Driver();
ClassforName("commysqljdbcDriver");
String url="jdbc:mysql://localhost:3306/class22signed";
//获取和数据的连接对象
conn=DriverManagergetConnection(url, "root", "root");
Systemoutprintln("数据连接成功");
//通过这个连接对象去 *** 作数据库
//如何 *** 作我们 *** 作数据库,要执SQL语句,比如,查询学生表t_student得执行select from t_student;
//所以才出现语句对象:Statement
stmt=conncreateStatement();
String sql="select from t_student";
//执行查询语句,获取结果集对象
rs=stmtexecuteQuery(sql);
rsmd=rsgetMetaData();
for(int i=1;i<=rsmdgetColumnCount();i++){
Systemoutprint(rsmdgetColumnName(i)+"\t");
}
Systemoutprintln();
//展现结果集对象中的数据
while(rsnext()){
for(int i=1;i<=rsmdgetColumnCount();i++){
Systemoutprint(rsgetString(i)+"\t");
}
Systemoutprintln();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
eprintStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}finally{
try {
if(rs!=null){
rsclose();
}
if(stmt!=null){
stmtclose();
}
if(conn!=null){
connclose();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
}
}
}
1,加载驱动
2,创建连接
3,获取语句对象
4,执行sql语句
5,如果是查询,还可以使用结果集
6,关闭连接
7,捕捉和处理异常
一段典型的代码供参考,具体方法和参数说明请参考Java API
try
{
ClassforName("驱动的包名和类名");
Connection conn=DriverManagergetConnection("数据库","用户","口令");
PreparedStatement ps=connprepareStatement("带参数的sql语句");
psset参数类型(参数序号,值);
RecordSet rs=psexecute();
//使用rs
rsclose();
psclose();
connclose();
}catch(SQLException ex)
{
//处理异常
}
A、加载驱动程序(识别并连接数据库)
种类:jdbc-odbc桥驱动
主入口程序名:sunjdbcodbcJdbcOdbc
纯java驱动
oraclejdbcdriverOracleDriver
B、
定义JDBC
URL(详细定位要访问的数据库的信息)
组成-
-
jdbc协议:子协议:子名称//子协议:驱动程序名称或是数据库的连接访问机制;子名称:描述要访问的数据库的地址信息,是通过网络访问,必须将网扩地址作为子名称的一部分
C、
建立连接(驱动程序管理器)
连接步骤:
1、ClassforName(“驱动程序的主入口程序名”);
2、定义URL:
jdbc:oracle:thin:@IP地址:端口:服务名
3、DriverManager类:管理驱动程序并且使得驱动程序与应用程序建立连接
4、Connection类:保存了应用程序与数据库建立的连接,应用程序与数据库进行的所有 *** 作都是在该连接对象上进行
不是必须的,JDBC技术其实就是为了简化连接过程,只需要导入相对应数据的jdbc driver,即可实现连接数据。
jdbc还支持实时更新和非实时更新,这也是adonet的重要特色。
ODBC我记得我学JDBC的时候,在阅读材料里见过,不是主流技术。
/
一个非常标准的连接Oracle数据库的示例代码
/
public void testOracle()
{
Connection con = null;// 创建一个数据库连接
PreparedStatement pre = null;// 创建预编译语句对象,一般都是用这个而不用Statement
ResultSet result = null;// 创建一个结果集对象
try
{
ClassforName("oraclejdbcdriverOracleDriver");// 加载Oracle驱动程序
Systemoutprintln("开始尝试连接数据库!");
String url = "jdbc:oracle:thin:@127001:1521:XE";// 127001是本机地址,XE是精简版Oracle的默认数据库的SID
// 如果是服务名,则用String url = "jdbc:oracle:thin:@127001:1521/ORCL
String user = "system";// 用户名,系统默认的账户名
String password = "147";// 你安装时选设置的密码
con = DriverManagergetConnection(url, user, password);// 获取连接
Systemoutprintln("连接成功!");
String sql = "select from student where name=";// 预编译语句,“?”代表参数
pre = conprepareStatement(sql);// 实例化预编译语句
presetString(1, "刘显安");// 设置参数,前面的1表示参数的索引,而不是表中列名的索引
result = preexecuteQuery();// 执行查询,注意括号中不需要再加参数
while (resultnext())
// 当结果集不为空时
Systemoutprintln("学号:" + resultgetInt("id") + "姓名:"
+ resultgetString("name"));
}
catch (Exception e)
{
eprintStackTrace();
}
finally
{
try
{
// 逐一将上面的几个对象关闭,因为不关闭的话会影响性能、并且占用资源
// 注意关闭的顺序,最后使用的最先关闭
if (result != null)
resultclose();
if (pre != null)
preclose();
if (con != null)
conclose();
Systemoutprintln("数据库连接已关闭!");
}
catch (Exception e)
{
eprintStackTrace();
}
}
}
先从安装了Oracle的数据库服务器中,找到Oracle安装目录,然后将该目录下的jdbc\lib\classes12jar文件拷贝到WEB发布服务器的某个目录。假设就直接放在C:\根目录下吧,然后把该路径添加到系统--高级--环境变量中变量名为CLASSPATH的值中,如:
D:\Program Files\SQLLIB\java\db2javazip;D:\Program Files\SQLLIB\java\runtimezip;c:classes12jar; 也就是让java能够找到这个包。
1注册加载驱动:
驱动名:DRIVER="oraclejdbcdriverOracleDriver";
ClassforName("驱动类名");
2获得连接:
数据库地址: URL="jdbc:oracle:thin:@127001:1521:ORCL";
Connection conn = DriverManagergetConnection(数据库地址,用户名,密码);
Systemoutprintln("连接成功");
3创建Statement对象:
Statement 类的主要是用于执行静态 SQL 语句并返回它所生成结果的对象。通过Connection 对象的 createStatement()方法可以创建一个Statement对象。例如:Statement statament = connectioncreateStatement(); 具体示例创建Statement对象
Statement statamentMySQL =connectMySQLcreateStatement();
以上就是关于请问谁可以告诉我jdbc连接数据库的具体 *** 作啊,谢谢全部的内容,包括:请问谁可以告诉我jdbc连接数据库的具体 *** 作啊,谢谢、JDBC调用数据库的基本步骤、jdbc连接数据库步骤都有哪些等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)