`
vanadies10
  • 浏览: 83519 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

搞定了一个使用IBatis.Net的问题

 
阅读更多
今天解决了一个IBatis.Net的使用的问题,这个问题困扰了很久。在做一个管理系统,后台Server采用的是HTTP Server+DB来提供服务。 最初使用的是Perl+BerkeleyDB,演进到Servlet+Mysql,然后又演进到ASP.NET + SQL Server,从Servlet开始ORM使用的是Hibernate,到了ASP.NET后,Hibernate转变为了NHibernate。一次偶然的机会,接触到了别人的一个系统,也想把这个管理系统中的NHibernate替换为IBatis.Net,并且把请求统一放到一个Controller进行Dispatch,也可以在Controller中加入日志、权限、验证等机制。当然,对于Struts等框架都是采用类似的机制完成的。自己也是一种借鉴和学习。在测试使用IBatis.Net的时候遇到一个问题,NHibernate的时候,插入一个对象,就可以获得这个对象对应的记录的自动生成的PK。IBatis可以通过SelectKey来做,我确实也有在Java下的例子,可是在网上看到的一些资料指出的在IBatis.Net中的用法,但是不能成功。一直搞了很久。今天终于是解决了。自己给自己记录一下吧。

<statements>
  <statement  id="INSERT-ADMIN" resultClass="int">
      insert into admin (lastlogin, flag, controlflag, username, password, description)
      values (#LastLogin#, #Flag#, #ControlFlag#, #Username#, #Password#, #Description#)

      SELECT SCOPE_IDENTITY()  AS value

    </statement >

这个是正确的写法,不需要用到selectKey,自己以前的错误在两个地方,一个是在statement中没有写resultClass,另外一个就是用 select @@IDENTITY as id(value),始终不行,这个我一直没有搞明白是什么原因。只是根据自己的需要,返回的应该是这个scope中的id,所有使用select scope_identity 就可以了。

分享到:
评论

相关推荐

    IBatis.net 配置各种数据库

    IBatis.net,作为一个轻量级的持久层框架,为开发者提供了灵活的数据映射功能,使得数据库操作变得更为简单。本文将详细介绍如何在IBatis.net中配置和使用各种数据库。 首先,理解IBatis.net的核心概念。IBatis 是...

    ibatis.net winform搭建带数据库

    标题 "ibatis.net winform搭建带数据库" 描述了一个使用iBATIS.NET框架在Windows Forms(WinForm)应用程序中构建数据库交互的过程。iBATIS.NET是.NET平台上的一个持久层框架,它允许开发者将SQL语句与应用程序代码...

    IBatis.Net详细使用手册

    总之,iBatis.Net 是一个适用于需要更多数据库控制权的项目的优秀工具,它能够提供高效的数据库操作,同时也要求开发者具备一定的SQL知识。在选择使用iBatis.Net时,应充分考虑项目需求和团队技术背景,以确保最佳的...

    Ibatis.net学习例子以及使用教程书

    Ibatis.net是一个轻量级的持久层框架,它在.NET环境中提供了灵活的数据访问接口,能够有效地将业务逻辑和数据访问层解耦。本教程书旨在帮助开发者深入理解并熟练运用Ibatis.net,通过实例和详细讲解,使得学习过程...

    Ibatis.net+ oracle 简单事例

    "IbatisTet" 可能是一个示例项目,展示了如何在VS2008中使用Ibatis.net 操作Oracle 数据库。该项目可能包含了必要的配置文件(如ibatis.config)、Mapper XML文件以及对应的.NET类,演示了CRUD(创建、读取、更新、...

    IBatis.Net for .net framework4.0

    标题提到的"IBatis.Net for .NET Framework 4.0"是指一个特别适配.NET Framework 4.0及更高版本的版本,确保开发者可以在这些环境下继续使用IBatis.Net。 **1. IBatis.Net的核心特性** - **映射器(Mapper)**: ...

    c# net ibatis.net 模板

    iBatis.NET是一个数据映射框架,它将SQL语句与业务逻辑代码分离,使得数据库访问更加简单灵活。这个模板可能是为了简化开发流程,提供了一个基础的配置和代码生成器,帮助开发者快速搭建应用。 描述中提到的“自己...

    spring.net_ibatis.net_mysq

    iBatis.NET作为数据访问层的一个解决方案,它提供了一个简单但强大的SQL映射框架,允许开发者编写SQL语句并与.NET对象模型进行绑定。iBatis.NET的XML配置文件或者注解用于定义SQL语句,这样可以避免大量繁杂的ADO...

    iBatis.Net 模板文件 for codesmith4.1

    1. `iBatis.class.cst`:这是一个针对iBatis.Net的数据访问层(DAL)类模板,用于生成与数据库表对应的实体类。它通常包含属性,这些属性对应于数据库表的字段,并且可能包含数据验证和业务逻辑。 2. `iBatis.cst`...

    Ibatis .net框架多数据源配置

    Ibatis .net框架多数据源配置是针对在同一个应用程序中需要连接并操作多个数据库场景的一种解决方案。Ibatis是一个流行的持久层框架,它允许开发者将SQL语句与Java或.NET代码解耦,提供了一种灵活的方式来处理数据库...

    asp.net MVC和IBatis.net整合demo程序

    在这个"asp.net MVC和IBatis.net整合demo程序"中,开发者使用Visual Studio 2013作为开发环境,构建了一个完整的CRUD(Create, Read, Update, Delete)应用。VS2013是微软推出的强大开发工具,集成了对.NET ...

    ibatis.net Demo

    `LoginTest`可能是这个Demo中的一个测试用例,它展示了如何使用`ibatis.net`进行用户登录验证。在`LoginTest`中,我们可能会看到以下步骤: - 创建`SqlMapClient`实例,通过`dao.config`加载配置信息。 - 编写...

    ibatis.net

    Ibatis.Net是一个基于.NET平台的轻量级持久层框架,它是Java版本的iBATIS在.NET世界中的对应实现。这个框架的主要目标是提供一个简单、高效且灵活的方式来将数据库操作映射到对象和XML配置文件,以此来减轻开发人员...

    Spring.net + iBatis.net + asp.net MVC 整合文档

    关于Spring.net + iBatis.net + asp.net MVC 整合的文档,值!

    Ibatis.net学习和实例~

    Ibatis.net是一个轻量级的持久层框架,它在.NET环境中提供了灵活的数据访问接口,能够有效地将业务逻辑和数据访问层解耦。本教程将深入探讨Ibatis.net的学习与实践,帮助开发者更好地理解和掌握这个强大的工具。 ...

    ibatis.Net

    Ibatis.Net是一个流行的开源持久层框架,主要用于简化.NET应用程序中的数据访问层(DAL)开发。它的核心设计理念是将SQL语句与.NET代码分离,通过XML配置文件或动态API来定义数据库交互逻辑,使得开发者能够更加灵活...

    IBatis.NET开发文档

    - 第一个例子:通过一个简单的CRUD操作,展示iBATIS的基本用法。 - 数据源配置:讲解如何配置数据连接字符串,连接池等。 - CRUD操作:详细解释如何使用iBATIS执行增删改查操作。 - 映射实体类:介绍如何将...

    ibatis.net的asp.net MVC的实例

    在这个实例中,我们主要探讨的是如何在ASP.NET MVC框架中集成并使用ibatis.net,这是一个轻量级的数据访问层(DAL)解决方案,它允许开发者将数据库操作与业务逻辑分离,提高了代码的可维护性和灵活性。Ibatis.net...

    IBatis.net1.9.2&1.6.2最新版本

    **IBatis.Net 1.9.2** 是IBatis.NET的一个重要更新,它提供了以下关键特性: 1. **映射器接口**:允许开发者定义自定义的SQL查询和存储过程,通过接口方法来执行,提高了代码的可读性和可维护性。 2. **动态SQL**:...

    Ibatis.net

    在IT行业中,Ibatis.net是一个流行的数据访问框架,主要用于简化Java和.NET应用程序中的数据库操作。Ibatis这个名字来源于“SQL mapping”,它提供了一种灵活的方式来映射SQL查询与对象模型,从而减少开发人员直接...

Global site tag (gtag.js) - Google Analytics