• iBATIS.NET


    下载主页:

    http://ibatis.apache.org/dotnet.cgi?Preferred=http%3A%2F%2Fapache.etoak.com

    Demo是从网上搜的,有一个数据库文件附加到SQL Server中来,其中有一个Person表,表中有主键,字符型,浮点型和日期型的字段,下面通过这个代码来入门IBatis.Net (看他并不是要用他,我不会去使用IBatis.Net )

    IBatis.Net的版本很久没有个更新过了。

    配置文件

    1.在Web.Config文件中加入配置信息,用于配置操作日志,日志会保存在程序的根目录的Txt文件中。(具体内容参考代码)

    2.配置文件 ,Demo中的sqlmap.config文件

    3.PO 简单对象,Domain中的只有属性的类

    4.映射文件,Map文件夹下面的XML配置文件,用来配置SQL语句的。

    下面的说明复制于“善友”的博客

    ……

    <update id=" UpdatePerson" ⑴

    parameterClass="Person"> ⑵

    <![CDATA[⑶

    update Person set ⑷

    PER_FIRST_NAME =#FirstName#,⑸

    PER_LAST_NAME =#LastName#, ⑹

    PER_BIRTH_DATE =#BirthDate#,

    PER_WEIGHT_KG=#WeightInKilograms#,

    PER_HEIGHT_M=#HeightInMeters#

    where

    PER_ID = #Id# ⑺]]>

    </update>

    ……

    ⑴ ID指定了操作ID,之后我们可以在代码中通过指定操作id 来执行此节点所定义的操作,如:SqlMap.Update("UpdatePerson", person);ID设定使得在一个配置文件中定义两个同名节点成为可能(两个update节点,_____以不同id区分)

    ⑵ parameterClass指定了操作所需的参数类型,此例中update 操作以IBatisNetDemo.Domain.Person类型的对象作为参数,目标是将提供的Person实例更新到数据库。parameterClass="Person"中,Person为“IBatisNetDemo.Domain.Person”类的别名,别名可通过typeAlias节点指定,如示例配置文件中的:<typeAlias alias="Person" type="IBatisNetDemo.Domain.Person,IBatisNetDemo" />

    ⑶ <![CDATA[……]]>通过<![CDATA[……]]>节点,可以避免SQL 中与XML 规范相冲突的字符对XML映射文件的合法性造成影响。

    ⑷ 执行更新操作的SQL,这里的SQL 即实际数据库支持的SQL 语句,将由IBatisNet填入参数后交给数据库执行。

    ⑸ SQL中所需的用户名参数,“# FirstName #”在运行期会由传入的Person对象的FirstName属性填充。

    ⑹ SQL 中所需的用户性别参数“# LastName #”,将在运行期由传入的Person对象的LastName属性填充。

    ⑺ SQL中所需的条件参数“#id#”,将在运行期由传入的Person对象的Person属性填充。

    使用方法:

    private static SqlMapper sqlMap;
    public BaseService()
            {
                Assembly assembly = Assembly.Load("IBatisNetDemo");
                Stream stream = assembly.GetManifestResourceStream("IBatisNetDemo.sqlmap.config");
    
                DomSqlMapBuilder builder = new DomSqlMapBuilder();
                sqlMap = builder.Configure(stream);
    
            }
    public IList<Person> GetAllPerson()
            {
                IList<Person> list = null;
                list = SqlMap.QueryForList<Person>("SelectAllPerson", null);
                return list;
            }

    SqlMapper是IbatisNet运作的核心,所有的操作均通过SqlMapper实例完成。

    配置节点说明参照: http://www.cnblogs.com/shanyou/articles/388598.html

    Dao 是容器
    Map 是定义
    PO  是简单对象

    冯瑞涛
  • 相关阅读:
    HDU 1863 畅通工程(Kruskal)
    HDU 1879 继续畅通工程(Kruskra)
    HDU 1102 Constructing Roads(Kruskal)
    POJ 3150 Cellular Automaton(矩阵快速幂)
    POJ 3070 Fibonacci(矩阵快速幂)
    ZOJ 1648 Circuit Board(计算几何)
    ZOJ 3498 Javabeans
    ZOJ 3490 String Successor(模拟)
    Java实现 LeetCode 749 隔离病毒(DFS嵌套)
    Java实现 LeetCode 749 隔离病毒(DFS嵌套)
  • 原文地址:https://www.cnblogs.com/finehappy/p/1559770.html
Copyright © 2020-2023  润新知