2楼 3、加载驱动程序 try{ Class.forName(com.mysql.jdbc.Driver); System.out.println(Success loading Mysql Driver!); }catch(Exception e) { System.out.println(Error loading Mysql Driver!); e.printStackTrace(); } 4、设置连接的url jdbc:mysql://localhost/databasename[?pa=va][&pa=va] 三、以下列出了在使用JDBC来连接Oracle数据库时可以使用的一些技巧 1、在客户端软件开发中使用Thin驱动程序 在开发Java软件方面,Oracle的数据库提供了四种类型的驱动程序,二种用于应用软件、applets、servlets等客户端软件,另外二种用于数据库中的Java存储过程等服务器端软件。在客户机端软件的开发中,我们可以选择OCI驱动程序或Thin驱动程序。OCI驱动程序利用Java本地化接口(JNI),通过Oracle客户端软件与数据库进行通讯。Thin驱动程序是纯Java驱动程序,它直接与数据库进行通讯。为了获得最高的性能,Oracle建议在客户端软件的开发中使用OCI驱动程序,这似乎是正确的。但我建议使用Thin驱动程序,因为通过多次测试发现,在通常情况下,Thin驱动程序的性能都超过了OCI驱动程序。 2、关闭自动提交功能,提高系统性能 在第一次建立与数据库的连接时,在缺省情况下,连接是在自动提交模式下的。为了获得更好的性能,可以通过调用带布尔值false参数的Connection类的setAutoCommit()方法关闭自动提交功能,如下所示: conn.setAutoCommit(false); 值得注意的是,一旦关闭了自动提交功能,我们就需要通过调用Connection类的commit()和rollback()方法来人工的方式对事务进行管理。 3、在动态SQL或有时间限制的命令中使用Statement对象 在执行SQL命令时,我们有二种选择:可以使用PreparedStatement对象,也可以使用Statement对象。无论多少次地使用同一个SQL命令,PreparedStatement都只对它解析和编译一次。当使用Statement对象时,每次执行一个SQL命令时,都会对它进行解析和编译。这可能会使你认为,使用PreparedStatement对象比使用Statement对象的速度更快。然而,我进行的测试表明,在客户端软件中,情况并非如此。因此,在有时间限制的SQL操作中,除非成批地处理SQL命令,我们应当考虑使用Statement对象。 此外,使用Statement对象也使得编写动态SQL命令更加简单,因为我们可以将字符串连接在一起,建立一个有效的SQL命令。因此,我认为,Statement对象可以使动态SQL命令的创建和执行变得更加简单。 4、利用helper函数对动态SQL命令进行格式化 在创建使用Statement对象执行的动态SQL命令时,我们需要处理一些格式化方面的问题。例如,如果我们想创建一个将名字O'Reilly插入表中的SQL命令,则必须使用二个相连的“''”号替换O'Reilly中的“'”号。完成这些工作的最好的方法是创建一个完成替换操作的helper方法,然后在连接字符串心服用公式表达一个SQL命令时,使用创建的helper方法。与此类似的是,我们可以让helper方法接受一个Date型的值,然后让它输出基于Oracle的to_date()函数的字符串表达式。 5、利用PreparedStatement对象提高数据库的总体效率 在使用PreparedStatement对象执行SQL命令时,命令被数据库进行解析和编译,然后被放到命令缓冲区。然后,每当执行同一个PreparedStatement对象时,它就会被再解析一次,但不会被再次编译。在缓冲区中可以发现预编译的命令,并且可以重新使用。在有大量用户的企业级应用软件中,经常会重复执行相同的SQL命令,使用PreparedStatement对象带来的编译次数的减少能够提高数据库的总体性能。如果不是在客户端创建、预备、执行PreparedStatement任务需要的时间长于Statement任务,我会建议在除动态SQL命令之外的所有情况下使用PreparedStatement对象。 |
|
|
- 浏览: 200782 次
- 性别:
- 来自: 北京
最新评论
-
DRUNKonSTREET:
找了忒久了,谢谢
JNDI到底是什么,有什么作用 -
xiaozang:
非常感谢
JNDI到底是什么,有什么作用 -
yong7356:
学习了。。。。。。
android AVD 详解 -
ocaicai:
简洁明了,写得真好啊
简简单单储存过程——循环一个select结果集 -
wang4674890:
天下文章一般抄!
Ibatis 批量添加修改删除-batch-insert-update-delete
相关推荐
JDBC的概念; JDBC的驱动类型; java.sql包中常用类的使用; 运用JDBC编写数据库应用程序
在实际应用中,为了更好地管理数据库连接,可以使用如Apache DBCP或C3P0这样的连接池库,它们能有效地管理和复用数据库连接,提高应用性能。 在开发过程中,了解`CHANGES`, `COPYING`, `README`和`README.txt`等...
在描述中提到的"jdbc方式连接hive thrift server驱动器",这里提到了Thrift Server,它是Hive提供的一种非HDFS的访问方式,允许用户通过多种语言(如Java、Python等)远程访问Hive。Thrift是一个软件框架,用于构建...
Redis是一款高性能的键值数据库,广泛应用于缓存、消息队列等场景。Jedis是Java社区中最常用的Redis客户端,提供了丰富的API来操作Redis服务器。在本压缩包中,包含的是Jedis的2.9.0版本,这是一个稳定且功能完善的...
总结来说,"mysql-connector-java-8.0.15.zip"是一个包含MySQL JDBC驱动的压缩包,主要文件"mysql-connector-java-8.0.15.jar"用于Java应用程序连接和操作MySQL数据库。使用这个驱动,开发者可以通过JDBC API执行SQL...
springboot项目整合sharding-jdbd实现一主二从读写分离项目;主要通过对sharding-jdbc的整合进行快速入门对sharding-jdbc的学习,快速搭建读写分离的项目实战,适合刚刚学习sharding-jdbc的小伙伴们进行入门的实践。
6. **数据库操作**:项目中很可能使用了JDBC(Java Database Connectivity)来连接和操作数据库,包括插入、更新、查询和删除用户数据。可能还涉及到预编译的SQL语句(PreparedStatement)以防止SQL注入攻击,以及...
JDBC实战案例--利用jdbc实现的宠物信息管理系统 利用jdbc实现对宠物的信息进行管理的一套系统 宠物信息:宠物ID,宠物类别,宠物名字,宠物性别,宠物年龄,宠物入库日期 系统完成功能:实现对宠物信息的录入,修改...
本人纯萌新,根据老师教导,总结关于JDBD的思维导图,请各位指正
首先,我们需要了解 Ant 的 `<java>` 标签,这是 Ant 调用 Java 类的主要方式。在提供的 `testset_build.xml` 文件中,`<java>` 标签被用来执行一个 Java 类。下面是对这个标签的详细说明: ```xml ${ddl....