JDBC基础1

来源:互联网 发布:大淘客cms怎么样 编辑:程序博客网 时间:2024/06/04 23:15

JDBC基础

JDBCJ2EE平台中的数据库连接技术,JDBC APIJAVA开发者使用数据库提供了统一的编程接口,它由一组JAVA类和接口组成。通过使用JDBCJAVA开发人员可以很方便的将SQL语句传送给几乎任何一种数据库进行处理。

利用JDBC进行数据库的操作一般有6个步骤。

1、  注册驱动:Class.forName (驱动程序);

2、  连接数据库:Connection conn = DriverManager.getConnection (URL);

3、  创建sql语句:Statement st = conn.createStatement();

4、  执行sql语句:ResultSet rt = st.executeQuery (…);st.executeUpdate(…);

5、  处理结果集:while (rt.next()){…};

6、  关闭连接:rt.close();st.close();conn.close();

PreparedStatement

在第三个步骤也可以创建一个PreparedStatement,即PreparedStatement ps = con. PreparedStatement("select * from jie where number = ?");

ps.setInt(1,1);

rs = ps.executeQuery();

存储过程:

另外还可以使用存储过程进行数据库操作。首先创建存储过程:

create procedure test(na varchar(45), idd int)

Begin

select * from jie where name = na and id = idd;

End

然后在程序中写如下代码:

CallableStatement st = con.prepareCall("{call test(?,?)}");

St.setString(1, "ee");

St.setInt(2,2);

st.executeQuery();

这样我们就完成了用存储过程操作数据库了。

数据源和连接池:

DateSource接口代表了数据源,MySql里:

MysqlDataSource mds = new MysqlDataSource();

mds.setUrl(…);

mds.setUser();

mds.setPassword();

conn = mds.getConnection();

     Connection pooling技术可以使系统性能明显提高。在MySql里:

MysqlConnectionPoolDataSource source = new MysqlConnectionPoolDataSource();

source.setURL();

source.setUser();

source.setPassword();

PooledConnection pcon = source.getPooledConnection();

Connection con = con = pcon.getConnection();

JNDI

Jndi支持在java编程语言中访问名字服务器名字服务器的目的是把名字服务对象绑定,并且提供一种使用名字来访问对象的方法Context对象提供了命名到对象的绑定的集合,它提供了几个接口访问命名服务

1、   bind(Name name,Object obj);

a、设置参数:

Properties jndiEnv = new Properties();

jndiEnv.setProperty(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.fscontext.RefFSContextFactory");

jndiEnv.setProperty(Context.PROVIDER_URL, "file://e://temp");

b、创建Context对象

Context ct = new InitialContext(jndiEnv);

C、创建数据源对象

MysqlDataSource mds = new MysqlDataSource();

mds.setUrl();

mds.setUser();

mds.setPassword();

dbind数据源对象到一个名字上

ct.bind("mysqlDataSource",mds);

2、   lookup(String name)

a、设置参数

Properties jndiEnv = new Properties();

jndiEnv.setProperty(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.fscontext.RefFSContextFactory");

jndiEnv.setProperty(Context.PROVIDER_URL, "file://e://temp");

b、创建Context对象

Context ct = new InitialContext(jndiEnv);

Clookup

DataSource ds = (DataSource)ct.lookup("mysqlDataSource");

D、获得连接

Connection con = ds.getConnection();

 

原创粉丝点击