您的位置:首页 > 其它

ibatis 配置文件及对应数据的格式…

2014-01-26 15:37 399 查看
有两个实体:

public class WatchType implements Serializable{

private Long watchTypeId;

private String watchTypeName;

private String description;

......

}

public class Result {

  private Long resultId;

  private String name;

  private Long watchTypeId;

  private WatchType allWatchType;

  ........

}

resultMap 配置如下(仅以查询为例)

<resultMap id="allWatchType"
class="cn.com.pattek.eneity.WatchType">

   <result
property="watchTypeId" column="ID" />

   <result
property="watchTypeName" column="NAME"/>

   <result
property="description" column="DESCRIPTION"/>

</resultMap>

<select id="getWatchTypeStore"
resultMap="allWatchType" >

   select * from
pm_watch_type

</select>

<resultMap id="result"
class="cn.com.pattek.eneity.Result">

   <result
property="resultId" column="ID"/>

   <result
property="name" column="NAME" />

   <result
property="allWatchType.watchTypeId"
column="WATCH_TYPE_ID"/>

   <result
property="allWatchType.watchTypeName" column="pmwtName"
/> 

</resultMap>

<select id="getResultByCondition"
resultMap="result">

 select * from(select a.*,rownum rn from(select
r.id,r.name

  r.watch_type_id,pmwt.name pmwtName,

  from pm_result r 

  left join pm_watch_type pmwt on
pmwt.id=r.watch_type_id 

</select>

action中得到result对象的list集合,将该list放入jaon数据中:

Pagination p = new Pagination(start, limit, totalCount);

p.setList(resultList);

  this.objectToJson(p);(其中Pagination是分页的类)

这样在页面中得到的数据格式如下:[{resultId:'',name:'',"allWatchType":{"description":"","watchTypeId":2,"watchTypeName":"全天节目监看"}}]

前台页面获得数据的方式(以ext
store为例):fileds中{‘resultId','name','allWatchType.watchTypeId','
allWatchType.watchTypeName'}即可获得watchType 的id、name
 或:
{‘resultId','name','allWatchType'} 

在column中的对应:{

 header : '类型', 

dataIndex : 'allWatchType' ,

align : 'center',

//加此render的目的是 判断allWatchType为空的条件,若用
allWatchType .watchTypeId会有空指针的错误

renderer :function(value, metadata, record){

if(value=="" || value == null){

return "";

}else{

return record.get(' allWatchType ').watchTypeId;

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: