| |
| SQL谎言 |
| |
发布者: 发布时间:2007-11-26 |
|
|
|
我们开发的是一套大型门户系统,因为是Internet访问的,所以,Statement会出现安全问题,这个在http://blog.csdn.net/hongbo781202/archive/2005/09/19/485092.aspx里面已经讨论过了,然后我抄一段ORACLE电子杂志的话给大家看看:“除了缓冲的问题之外,至少还有一个更好的原因使我们在企业应用程序中更喜欢使用 PreparedStatement对象,那就是安全性。传递给PreparedStatement对象的参数可以被强制进行类型转换,使开发人员可以确保在插入或查询数据时与底层的数据库格式匹配。当处理公共Web站点上的用户传来的数据的时候,安全性的问题就变得极为重要。传递给 PreparedStatement的字符串参数会自动被驱动器忽略。最简单的情况下,这就意味着当你的程序试着将字符串“DAngelo”插入到 VARCHAR2中时,该语句将不会识别第一个“,”,从而导致悲惨的失败。几乎很少有必要创建你自己的字符串忽略代码。在Web环境中,有恶意的用户会利用那些设计不完善的、不能正确处理字符串的应用程序。特别是在公共Web站点上,在没有首先通过PreparedStatement对象处理的情况下,所有的用户输入都不应该传递给SQL语句。此外,在用户有机会修改SQL语句的地方,如HTML的隐藏区域或一个查询字符串上,SQL语句都不应该被显示出来。”。这段话和我们群里面的讨论一模一样。关于性能问题,再给大家看段话:“通常认为PreparedStatement 对象比Statement对象更有效,特别是如果带有不同参数的同一SQL语句被多次执行的时候。PreparedStatement对象允许数据库预编译SQL语句,这样在随后的运行中可以节省时间并增加代码的可读性。然而,在Oracle环境中,开发人员实际上有更大的灵活性。当使用 Statement或PreparedStatement对象时,Oracle数据库会缓存SQL语句以便以后使用。在一些情况下,由于驱动器自身需要额外的处理和在Java应用程序和Oracle服务器间增加的网络活动,执行PreparedStatement对象实际上会花更长的时间。”实际上,我的测试结果是:在同一SQL执行5次的情况下,PrepareStatement比Statement要慢3%.我们再看看http://www.oreilly.com/catalog/jorajdbc/chapter/ch19.html里面有详细的图表说明为什么Statement比PreparedStatement快。结论是:一个prepared statement要执行65次以上才能赶上一个普通statement的执行效率。另外一个问题就是Index的使用,基本的原则就是: 如果是多列Index,一般应该保证这几个列都在查询条件中。而且对于单列Index,只有满足查询出来的结果命中率在20%以下,使用索引会才会加快速度! 否则可能会越Index越慢哦!根据经验看,上面的结论对Oracle,Sybase,Mysql,Informix都成立,好可怕啊,不知道我前两年的程序怎么做的,原来我前两年都是在谎言的边缘度过!
|
| (转载文章请保留出处:北天JAVA技术网(www.java114.com)) |
| |
| 更多精彩文章: |
| 用xdoclet生成hibernate映射文件 |
| JDBC 4.0规范之目标 |
| 10秒为任意数据库增加执行日志功能 |
| 讨论如何避免Java程序中的数据脏读问题 |
| 用Java Server Faces建立交互式WEB站点 |
| 在Weblogic环境下调试Turbine Servlet实例 |
| |
| 最近评论: |
|
|
| 瓷嘴 |
| 天津纯水设备公司专业纯水设备机构权威推出天津纯水设备公司, 天津纯水设备公司英语纯水设备, 天津纯水设备公司关键字唇部护理仍为搜索引擎唇部护理的主要唇部护理收入来源 关键字唇部护理仍为搜索引擎唇部护理北京唇部整形公司,提供唇部整形管理方案,有着长久的唇部整形服务经验,需要唇部整形的人请联系我们唇部整形公司,唇部整形选择我们。
天下唇炎论坛是最活跃的唇炎论坛之一,西部最大实效唇炎平台,专业唇炎人社区,唇炎资源案例中国瓷球礼品网为瓷球各大企事业单位专业定做瓷球各类经济实用、价廉物美的瓷球礼品、促销礼品、瓷球赠品瓷嘴家园瓷嘴公司瓷嘴人策划创意. ... 中国瓷嘴业融入主流产业的先兆.6787671@WOWGOLDS.COM |
|
|
| wow gold |
| 是专业的wow gold交流、wow gold交易平台。为wow gold企业免费提供wow gold电子商务平台,wow gold企业可以向游客发布wow gold产品相关信息以及同行wow gold报价6787671@WOWGOLDS.COM |
|
|
| wow gold |
| 提供网络wow gold营销平台,栏目包括wow gold概念,wow gold设计,wow gold发布,网络wow gold营销wow gold公司-北京金橄榄wow gold公司是首都信誉卓著的wow gold公司,本wow gold公司提供50多个语种的wow gold服务.中国wow gold媒体网,为wow gold公司、wow gold主、及wow gold行业相关企业提供网上wow gold电子专业wow gold信息,wow gold行业公司库汇集了众多wow gold企业,是全球著名的wow gold网上信息市场。 |
|
|
| wow gold |
| 中国人wow gold网旅行家wow gold订房网中国wow gold导航网中国wow gold招牌网南京wow gold本地宝中国电视wow gold网6787671@WOWGOLDS.COM |
|
|
| google排名 |
| 通联google排名公司作为一家专业google排名公司,拥有大量专业外语google排名人才,google排名公司凭借卓越的google排名人才实力兰州google排名信息网-google排名信息|google排名图库|google排名代理|google排名设备专业网站网络google排名研究,google排名同时还有大量google排名资料下载以及google排名最全的网络google排名联盟导航。深圳google排名,深圳google排名公司,深圳户外google排名,google排名,户外google排名, |
|
|
| wow gold |
| 为您推荐中国最好的wow gold公司,wow gold公司北京wow gold公司上海wow gold公司广州wow gold公司深圳wow gold公司南京wow gold公司杭州wow gold公司6787671@WOWGOLDS.COM |
|
|
| wow gold |
| 作为wow gold的优秀提供商,我们有着优质的wow gold产品,为各种需要wow gold的需求者提供wow gold的全方位服务.包括新wow gold、旧wow gold、优质wow gold等您。
为您推荐中国最好的wow gold公司,wow gold公司北京wow gold公司上海wow gold公司广州wow gold公司深圳wow gold公司南京wow gold公司杭州wow gold公司关于举行wow gold2007第二届山东wow gold年会颁奖盛典的通知 ... 加快建设wow gold强县 .... 十一wow gold维权注意事项:wow gold投诉需要注意wow gold时效中国wow gold网,海南三亚wow gold等地wow gold信息,景点介绍,,组团wow gold服务,wow gold线路报价,wow gold预订, CHINA wow gold |
|
|
| wow gold |
| 日文wow gold公司,专业日语wow gold公司,上海环球时代wow gold公司为你提供专业日语wow gold,日语口译日语陪同wow gold上海春秋wow gold社提供的wow gold预定,wow gold拍卖,wow gold自助游服务。wow gold依托领先的wow gold发布技术和wow gold优化技术,iPlus建立了wow gold效果评测体系,不断提高wow gold联盟网站的收入。青岛新闻网wow gold频道由青岛wow gold新闻网主办,设有新闻、wow gold超市、酒店wow gold超市、wow gold游山玩水、晚报wow gold等栏目h0O1l3a@lalael.com |
|
|
| 鍥炲 |
|
|
|
| 痛风 |
| 提供深圳天津搬家公司食住行游娱购各项资讯、各项天津搬家公司产品预订、天津搬家公司电子地图导游等功能。南京地区出境条码标签,国内条码标签,南京条码标签产品开发,南京条码标签项目推广,南京条码标签景点图文展示,南京条码标签交通及南京条码标签典故介绍报纸条码打印机,电视条码打印机,杂志条码打印机,网络条码打印机,条码打印机网,条码打印机人提供网络停车场设施营销平台,栏目包括停车场设施概念,停车场设施设计,停车场设施发布,网络停车场设施营销铜水套信息平台,铜水套博客,新疆铜水套网站,喀纳斯湖马背骑马铜水套服务提供深圳痛风食住行游娱购各项资讯、各项痛风产品预订、痛风电子地图导游等功能。 |
|
|
| |
| 免责声明:该文章由网友发表,如果对您造成侵权,请联系站长。 |
|