自己写Ibatis,理解batis

本文通过自行实现Ibatis的部分功能,深入理解反射注入、XML配置解析和数据库连接。首先,需要mysql-connector-java-5.1.6-bin.jar。接着配置XML,使用XPath解析并填充Bean。然后加载数据库驱动,创建连接池。最后,通过反射注入从数据库获取数据,存入Bean,并以List形式返回查询结果。
摘要由CSDN通过智能技术生成

首先如果你想自己写batis你要熟练理解反射注入机制,刚开始我们需要一个mysql-connector-java-5.1.6-bin.jar包,这是最低层的包

然后配置xml文件,我配置的如下:

<?xml version="1.0" encoding="UTF-8"?>
<db-config> 
<driver>com.mysql.jdbc.Driver</driver> 
<url>jdbc:mysql://localhost:3306/bbb?useUnicode=true&characterEncoding=UTF-8</url> 
<username>root</username>               //我的数据库的登录名
<password>123456</password>      //密码
<min>30</min>                                   //最少链接个数
<max>50</max>                            //最多链接个数
<timeout>100000</timeout>     //等待100000ms检查连接池连接的个数
</db-config>



现在我们需要做的就是先解析xml,我用的是xpath解析的,先创建一个bean容器,来存这些数据;

public class ConfisBean {

private String driver="";
private String url="";
private String username="";
private String password="";
private String min="";
private String max="";
private String timeout="";
public String getDriver() {
return driver;
}
public void setDriver(String driver) {
this.driver = driver;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getMin() {
return min;
}
public void setMin(String min) {
this.min = min;
}
public String getMax() {
return max;
}
public void setMax(String max) {
this.max = max;
}
public String getTimeout() {
return timeout;
}
public void setTimeout(String timeout) {
this.timeout = timeout;
}



创建好这个bean之后,我们要做的就是用xpath解析xml将xml数据存入bean:



public static ConfisBean ReadXmlbyXPath() throws ParserConfigurationException, 
SA
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值