java访问oracle最快的方式是什么?

wen_ling 2010-01-08 10:20:52
java访问oracle最快的方式是什么?
【备注】
我知道的java连接oracle的方式只有JDBC,还有其它方式吗?
如果有,那种最快?
...全文
487 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
liqzhangq 2010-05-15
  • 打赏
  • 举报
回复
顶一下
oracle QQ群:54775466
欢迎爱好者 一起入群探讨
xieyu_zy 2010-05-15
  • 打赏
  • 举报
回复
LZ的问题的确比较模糊。

其实我们很多时候在乎的不是连接数据库的速度,因为这都是可以解决的,通过连接池的管理对于没有死掉的链接,可以长期性使用,而不是使用完就关闭掉,如上面某层所说的工厂管理,在初始化的时候就建立了这部分连接,并有一个工厂来管理它。。。。

而直接挂接连接,通过JDBC连接肯定是最底层最快的,ODBC是通过了操作系统,这个超过一部分访问量就挂掉了。其余第三方提供很多框架(也是上述描述的工厂)来管理JDBC,常规的有Hibernate做到了ORM、ibatis、Spring JdbcTemplate等等,我们在连接池的基础上几乎不用考虑太多连接上的开销,从连接角度考虑更多的是扩展性和稳定性问题;而查询的开销主要在于SQL的能力了,而且在很多情况下体现不明显,在大型应用系统中,存在大数据量的和特殊的关联,就考研一些sql的编写能力;对于批量操作,很多时候需要考虑一些批处理或者封装到ORACLE端去处理等等。

所以一般连接的时间消耗不是我们主要的问题,而连接池在稍微大一点的应用中都应当考虑;举个很简单的例子,要做一个简单的查询语句,你需要带上路径和SID找到ORACLE对应的监听并将用户名和密码交给他到数据库中系统表空间检测是否存在用户,密码是否正确,正确则建立TCP长链接返回正确给JDBC驱动程序,JDBC驱动告诉你可以向下执行并通过该TCP流传递SQL到ORACLE,但是前面那部分貌似是多余的,因为这不是段链接,是长链接需求,如果连接起来没有出现异常,我就一直使用,这个过程由一个领导来分配和管理(初始化就装在一些连接信息,有请求就分配并标识其正在使用,不够了再申请并放入工厂,错误了,根据实际情况就对应解决),这就是连接池,因为没有网络连接和数据库验证的开销,几乎直接和数据库进行通信(注意这不代表是批处理,其概念是同时提交N多数据和多个SQL,和这个有区别)。。。。
cly179 2010-05-13
  • 打赏
  • 举报
回复
就用JDBC吧,最好能封装一下!
zhanglei98123 2010-02-02
  • 打赏
  • 举报
回复
只用过jdbc,其它的没用过,不知道效率
徐小路 2010-01-20
  • 打赏
  • 举报
回复
如果不用jdbc 就直接在oracle里面写java代码吧 呵呵!
恶魔宝宝 2010-01-20
  • 打赏
  • 举报
回复
直接在oracle里写java代码
l13873666736 2010-01-18
  • 打赏
  • 举报
回复
要不你直接用JAVA写存储过程,在ORACLE上直接RUN,应该是最快的,可很少有人这个做啊。
huangyunzeng2008 2010-01-16
  • 打赏
  • 举报
回复
JDBC已经差不多了!我个人觉得!
Collin_Chen 2010-01-13
  • 打赏
  • 举报
回复
java访问数据库 的速度不是很快的,OCI的方式比较快,
qurihong 2010-01-13
  • 打赏
  • 举报
回复
楼主的问法不太好,因为java访问db的方式只有一种:就是JDBC
只是JDBC可以分为不同的type, type4就是大家通常说的访问方式, 纯jdbc driver
type2就是JNI(Java Native Interface),和c/c++有关的类型,其实就是ODBC-JDBC桥,至于两者速度比较,对于不对DB,可能不太一样
SambaGao 2010-01-13
  • 打赏
  • 举报
回复
c3p0 也不错。
最新的c-jdbc
danbaizhi 2010-01-12
  • 打赏
  • 举报
回复
直接用JAVA当然是JDBC了,如果用上服务器的话,连接池最快。
a99061014 2010-01-12
  • 打赏
  • 举报
回复
JAVA 通过weblogic中间件wtc可以调C。 我司现在就这样用,速度无限快。
jiejieping123456 2010-01-11
  • 打赏
  • 举报
回复
用jdbc比较快
碧水幽幽泉 2010-01-10
  • 打赏
  • 举报
回复
[Quote=引用楼主 wen_ling 的回复:]
java访问oracle最快的方式是什么?
【备注】
我知道的java连接oracle的方式只有JDBC,还有其它方式吗?
如果有,那种最快?
[/Quote]
JDBC
palm_civet 2010-01-10
  • 打赏
  • 举报
回复
性能瓶颈不会在这种问题上面的,优化查询语句和实例才是关键
sql_xeppp 2010-01-08
  • 打赏
  • 举报
回复
oledb odbc
wen_ling 2010-01-08
  • 打赏
  • 举报
回复
因为java程序需要频繁访问数据库,所以想找一种最快的访问数据库的方式。
还想问一下,java访问sqlserver最快的方式是什么? 谢谢!

sunboy520555 2010-01-08
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 crazylaa 的回复:]
java调C++不知道行不行得通。

jdbc又不慢。使用连接池好了,如果不使用连接池每次都新建连接,随便什么数据库也快不到哪里去。
[/Quote]

java 可以 写 C 也可以调用 C++
自己封装 Dll 就可以
嘿嘿。。
Rotel-刘志东 2010-01-08
  • 打赏
  • 举报
回复
jdbc
加载更多回复(5)

17,090

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧