数据源与JDBC直连数据库的差异性是什么?数据源有哪些优势?

数据源与JDBC直连数据库的差异性是什么?数据源有哪些优势?,第1张

先说说题外话,你问这个问题,说明你在这个领域打拼还不久,因为对一些概念还不清晰,不过持续百度知道,多涉猎涉猎,你就能成为高手。

首先,JDBC直连数据库,也称为数据源,是数据源的一种方式。

其次,我猜测你理解的数据源,可能有2种:

1)连接池框架实现的数据源,譬如C3P0等等

2)应用服务器上配置的数据源,譬如IBM WAS、tomcat上均可以配置JNDI数据源

最后,我简单说明下这2种和JDBC直连的区别:

1)利用连接池框架,数据源连接后,如果不使用,可以暂时放到池中,不关闭连接,而直连是每次创建新的连接,使用完毕后,手工去关闭,下次要使用,再次创建、关闭。连接池框架实现了池的缓存能力后,就无需这样了。

2)在服务器上创建JNDI数据源,这样做的原因是将开发工程师和WAS平台运维工程师的工作区分开,防止数据库连接信息的泄露,保证信息安全。开发工程师无须知道数据库的相关信息,只要在程序中使用JNDI数据源的名称即可。WAS平台工程师在WAS上配置该JNDI数据源。

优点:数据库系统是用来管理数据的,建立的数理逻辑和集合 *** 作基础上的。

具有高效、可靠、完整、自同步等特性,是业务系统进行数据控制的最佳选择。

数据库系统一般提供高效的数据控制和数据检索功能,采用SQL语言来进行数据 *** 作。

目前市面上流行的数据库系统很多:较小型的数据库系统有:mysql,MSSQL_SERVER等等,适用于企业级的大型数据库有:ORACEL,DB2(IBM),INFORMIX(IBM)等等

缺点:安全性不够,加了用户级密码容易破解

C/S

结构下对服务器要求很高,否则容易造成

MDB

损坏并发数255。

但是对高强度 *** 作适应性差,如果服务器不够好,网络不够好,编程的方法不够好,6-7个人同时访问就能导致

MDB

损坏或者并死不能将

VBA

代码开发的软件系统直接编译成

EXE

可执行文件。

不能脱离

ACCESS

或者

ACCESS

RUNTIME

环境,该环境相对其他软件体积较大(50M左右)

数据源控件访问数据库:简单快捷,但是真正的开发中不会去这样用的,因为1是效率问题2是灵活性不足,这就跟ASP.NET里面的其他控件一样,正的要做大应用是不会用这种东西的,因为扩展性不足,或者为了做到兼容性损失了效率。 使用.NET数据提供程序访问数据库:共有4种,SQL Server .NET Framework数据提供程序,OLEDB .NET Framework数据提供程序,ODBC .NET Framework数据提供程序,Oracle .NET Framework数据提供程序。看名字也该明白,针对不同的数据库使用不同的数据提供程序,这是开发中最经常使用的方式,缺点是米有办法应对多数据库的情况,也就是说假如你的应用是面向多数据库的,那么有几种数据库,基本要写几套SQL。 用DATASet:恭喜你不用写T-SQL了,但是你要学会它的语法,从此不用担心多数据库应用的问题。但是惨了,它为了兼容多种数据库因此T-SQL写的真的“很兼容”执行效率太低,同样的一个表现结果,这个SQL嵌套了好几次,效率灰常低。 LINQ to SQL:老实讲,他就是为SQL SERVER而生的,你也不用写T-SQL了,它的语法学学还是好处颇多,因因为你在LINQ TO OBJECT上也能见到这种语法的影子收益颇多,它的执行效率很快,但是不管怎么讲也没有你直接用SQL Server .NET Framework数据提供程序,自己写SQL快,可控制程度高,好处也是显而易见就像用DATASET一样,你不用再为了数据持久化问题写一大堆ORM的东西了。 by the way,目前.NET中,ORM用的比较多的是Nhibernate,但是你如果就想用SQL SERVER还是用LINQ to SQL吧,好处显而易见,在开发过程中对于数据库的变更也是比较常见的,你的数据库字段不知道会出现在哪个类,哪个文件中,如果用了DATASET,或LINQ2SQL在编译阶段你就可以察觉到这种变更带来的影响。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6657876.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存