|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
Java编译的是字节码,跟C++相反,启动不够快,效率不够高,难以精确控制内存,但是优点是编程比C++容易,代码比较安全但是容易留下性能隐患,跨平台靠字节码在各个平台复制(一处编译到处调试)
iBATISResultMap是我们进修iBATIS中十分主要的一个内容,在我团体看来,可否真正用好iBATIS的一个关头,这就是ResultMap。字面上了解,它就是了局集的映照,就是将前往的纪录逐一字段的映照赋值给对象的属性上。实在假如没有特别需求的话我们完整可使用ResultClass来取代它,由于假如字段与属性千篇一律的话,查询出来数据会议主动婚配到ResultClass指定的类的实例对象,假如字段名不在属性中的话,那这个字段将不会被前往的实例体类对象承受,相称于没有查询出这个字段一样的。
每一个ResultMap都有一个本人的ID,假如你在sqlmap.config中没有设置利用定名空间的话,那末这个ResulteMapID是全局(这点在一切的iBATIS设置元素都是一样的),ResultMap一个主要的属性的是class,它将决意这个ResultMap对应的实例的类,换句话讲,它的感化是指出了局集要映照的数据范例。在extends属性中能够设置它将要承继的ResultMap,假如给他指定的了值,那末它将会从superResultmap承继所的映照设置字段。界说以下:- resultMaps
- resultMap id="DemoResultMap" class="Hashtable"
- /resultMap
- /resultMaps
复制代码 假如你有准确设置了iBATIS的XSD架构文件的话,那末这时候候就会提醒resultMap的界说是不完整的。没错,接上去就是要界说Result元素。每个result元素都是界说一个字段与数据类属性对应的映照。在每个result元素有对照多的属性参数,个中property和column是必需的,别的的参数属性都是可选的。以是我们在每个resultMap中必需界说凌驾一个以上的result界说。一般以下的设置就能够完成基础的设置了。- resultMaps
- resultMap id="DemoResultMap" class="Hashtable"
- result property="id" column="id"/
- /resultMap
- /resultMaps
复制代码 但假如你必要更多的请求的话,resultmap仍旧可以最年夜限制的满意你。
◆columnIndex属性供应了我们将数据集的第几个下标字段映照到指定的数据对象属性的计划,可是这类体例应当只管的罕用,你会发明这对我们今后的保护和可读性会发生很年夜的反作用。
◆dbType属性明白指出这个字段对应的数据库的范例,年夜多半情形我很少会用到。
◆type属性则明白指出这个字段将对应的数据对象属性的数据范例,一般假如你想包管范例平安的话,设置这个属性是很需要的。
◆resultMapping属性则略微庞大一些,它是用在一种场景下,假如一个数据类的属性自己不是基元数据范例,而是一个庞大数据范例的话,那我们就不成能很复杂地给它一个复杂的result元素就了事了,还必需给他一个完全的resultMap。而resultMapping属性就是为了完成这个功效而存在的。它的属性值是一个已存在的resultMap的ID。
◆nullValue属性就没甚么好讲的了,它是给出当这个字段的值为null的时分,它的默许值是几。
◆select属性同resultMapping一样对照庞大一样,先说一下它的属性值必需是一个前往数据汇合的查询语句的ID,能设置这个属性的数据类属性能够是一个基元范例,复合范例,也能够是一个包含多条数据的汇合范例,这些范例都行,没有成绩的。它的一处主要的存在乎义就在于形貌分歧表之间的干系成绩,经由过程本次的查询,你想欠亨过join的手腕从另外一个表查询相干字段的时分,你就能够利用select属性。以下:- resultMaps
- resultMap id="DemoResultMap" class="Hashtable"
- result property="id" column="id"/
- result property="Children" column="id" select="SELECT_Children"/
- /resultMap
- /resultMaps
- statements
- select id="SELECT_Children" resultClass="ChildrenObject"
- SELECT * FROM Children WHERE ParentID = #id#
- /select
- /statements
复制代码 <p>
IDE是好。java中的IDE更是百花齐放,你用jbuilder能说jbuilder赶不上vs吗?用eclipse,netbeans也很舒服啊。我就不明白“稍微差一些”那一些是从哪里差来的。 |
|