首先建立java项目
根据你使用的后台数据库选择jdbc.jar包,如果是oracle的话应该是ojdbc6.jar,如果是sqlserver的话是sqljdbc.jar ,如果是使用的mysql数据库的话使用mysql-connector-java.jar包
当然这些jar包的版本可能相对老一些了,可以选择新使用。
jar包放入项目中之后还要在属性中进行导入进来,否则不可用。
本篇仅以oracle为例进行简单的介绍
public class BaseDao {
static Connection conn = null;
static PreparedStatement prepa = null;
static ResultSet result = null;
static Statement st = null;
public void getconnect(){
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:XE","system","sun");
//前面的地址是数据库的地址,这里的XE是数据库的名称,后面的两个是用户名和密码。
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
红线的两句话是最重要的,第一条是oracle数据库固定的写法。
这样一个jdbc连接就创建好了。
介绍一下Statement和PreparedStatement的区别。
注意:几种类型最上面已经声明过了,下面不再声明直接使用!
前者的使用方法:
new BaseDao().getconnect(); //这一步打开jdbc的连接
string sql="insert into emp1(empno,ename) values(2233,'jiazihui')"; //他与PreparedStatement的本质区别就在这里,这里他只能使用这种固定的赋值方式。
st = conn.createStatement();
st.execute(sql); //这里返回的是一个boolean值,如果执行sql返回的是一个结果集合的话那么返回true 否则返回false。
后者的使用方法:
new BaseDao().getconnect(); //这一步打开jdbc的连接
string sql="insert into emp1(empno,ename) values(?,?)"; //这就是他的用处了,可以用这种?号来代替。
prepa=conn.PreparedStatement(sql);
prepa.setInt(1,7682); //这里就是用来设置那两个?号的参数了。当然还有很多种类型,这里不做例举。
prepa.setString(2,"hanhang"); //这里就是用来设置那两个?号的参数了。当然还有很多种类型,这里不做例举。
上面介绍了执行sql语句会返回boolean或者返回一个select的结果集
如果是返回的结果集的话需要使用下面的来接收:
例如:
string sql="select * from emp"
st=conn.createStatement();
result(这个上面已经声明过了,)=st.execute(sql);
while(result.next())
{
system.out.println(result.getInt("empno")); //这里是取第一条记录的empno这个字段的数据打印,然后循环打印
}
上面所声明的几个连接或者会话都是需要使用后关闭的,一般会使用如下方法关闭:
public void close(){
try {
if(conn!=null && !conn.isClosed()){
conn.close();
}
if(prepa != null && !prepa.isClosed()){
prepa.close();
}
if(result != null && !result.isClosed()){
result.close();
}
if(st != null && !st.isClosed()){
st.close();
}
System.out.println("连接已关闭!");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
通过判断然后使用close进行关闭
到这里jdbc基本介绍已经结束了。