ibatsnet resultMap作用
来源:互联网 发布:淘宝网茶具套装价格 编辑:程序博客网 时间:2024/06/06 19:30
<resultMaps> <resultMap id="SelectAllResult" class="Person">//对应实体类Person <result property="Id" column="PER_ID" />//porerty 对应类属性,column对应数据库字段 <result property="FirstName" column="PER_FIRST_NAME" /> <result property="LastName" column="PER_LAST_NAME" /> <result property="BirthDate" column="PER_BIRTH_DATE" /> <result property="WeightInKilograms" column="PER_WEIGHT_KG" /> <result property="HeightInMeters" column="PER_HEIGHT_M" /> </resultMap> </resultMaps> <statements> <select id="SelectAllPerson" resultMap="SelectAllResult"> select PER_ID, PER_FIRST_NAME, PER_LAST_NAME, PER_BIRTH_DATE, PER_WEIGHT_KG, PER_HEIGHT_M from PERSON </select>
<select id="SelectAllPerson2" resultMap="SelectAllResult"> select PER_ID AS Id, PER_FIRST_NAME AS FirstName, PER_LAST_NAME AS LastName, PER_BIRTH_DATE AS BirthDate, PER_WEIGHT_KG AS WeightInKilograms, PER_HEIGHT_M AS HeightInMeters from PERSON </select>
#region 获取数据方法: public IList<Person> GetAllPersonMy() { return SqlMap.QueryForList<Person>("SelectAllPerson", null); //返回的类 类型的,将会根据resultMap中的class将查找到的数据库字段转换为Person的属性 } public DataTable GetAllPerson2() { int recCount = 0; DataTable dt = MyBatis.QueryForDataTable("SelectAllPerson"); //由于这里返回的是DataTable,他将直接返回数据库中的字段名称,所以在绑定数据时候可能会出错,因为查找的与绑定不一致,这里可以采用SelectAllPerson2,自己匹配返回的字段名称 return dt; } #endregion
绑定代码:
<asp:BoundField DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" /> <asp:BoundField DataField="LastName" HeaderText="LastName" SortExpression="LastName" /> <asp:BoundField DataField="WeightInKilograms" HeaderText="WeightInKilograms" SortExpression="WeightInKilograms" /> <asp:BoundField DataField="HeightInMeters" HeaderText="HeightInMeters" SortExpression="HeightInMeters" /> <asp:BoundField DataField="BirthDate" HeaderText="BirthDate" SortExpression="BirthDate" />
数据绑定实体类:public class Person : Entity { private int id; private string firstName; private string lastName; private DateTime? birthDate; private double? weightInKilograms; private double? heightInMeters; public Person() { } public int Id { get { return id; } set { id = value; } } public string FirstName { get { return firstName; } set { firstName = value; } } public string LastName { get { return lastName; } set { lastName = value; } } public DateTime? BirthDate { get { return birthDate; } set { birthDate = value; } } public double? WeightInKilograms { get { return weightInKilograms; } set { weightInKilograms = value; } } public double? HeightInMeters { get { return heightInMeters; } set { heightInMeters = value; } } }