黑马程序员技术交流社区
标题:
jdbc中的一些问题
[打印本页]
作者:
王大斌
时间:
2013-4-11 23:57
标题:
jdbc中的一些问题
在jdbc中,我定义了一个数据库类
其中定义了一些静态的数据库引用
private static Connection ct = null;
private static ResultSet rs = null;
private static PreparedStatement ps = null;
试问,在这个类中,到底使用纯静态的方法和引用好呢?还是使用一个简单类
也就是创建对象的方式得到比较好呢
作者:
Sword
时间:
2013-4-12 01:10
不太好意思,你的问题我没太看明白,给你个jdbc操作mysql数据库实例代码参考一下,希望能对你有所帮助
package com.ty.test;
import java.sql.*;
public class TestMysql {
//测试如何操作mysql数据库
public static void main(String args[])
{
Connection ct=null;
PreparedStatement ps=null;
ResultSet rs=null;
try {
//1.加载驱动
Class.forName("com.mysql.jdbc.Driver");
//2.得到链接
ct=DriverManager.getConnection
("jdbc:mysql://localhost:3306/spdb1?useUnicode=true&characterEncoding=UTF-8","root","数据库的密码");
//3.创建ps<ps代表预编译的sql对象>
ps=ct.prepareStatement("select * from test14");
//4.执行
rs=ps.executeQuery();
while(rs.next())
{
System.out.println("姓名="+rs.getString("name")+" 薪水="+rs.getFloat("sal"));
}
} catch (Exception e) {
// TODO: handle exception
}finally{
//关闭
if(rs!=null)
{
try {
rs.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
rs=null;
}
if(ps!=null)
{
try {
ps.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
ps=null;
}
if(ct!=null)
{
try {
ct.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
ct=null;
}
}
}
}
复制代码
作者:
郭强
时间:
2013-4-13 00:51
我来回答楼主的提问,这个问题可以从多个方面来看,是否定义成静态的,得看实际情况,
如果你只是单线程访问,那就定义成静态的吧,如果涉及到多线程,那就最好不要使用静态的。
作者:
黄玉昆
时间:
2013-4-14 14:31
如果问题未解决,请继续追问,如果没有问题了,请将帖子分类 改为“已解决”,谢谢
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2