jdbctest4.java

来自「java与数据库相连接的原程序」· Java 代码 · 共 83 行

JAVA
83
字号
package main;

import java.sql.Connection;
import java.sql.DriverManager;
public class JdbcTest4 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String url="jdbc:oracle:thin:@127.0.0.1:1521:orcl";
		String driver="oracle.jdbc.driver.OracleDriver";
		String user="scott";
		String password="tiger";
		String sql="SELECT * FROM  PLSQL101_TEST_2 WHERE NAME=?";
		Connection conn = null;
		try
		{
			//
			//oracle.jdbc.driver.OracleDriver orcldriv =new oracle.jdbc.driver.OracleDriver();
			Class.forName(driver);					
			/*
			 * 保证相应的Driver类已经被加载到 jvm中,并且完成了类的初始化工作就行了,而具体是怎样实现这个功能却是没有讲究的。
			 */
			//获取连接
			/*
			 * 建立连接是一个费时的活动,每次都得花费0.05s~1s的时间,而且系统还要分配内存资源。
			 * 这个时间对于一次或几次数据库操作,或许感觉不出系统有多大的开销。可是对于现在的Web应用,
			 * 尤其是大型电子商务网站,同时有几百人甚至几千人在线是很正常的事。
			 * 在这种情况下,频繁的进行数据库连接操作势必占用很多的系统资源,网站的响应速度必定下降,
			 * 严重的甚至会造成服务器的崩溃。不是危言耸听,这就是制约某些电子商务网站发展的技术瓶颈问题。
			 * 其次,对于每一次数据库连接,使用完后都得断开。否则,如果程序出现异常而未能关闭,
			 * 将会导致数据库系统中的内存泄漏,最终将不得不重启数据库。
			 * 还有,这种开发不能控制被创建的连接对象数,系统资源会被毫无顾及的分配出去,如连接过多,
			 * 也可能导致内存泄漏,服务器崩溃。
			 */
			conn = DriverManager.getConnection(url, user, password);				
			conn.setAutoCommit(false);
			for (int i=0;i<10;i++)
			{			 
			//执行操作
			sql="INSERT INTO PLSQL101_TEST_2(NAME,GENDER)VALUES(?,?)";		
			java.sql.PreparedStatement  stmt = conn.prepareStatement(sql);
			stmt.setString(1, "222");
			stmt.setString(2, "3");
			stmt.execute();			
			stmt.close();										
			}
			conn.commit();
		}
		catch(Exception E)
		{
			try
			{
			conn.rollback();
			}
			catch(Exception e)
			{
				
			}
			
			System.out.println(E);
		}
		finally
		{
			if (conn != null)
			{
				try
				{
				conn.close();
				}
				catch(Exception e)
				{
					
				}
				conn = null;
			}
		}
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?