- 浏览: 43750 次
- 性别:
- 来自: 上海
最近访客 更多访客>>
最新评论
-
xxxl8023:
貌似还是不行啊
oralce 数据库不同表空间数据导入 -
一衣带水:
看commons的ioutils
删除文件和目录 -
hanbin51987:
很有用哦 嘎嘎 谢谢 拿走啦 嘎嘎
删除文件和目录
sqlMap文件
代码
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE sqlMap
- PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
- "http://ibatis.apache.org/dtd/sql-map-2.dtd">
- <sqlMap namespace="Account">
- <typeAlias alias="Account" type="test.Account"/>
- <!--列表查询,返回Account Object的List-->
- <resultMap id="AccountResult" class="Account">
- <result property="id" column="ID"/>
- <result property="firstName" column="FIRST_NAME"/>
- <result property="lastName" column="LAST_NAME"/>
- <result property="emailAddress" column="EMAIL"/>
- </resultMap>
- <select id="selectAllAccounts" resultMap="AccountResult">
- select * from ACCOUNT
- </select>
- <!--列表查询,返回HashMap的List -->
- <!--resultMap无需再通过JDBC ResultSetMetaData 来动态获取字段信息,性能有提高-->
- <resultMap id="mapResult" class="java.util.HashMap">
- <result property="roleid" column="ROLEID"/>
- <result property="rolename" column="ROLENAME"/>
- <result property="id" column="ID"/>
- <result property="firstName" column="FIRST_NAME"/>
- <result property="lastName" column="LAST_NAME"/>
- <result property="emailAddress" column="EMAIL"/>
- <result property="dt" column="DT"/>
- </resultMap>
- <select id="selectAllAccountsWithMap" resultMap="mapResult">
- select B.ROLEID, B.ROLENAME, A.ID, A.FIRST_NAME,A.LAST_NAME,A.EMAIL,A.DT
- from ACCOUNT A left outer join ROLE B on A.ROLEID = B.ROLEID
- ORDER BY A.ID DESC
- </select>
- <!--动态构造查询条件-->
- <select id="getUsers" parameterClass="user" resultMap="get-user-result">
- Select id,name,sex from t_user
- <dynamic prepend="WHERE">
- <isNotEmpty prepend="AND" property="name">
- (name like #name#)
- </isNotEmpty>
- <isNotEmpty prepend="AND" property="address">
- (address like #address#)
- </isNotEmpty>
- </dynamic>
- </select>
- <isNotEmpty prepend="AND" property="name">
- ( name=#name#
- <isNotEmpty prepend="AND" property="address">
- address=#address#
- </isNotEmpty>
- )
- </isNotEmpty>
- <select id="dynamicGetAccountList" resultMap="account-result" >
- select * from ACCOUNT
- <dynamic prepend="WHERE">
- <isNotNull prepend="AND" property="firstName" open=”(“ close=”)”>
- ACC_FIRST_NAME = #firstName#
- <isNotNull prepend="OR" property="lastName">
- ACC_LAST_NAME = #lastName#
- </isNotNull>
- </isNotNull>
- <isNotNull prepend="AND" property="emailAddress">
- ACC_EMAIL like #emailAddress#
- </isNotNull>
- <isGreaterThan prepend="AND" property="id" compareValue="0">
- ACC_ID = #id#
- </isGreaterThan>
- </dynamic>
- order by ACC_LAST_NAME
- </select>
- <isParameterPresent> <isNotParameterPresent> <isNull> <isNotNull> <isEmpty> <isNotEmpty>
- <isEqual> <isNotEqual> <isGreaterThan> <isGreaterEqual> <isLessThan> <isLessEqual>
- <!-- Sql片段的是用-->
- <sql id="selectItem_fragment">
- FROM items WHERE parentid = 6
- </sql>
- <select id="selectItemCount" resultClass="int">
- SELECT COUNT(*) AS total
- <include refid="selectItem_fragment"/>
- </select>
- <select id="selectItems" resultClass="Item">
- SELECT id, name
- <include refid="selectItem_fragment"/>
- </select>
- <!--缓存-->
- <cacheModel id="product-cache" type="LRU">
- <flushInterval hours="24"/>
- <flushOnExecute statement="insertProduct"/>
- <flushOnExecute statement="updateProduct"/>
- <flushOnExecute statement="deleteProduct"/>
- <property name=”size” value=”1000” />
- </cacheModel>
- <select id=”getProductList” parameterClass=”int” cacheModel=”product-cache”>
- select * from PRODUCT where PRD_CAT_ID = #value#
- </select>
- <!—对XML支持 -->
- <select id="getPerson" parameterClass=”int” resultClass="xml" xmlResultName=”person”>
- 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
- WHERE PER_ID = #value#
- </select>
- <person>
- <id>1</id>
- <firstName>Clinton</firstName>
- <lastName>Begin</lastName>
- <birthDate>1900-01-01</birthDate>
- <weightInKilograms>89</weightInKilograms>
- <heightInMeters>1.77</heightInMeters>
- </person>
- <!—字符串替换
- select * from $tableName$
- Important Note 1: This support will only substitute Strings, so it is not appropriate for complex data types like Date or Timestamp.
- Important Note 2: If you use this support to alter a table name, or a column list, in an SQL select statement,then you should always specify remapResults=“true”
- -->.
- <!—关联查询方式,有1/N问题-->
- <sqlMap namespace="User">
- <typeAlias alias="user" type="com.ibatis.sample.User"/>
- <typeAlias alias="address" type="com.ibatis.sample.Address"/>
- <resultMap id="get-user-result" class="user">
- <result property="id" column="id"/>
- <result property="name" column="name"/>
- <result property="sex" column="sex"/>
- <result property="addresses" column="id" select="User.getAddressByUserId"/>
- </resultMap>
- <select id="getUsers" parameterClass="java.lang.String" resultMap="get-user-result">
- <![CDATA[Select id,name,sex from t_user where id = #id#]]>
- </select>
- <select id="getAddressByUserId" parameterClass="int" resultClass="address">
- <![CDATA[select address,zipcode from t_address where user_id = #userid# ]]>
- </select>
- </sqlMap>
- <resultMap id="get-user-result" class="user">
- <result property="id" column="id"/>
- <result property="name" column="name"/>
- <result property="sex" column="sex"/>
- <result property="address" column="t_address.address"/>
- <result property="zipCode" column="t_address.zipcode"/>
- </resultMap>
- <select id="getUsers" parameterClass="java.lang.String" resultMap="get-user-result">
- <![CDATA[select* from t_user,t_address where t_user.id=t_address.user_id]]>
- </select>
- 保证User 类中包含address和zipCode两个String型属性。
- <!—关联查询,无1/N问题-->
- <resultMap id="AccountResultWithRole" class="Account" groupBy="id">
- <result property="id" column="ID"/>
- <result property="firstName" column="FIRST_NAME"/>
- <result property="lastName" column="LAST_NAME"/>
- <result property="emailAddress" column="EMAIL"/>
- <result property="role" resultMap="Account.roleResult"/>
- </resultMap>
- <resultMap id="roleResult" class="test.Role">
- <result property="roleid" column="ROLEID"/>
- <result property="rolename" column="ROLENAME"/>
- </resultMap>
- <select id="selectAccountByIdWithRole" parameterClass="int" resultMap="AccountResultWithRole">
- select B.ROLEID, B.ROLENAME, A.ID, A.FIRST_NAME,A.LAST_NAME,A.EMAIL from ACCOUNT A left outer join ROLE B on A.ROLEID = B.ROLEID where A.ID = #id#
- </select>
- <!--查询-->
- <select id="selectAccountById" parameterClass="int" resultClass="Account">
- select ID as id,FIRST_NAME as firstName,LAST_NAME as lastName, EMAIL as emailAddress from ACCOUNT where ID = #id#
- </select>
- <!--新增-->
- <insert id="insertAccount" parameterClass="Account">
- insert into ACCOUNT (FIRST_NAME,LAST_NAME,EMAIL,PID,DT)
- values (#firstName:VARCHAR#, #lastName:VARCHAR#, #emailAddress:VARCHAR#,#pid:INTEGER:0#,#dt:TIME#)
- <selectKey resultClass="int" type="post" keyProperty="id">
- SELECT @@IDENTITY AS ID
- </selectKey>
- </insert>
- <!--更新-->
- <update id="updateAccount" parameterClass="Account">
- update ACCOUNT set
- FIRST_NAME = #firstName:VARCHAR#,
- LAST_NAME = #lastName:VARCHAR#,
- EMAIL = #emailAddress:VARCHAR#
- where
- ID = #id#
- </update>
- <!--删除-->
- <delete id="deleteAccountById" parameterClass="int">
- delete from ACCOUNT where ID = #id#
- </delete>
- <!--存储过程,如果没有返回列表,procTest的resultMap可以省略-->
- <parameterMap id="procParamMap" class="java.util.HashMap" >
- <parameter property="id" jdbcType="INTEGER" javaType="java.lang.Integer" mode="IN"/>
- <parameter property="outid" jdbcType="INTEGER" javaType="java.lang.Integer" mode="OUT"/>
- <parameter property="errMsg" jdbcType="VARCHAR" javaType="java.lang.String" mode="OUT"/>
- </parameterMap>
- <resultMap id="procResultMap" class="java.util.HashMap" >
- <result property="a" column="AAA"/>
- <result property="b" column="BBB"/>
- <result property="c" column="CCC"/>
- </resultMap>
- <procedure id="procTest" parameterMap="procParamMap" resultMap="procResultMap">
- {call test_sp_1 (?,?,?)}
- </procedure>
- </sqlMap>
java 代码
代码
- public class TestDao extends SqlMapClientDaoSupport {
- public List selectAllAccounts() throws SQLException {
- return getSqlMapClientTemplate().queryForList("selectAllAccounts");
- }
- public List selectAllAccountsWithMap() throws SQLException {
- return getSqlMapClientTemplate().queryForList(
- "selectAllAccountsWithMap");
- }
- public Account selectAccountById(int id) throws SQLException {
- return (Account) getSqlMapClientTemplate().queryForObject(
- "selectAccountById", new Integer(id));
- }
- public List procTest(Map params) throws Exception {
- List ret = (List) getSqlMapClientTemplate().queryForList("procTest",params);
- return ret;
- }
- public Account selectAccountByIdWithRole(int id) throws SQLException {
- return (Account) getSqlMapClientTemplate().queryForObject(
- "selectAccountByIdWithRole", new Integer(id));
- }
发表评论
-
J2EE开发之常用开源项目介绍
2011-06-14 15:42 590主要就我所了解的J2EE开发的框架或开源项目做个介绍,可以 ... -
JSTL实现自增
2011-06-08 10:26 640<%@ page contentType="t ... -
面试题1
2011-02-16 10:34 609本周去参加了一次面试,到现在还记得一道算法题: 1、除 ... -
APPFUSE2.0.1开发过程的问题记录和解决办法
2011-02-15 11:16 9981。怎样使每次测试时不删除数据库中表结构? 解答:将pom.x ... -
解压版Tomcat6变成服务器版
2010-11-08 14:56 13461、下载解压版的tomcat 6.*; 2、 运行-> ... -
文件的解压和压缩
2008-11-18 17:28 1129package com.kehwa.me17.util; im ... -
J2EE开发之常用开源项目介绍
2008-05-22 17:52 8261持久层:1)Hibernate这个不用介绍了,用的很频繁,用 ... -
servlet 相关的Listener应用
2008-04-06 14:33 997从作用域范围来说,Servlet的作用域有ServletCon ... -
java日期格式专题
2008-04-01 11:49 22941.将日期类型转化为指定格式的字符串类型 Date d = ... -
聊天系统历程(一)
2008-03-29 12:42 4用Java实现简易聊天室目的:熟练掌握j2se的各个知识点,并 ... -
WEB项目开发的一般流程
2008-03-27 17:29 3589WEB项目开发的一般流 ... -
J2EE设计模式浅谈(二)之Filter
2008-03-11 17:06 2886其实J2EE中太多的定义是很烦人的,设计模式也很抽象的,今天我 ... -
J2EE设计模式浅谈(一)
2008-03-11 16:46 3297J2EE设计模式浅谈 zhuam@st ... -
删除文件和目录
2007-11-27 21:21 881本例子介绍如何删除文件系统上的文件和目录,能删除单个 ...
相关推荐
ibatis学习总结,oracle 学习总结,大数据量处理
ibatis学习总结文档,帮助快速入门.
Spring +ibatis学习总结这个框架挺好用的 大家可以试试
相对于Hibernate和Apache OJB等“一站式”ORM解决方案而言,IBatis是一种“半...它需要学习的东西很少,在连接表或复杂查询时也不需要复杂的scheme(怎么翻complex scheme?),使用SQL Maps, 你可以自由的使用SQL语句。
ibatis 组件 , 用于访问数据库 ibatis 基于O-R mapping 映射
ibatis学习 ibatis总结 ibatis ibatis ibatis
iBATIS学习总结
ibatis的Jar包 博文链接:https://yangjinhappy.iteye.com/blog/165239
在做一个mis系统的时候,公司用到了iBATIS来作为持久化的框架,并结合spring2.5的mvc来完成,项目现在已经完成,把iBATIS做了一下总结。
4.iBatis2学习笔记:SqlMap的配置总结(18条).doc 5.iBatis2学习笔记:入参和返回值的问题.doc 6.iBatis2学习笔记:一对多映射(双向).doc 7.iBatis2学习笔记:多对多映射(双向) .doc 8.iBatis2学习笔记:总结与...
ibatis操作数据库入门教程,通过本文档的学习,可以实现对ibatis的增删改查操作,个人学习总结,不当之处,请予指出!
这篇iBatis 学习笔记是跟着传智播客的视频学习整理的,理解上难免有些错误,请以视频为 根本,有些地方笔记中没有整理到,因为这是我之后看着自己做的工程项目总结的,和视频 不完全一致。请谅解。
iBATIS学习笔记 使用 iBATIS 开发近一年了,都是在 Google 中现学现用,是时候为自己总结看看这一年都收获了些什么。无奈的是英文水平实在是太差了,官方文档看起来太吃力,所以到图书馆借了这本《iBATIS 实战》这是 ...
ibatis学习经验总结,最全面的学习IBATIs总结
ibatis开发和学习总结借鉴.pdf