ibatis基础测试与使用

本文介绍了Ibatis的基础配置,包括SqlMapConfig.xml的设置,jdbc.properties的内容及其注意事项,如避免多余空格导致的问题。此外,讲解了实体类配置和测试过程,成功运行测试意味着Ibatis配置正确且数据库连接成功。操作数据库时需读取SqlMapConfig.xml并创建SqlMapClient对象。别忘了导入所需的jar包。

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

首先,ibatis的配置文件为SqlMapConfig.xml,一个基本的配置文件书写如下


<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE sqlMapConfig        
    PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"        
    "http://ibatis.apache.org/dtd/sql-map-config-2.dtd">  
<sqlMapConfig>  
    <properties resource="jdbc.properties" />  
    <transactionManager type="JDBC">  
        <dataSource type="SIMPLE">  
            <property name="JDBC.Driver" value="${jdbc.driverClassName}" />  
            <property name="JDBC.ConnectionURL" value="${jdbc.url}" />  
            <property name="JDBC.Username" value="${jdbc.username}" />  
            <property name="JDBC.Password" value="${jdbc.password}" />  
        </dataSource>  
    </transactionManager>  
    <sqlMap resource="ibatis/resources/User.xml" />  
</sqlMapConfig> 

其中 写jdbc配置文件的路径,这里直接放在src目录下所以这样写
下方的property 中的value的值要与jdbc配置文件中相对应
以下是jdbc.properties的内容
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ibatisdemo?autoReconnect=true&useUnicode=true&characterEncoding=utf8
jdbc.username=root
jdbc.password=root
非常要注意的一点是:从网页上复制的jdbc.properties的内容,可能会多空格,这样会导致读取配置文件的时候出问题,记得去掉空格
然后是实体类对应的配置文件

<?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>  
    <typeAlias alias="User" type="ibatis.model.User" />  
    <select id="getAllUsers" resultClass="User">  
        select *  
        from pf_customer
        where is_delete='0'
    </select>
    <select id="findUsers" resultClass="User">
    	select *
    	from pf_customer
    	where is_delete='0'
    	and name like '$keyword$'
    </select>
    <update id="deleteUser">
    	update pf_customer
    	set is_delete=1 
    	where id=#id#
    </update>
</sqlMap> 

这个是给实体类取别名,之后使用别名就可以

接下来是测试

package ibatis;

import ibatis.model.User;

import java.io.IOException;
import java.io.Reader;
import java.sql.SQLException;
import java.util.List;

import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;

public class IBatisDemo {
	public static void main(String[] args) throws IOException, SQLException {
		String config="SqlMapConfig.xml";
		Reader reader=Resources.getResourceAsReader(config);
		SqlMapClient sqlMap=SqlMapClientBuilder.buildSqlMapClient(reader);
		//String id="1";
		//sqlMap.update("deleteUser", id);
		List<User> list=sqlMap.queryForList("getAllUsers");
		for(User user:list){
			System.out.println(user);
		}
	}
}

如果运行成功,表示ibatis配置无误且数据库连接成功。
用ibatis操作数据库需要先用流读取SqlMapConfig.xml文件,再创建SqlMapClient对象,通过该对象去调用操作数据库的各种方法

最后提醒一点:一定要导入ibatis、mysql等相关的jar包

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值