ibatis

本文介绍了一个使用MyBatis框架进行数据库操作的例子,包括配置文件详解、基本的CRUD操作实现方法及结果展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEsqlMap
PUBLIC"-//iBATIS.com//DTDSQLMap2.0//EN"
"http://www.ibatis.com/dtd/sql-map-2.dtd"
>


<sqlMapnamespace="User">
<typeAliasalias="user"type="test.User"/>

<selectid="getUser"parameterClass="java.lang.String"
resultClass
="user">
selectname,sexfromt_userwherename=#name#
</select>


<resultMapid="get-All-User"class="test.User">
<resultproperty="id"column="id"/>
<resultproperty="name"column="name"/>
<resultproperty="sex"column="sex"/>
</resultMap>

<selectid="getAllUser"resultMap="get-All-User">
selectid,name,sexfromt_user
</select>

<updateid="updateUser"parameterClass="user">
UPDATEt_userSETname=#name#,sex=#sex#WHEREid=#id#
</update>

<insertid="insertUser"parameterClass="user">
INSERTINTOt_user(name,sex)VALUES(#name#,#sex#)
</insert>

<deleteid="deleteUser"parameterClass="java.lang.String">
deletefromt_userwhereid=#value#
</delete>

</sqlMap>

packagetest;

importjava.sql.SQLException;
importjava.util.Iterator;
importjava.util.List;
importjava.util.Map;
importjava.util.Set;

importcom.ibatis.sqlmap.client.SqlMapClientBuilder;

publicclassTest...{

/***//**
*
@paramargs
*/

publicstaticMapgetAllUsers()...{
Stringresource
="test/SqlMapConfig.xml";
com.ibatis.sqlmap.client.SqlMapClientsqlMap
=null;
Listusers
=null;
Mapmap
=null;
try...{
java.io.Readerreader
=com.ibatis.common.resources.Resources
.getResourceAsReader(resource);
sqlMap
=SqlMapClientBuilder.buildSqlMapClient(reader);
}
catch(Exceptione)...{
e.printStackTrace();
}

Useruser
=newUser();
user.setName(
"tengll");
Useru1
=null;
Useru2
=newUser();
try...{
sqlMap.startTransaction();
map
=sqlMap.queryForMap("getAllUser",null,"id");

//System.out.println(users.size());

/**//*u1=(User)sqlMap.queryForObject("getUser",user);
//System.out.println(u1.getName()+" "+u1.getSex());
u2.setName(u1.getName());
u2.setSex(u1.getSex());
*/

sqlMap.commitTransaction();
}
catch(SQLExceptione)...{
System.out.println(e.getMessage());
}
finally...{
try...{
sqlMap.endTransaction();
}
catch(SQLExceptione)...{
e.printStackTrace();
}

}

returnmap;
}

publicstaticvoidmain(String[]args)...{
Mapusers
=Test.getAllUsers();
System.out.println(users.size());
Setset
=users.entrySet();
Iteratorit
=set.iterator();
while(it.hasNext())...{
System.out.println(((User)((Map.Entry)it.next()).getValue()).getName());

}

}



}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值