欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    iBATIS的安装和配置.docx

    • 资源ID:18364008       资源大小:61.05KB        全文页数:20页
    • 资源格式: DOCX        下载积分:6金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要6金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    iBATIS的安装和配置.docx

    1、iBATIS的安装和配置译注:本章讲解的是iBATIS的安装和配置,原书使用的是Java版本,与.NET版本的安装、配置过程不尽相同,因此这里直接就.NET版本进行说明。主要参考的是iBATIS官方的DataMapper Guide文档,本章的配置主要针对DataMapper,DataAccess的配置将出现在第10章。 iBATIS的安装过程快速而简单。它是一个类库,而不是应用程序,所以实际上并不需要安装,但要在应用程序中使用它还是要经过几个步骤。 如果您熟悉C#和ADO.NET,那么可能需要好好阅读本章为下面的一两章做好准备。首先,我们提供了安装和配置过程的概览,然后是该过程的详细说明。

    2、要获取iBATIS,您有两种选择。可以下载二进制发行包,然后解压缩到一个目录中;也可以从Subversion资源库中获取一份源代码副本,手动生成它。不管采用哪种方式,最终得到的是相同的一组文件。 在得到iBATIS发行包之后,只要将需要的dll文件添加到应用程序引用中即可。 3.1 获取iBATIS发行包 3.1.1 二进制发行包 这是最快速、简单的方式。iBATIS已经预先生成好了,您只需要下载,解压缩,然后开始使用。 注意:iBATIS的二进制发行包可以在http:/ibatis.apache.org/dotnetdownloads.cgi下载(这里可以下载到dll文件,源代码,实例和文档

    3、)。 3.1.2 由源代码生成 如果您有兴趣增强框架,修复bug,或者只是想通过亲自编译来了解您所得到的内容,那就可以从Subversion资源库获取一份副本,由源代码生成。第12章中我们将深入了解扩展iBATIS框架的细节,因此本节内容会比较简单,不过这些也足够您开始使用了。 注意:这里提到的Subversion(SVN)资源库是所有新的Apache项目使用的版本控制系统。Subversion是CVS的替代品。SVN的目的在于提供一个环境,使得在框架发生变化时,不用担心丢失源代码(因为每个开发人员都有一份副本,同时服务器上也存有多份拷贝)。 如果您希望更多地了解Subversion,可以访问

    4、它的主页http:/subversion.tigris.org/。 iBATIS的Subversion资源库地址为:http:/svn.apache.org/repos/asf/ibatis/trunk/。 3.2 发行包的内容 如果您获取的是源代码,那么会得到一个VS解决方案和几个C#项目。在source文件夹下有8个文件夹,构成了iBATIS.NET发行包。它们是: Folder NameDescriptionExternal-BiniBATIS项目所需的依赖项程序集。IBatisNet.Common该程序集包含了DataAccess和DataMapper所共用的类。IBatisNet.C

    5、ommon.Logging.Log4NetLog4Net工厂适配器类。IBatisNet.Common.TestIBatisNet.Common的测试项目,可用于NUnit。IBatisNet.DataAccessData Access Objects框架。IBatisNet.DataAccess.Extensions包含一个C#项目,用于对DataAccess框架的扩展,如对NHibernate的支持。IBatisNet.DataAccess.TestDataAccess框架的测试项目,可用于NUnit。IBatisNet.DataMapperDataMapper框架。iBatisNet.D

    6、ataMapper.TestDataMapper的测试项目,可用于NUnit。您可以加载IBatisNet.2005.sln,生成所需的程序集。解决方案中有7个项目,应当能够顺利通过编译。我们需要的程序集位于IBatisNet.DataMapperbinDebug下。创建的程序集是: IBatisNet.Common.dll IBatisNet.DataMapper.dll DataMapper有一个外部依赖项: Castle.DynamicProxy.dll(用于创建代理) 该dll在External-Bin文件夹中。3.3 依赖项(略)3.4 将iBATIS添加到应用程序 切换到您自己的应

    7、用程序,打开要使用DataMapper的项目。取决于解决方案的组织方式,项目有可能是Windows或Web应用程序,也可能是类库项目。这样可能需要项目添加一到两个引用: iBatisNet.DataMapper.dll iBatisNet.DataAccess.dll(可选的) iBatisNet.Common.dll(隐含引用) Castle.DynamicProxy.dll(隐含引用) 如果您使用的Mapper单例(singleton),那么唯一需要引用的是DataMapper程序集。IBatisNet.Common和Castle.DynamicProxy在运行时是需要的,但VS.NET会

    8、帮您解析这些依赖关系。如果使用Data Access Objects框架,那么还需要添加对DataAccess的引用。 如果您已经按前面说过的方式生成了iBatisNet,那么需要的三个程序集(IBatisNet.DataMapper.dll,IBatisNet.Common.dll,Castle.DynamicProxy.dll)都在DataMapper项目的binDebug目录下。 3.4.1 添加XML文件项 在添加了对程序集的引用后,下一步是向项目(可能是Windows,Web应用程序,类库或测试项目)中添加三种类型的XML文件。这些文件是: providers.config Data

    9、Mapper在该文件中查找您选择的数据库Provider的定义。 SqlMap.xml 包含了SQL查询的映射文件。您的项目中会包换一个或多个这种文件,其名称是自定义的,如Account.xml或Product.xml。 SqlMap.config DataMapper配置文件,用于指定SqlMap.xml和providers.config文件的位置。同时还定义了其它的DataMapper配置选项,如缓存。我们需要为项目中的每个数据源编写一个SqlMap.config文件。 不难理解,SqlMap.config和providers.config文件应放在DataMapper运行时可以找到的地方

    10、。这两个文件的默认位置取决于项目的类型, 如下表所示: Windows应用程序,类库,测试项目(使用NUnit或其它等价工具)二进制文件夹(如/bin/debug),.dll和app.config所在目录Web应用程序在程序根目录,即web.config所在处3.4.2 与VS.NET集成 每一个配置文件(SqlMap.config,SQL 映射文件,providers.config)都与一个XML Schema文件关联。这种关联的好处在于,可以对文档进行验证(在运行时完成),使用编辑器的特性如智能感知/内容自动完成。 要在VS.NET的XML编辑器中的Schema和我们的配置文件之间建立关联

    11、,应该将Schema文件(SqlMap.xsd,SqlMapConfig.xsd,providers.xsd)添加到VS.NET项目或者VS.NET安装目录。显然第二种选择会让我们一劳永逸。VS.NET安装目录可能是: C:Program FilesMicrosoft Visual Studio 8XmlSchemas(VS.NET 2005) 或 C:Program FilesMicrosoft Visual Studio .NET 2003Common7Packagesschemasxml(VS.NET 2003) 或 C:Program FilesMicrosoft Visual Stu

    12、dio .NETCommon7Packagesschemasxml(VS.NET 2002)。 将Schema文件注册到VS.NET后,我们就可以在VS.NET中享用智能感知和配置文档验证了。 3.5 iBATIS和ADO.NET 对ADO.NET的深入讲解已经超出了本书的范围,但我们将从一个较高层次进行分析,以为本书的其它部分提供一个基础。 微软的ADO.NET的API是.NET中数据库连接的标准。ADO.NET定义了一组接口,数据库提供商需要为其数据库产品提供接口的实现(Provider),否则,开发人员无法使用,人们认为提供商的封闭是应该避免的反模式(anti-pattern)行为。 3

    13、.5.1 释放ADO.NET资源 在使用ADO.NET时,容易发生获取资源,然后却忘记了正确地释放资源的问题。垃圾回收进程最终可能会释放它们,但这需要时间,而且没有保证。如果这些资源没有释放掉,应用程序最终可能会耗尽资源,进而崩溃。iBATIS框架帮助开发人员管理这些资源,从而减轻了开发人员的负担。开发人员不再需要担心资源的分配和释放,而是关注于他们需要的数据。但是,如果愿意,开发人员仍然可以手动地管理这些资源。 3.5.2 SQL注入 另一个常见的问题(在Web应用程序中更易出现)是SQL注入,它使得应用程序不以开发人员所期望的方式执行SQL。如果程序使用字符串拼接来构造SQL语句,但没有正

    14、确地过滤参数,恶意的用户传入的参数会改变查询的内容。考虑类似于select * from product where id = 5这样的例子。如果这里的5直接来自用户的输入,然后同select * from product where id =拼接,那么用户可以输入5 or 1=1,从而改变了SQL语句的真实用意。如果用户输入的是5; delete from orders,那就更糟了,SQL语句会乖乖地查询一条记录,然后将orders清空。灵活性也带来了风险,因此如果不正确地使用了iBATIS,我们的程序仍有可能会受到SQL注入的攻击。但是,iBATIS通过使用Parameter提高了程序受到

    15、此类攻击的难度(Parameter)。 只有那些使用显式的SQL字符串置换语法的语句是有风险的。考虑下面这个例子,该语句接受动态的表名和列名: SELECT * FROM $TABLE_NAME$ WHERE $COLUMN_NAME$ = #VALUE# 这种语句在某些情况下很灵活,也很有用,却易受到SQL注入的攻击,因此要慎重使用。这不是iBATIS的问题,这样的语句无论如何执行总会面临这种问题。因此对于那些动态构造的语句,如果会受用户输入的影响,一定要对用户的输入进行验证。 3.5.3 降低复杂性 ADO.NET非常强大,同时也是层次很低的API。为了帮助您更好地理解iBATIS有哪些好

    16、处,我们做个比较。(请参看 2.2节 工作原理中的例子) 3.6 iBATIS的配置(continued) 在第2章中,我们简要地浏览了iBATIS的配置(那个例子实在简单,如果您没有阅读那一节内容也不必担心)。在本节中,我们将创建SQL Map配置文件。这个文件是iBATIS的核心,如图3.1所示。 图3.1描述了iBATIS的配置,其中SqlMapConfig文件是一切的核心。 3.6.1 SQL Map配置文件 由图3.1可以清楚地看到,SQL Map配置文件(SqlMap.config)iBATIS配置的核心。从数据库连接到使用的SqlMap文件的相关配置都由此文件提供。 注意:上面说

    17、的核心配置文件名称通常为SqlMap.config。尽管它也可以使用其它名称,我们在这里还是遵循约定。 下面的代码清单演示了一个示例配置文件,我们将在后面的章节中进行讨论。 在接下来的几个小节中,我们将讨论SqlMap.config文件的详细配置选项。在接下来的3章(4,5,6)中,我们将探索在SqlMap.xml文件中定义的映射语句(Mapped Statement)。然后在第7章,我们将详细讨论事务管理相关的内容。 3.6.2 元素 有时,配置文件中的同一个值会出现在多处。通常情况下,我们将程序在服务器间迁移时,某些配置选项的值要进行修改。为了更好地管理这些配置选项的值,我们可指定一个标准

    18、的属性文件(含有name=value对),将DataMapper的部分配置转移到其中。在属性文件中的值将成为shell变量,可以在DataMapper配置文件和Data Map定义文件中使用。例如,如果属性文件中包含了 那么在DataMapper配置文件(SqlMap.config)中的任何元素都可以使用变量$UserId来插入值”sa”。例如: dataSourcename=NorthwindconnectionString=”UId=$UserId;” 使用属性文件使生成、测试、部署的过程变得简单。3.6.2.1 的特性(attributes) AttributeDescriptionre

    19、source指定要从应用程序根目录加载的属性文件。url指定属性文件的绝对路径-or-embedded指定要从程序集的资源中加载的属性文件。该特性的语法为extendednamespace.filename, assemblyName。 3.6.2.2 元素及其特性 我们可以同时指定几个不同属性文件,或者使用元素直接向SqlMap.config文件添加键值对。例如:AttributeDescriptionresource指定要从应用程序根目录加载的属性文件。resource=properties.configurl指定属性文件的绝对路径url=c:WebMyAppResourcesproper

    20、ties.config-or-url=file:/c:WebMyAppResourcesproperties.configembedded指定要从程序集的资源中加载的属性文件。该特性的语法为extendednamespace.filename, assemblyName。 embedded=properties.config, IBatisInAction.Ch03Webkey定义一个属性键(变量)名Key=usernamevalue为指定的属性定义其值。3.6.3 元素 在ADO.NET中,我们通过Provider来访问数据库系统。对于一个数据库系统,可以使用特定的Provider,也可以使

    21、用通用的ODBC Provider。iBATIS的DataMapper使用插件的方式来使用Provider。每一种Provider都表现为一个XML描述元素,位于providers.config中。iBATIS的DataMapper发行包包含了一个标准的providers.config,其中一共有13种Provider元素: sqlServer1.0 - Microsoft SQL Server 7.0/2000 provider available with .NET Framework 1.0 sqlServer1.1 -Microsoft SQL Server 7.0/2000 prov

    22、ider available with .NET Framework 1.1 OleDb1.1 - OleDb provider available with .NET Framework 1.1 Odbc1.1 - Odbc provider available with .NET Framework 1.1 sqlServer2.0 -Microsoft SQL Server 7.0/2000/2005 provider available with .NET Framework 2.0 OleDb2.0 - OleDb provider available with .NET Frame

    23、work 2.0 Odbc2.0 - Odbc provider available with .NET Framework 2.0 oracle9.2 - Oracle provider V9.2.0.401 oracle10.1 - Oracle provider V10.1.0.301 oracleClient1.0 - MS Oracle provider V1.0.5 available with .NET Framework 1.1 ByteFx - ByteFx MySQL provider V0.7.6.15073 MySql - MySQL provider V1.0.4.20163 SQLite3 - SQLite.NET provider V0.21.1869.3794 Firebird1.7 - Firebird SQL .NET provider V1.7.0.33200 PostgreSql0.7 - Npgsql provider V0.7.0.0 iDb2.10 - IBM DB2 iSeries provider V10.0.0.0 注意:如果您使用的是SQL Server 2005,那么可以打开MARS(Multiple Active Result Set)选项,即设置a


    注意事项

    本文(iBATIS的安装和配置.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开