iBatis入门
来源:互联网 发布:网络创世纪 中国 编辑:程序博客网 时间:2024/05/01 04:17
最近这些天在学习Struts2,学习效果还好,而且最近也在打算做个有实际价值的东西出来,并且把Struts2也用上,考虑之余,我想到了持久层的问题,以前用过Hibernate,对它好像不是很感冒,以前也亲自做过对JDBC封装来完成持久层的功能,总是感觉亲自封装JDBC比用Hibernate更爽,更灵活多了。本来打算用这次也亲自封装,因为毕竟系统只是小型的。突然这时想起了以前在网上看过的iBatis,听说它用起来很灵活,不像Hibernate那么“全自动化”,而属于“半自动化”,是要自己编写SQL语句的那种。所以就GOOGLE一下,下载了IBATIS的开发包和一些中文资料。然后马上做一个DEMO。
其实做完后,我发现IBATIS不难,蛮容易入门,如果有本很好的中文书籍在的话,一二天掌握个基本一点问题都没有,完全可以马上应用到实际开发中去。
在用IBATIS时,我们只要建四五类文件:
1、IBATIS配制文件(如:sqlMapConfig.xml)
2、IBATIS映射文件(如:Admin.xml)
3、POJO类
4、产生SqlMapClient对像的单例类
5、(可选)配数据库的属性文件
如下为刚才做的一个DEMO,贴上来记念下:
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>
- <!-- Configure a built-in transaction manager. If you're using an
- app server, you probably want to use its transaction manager
- and a managed datasource -->
- <transactionManager type="JDBC">
- <dataSource type="SIMPLE">
- <property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/>
- <property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost:3306/yes"/>
- <property name="JDBC.Username" value="root"/>
- <property name="JDBC.Password" value="root"/>
- </dataSource>
- </transactionManager>
- <!-- List the SQL Map XML files. They can be loaded from the
- classpath, as they are here (com.domain.data...) -->
- <sqlMap resource="Admin.xml"/>
- <!-- List more here...
- <sqlMap resource="com/mydomain/data/Order.xml"/>
- <sqlMap resource="com/mydomain/data/Documents.xml"/>
- -->
- </sqlMapConfig>
IBATIS映射文件 Admin.xml
- <?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="Admin">
- <typeAlias alias="Admin" type="Admin"/>
- <select id="getAdmin" resultClass="Admin">
- select
- name,
- password,
- last_logon as lastLogon,
- role,
- locked
- from admin
- where name = #name#
- </select>
- </sqlMap>
POJO类 Admin.java
- import java.util.Date;
- public class Admin {
- private String name;
- private String password;
- private Date lastLogon;
- private String role;
- private int locked;
- public int getLocked() {
- return locked;
- }
- public void setLocked(int locked) {
- this.locked = locked;
- }
- public Date getLastLogon() {
- return lastLogon;
- }
- public void setLastLogon(Date lastLogon) {
- this.lastLogon = lastLogon;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this.password = password;
- }
- public String getRole() {
- return role;
- }
- public void setRole(String role) {
- this.role = role;
- }
- }
产生SqlMapClient对像的单例类
Test.java 总体来说,IBATIS给我的感觉很好。
- IBATIS入门
- ibatis入门
- iBatis入门
- ibatis 入门
- ibatis 入门
- ibatis入门
- ibatis入门
- Ibatis 入门
- iBatis入门
- iBatis入门
- iBatis入门
- iBatis入门
- ibatis 入门
- iBatis入门
- ibatis入门
- iBatis入门
- iBatis入门
- ibatis入门
- CArray的介绍
- SecureCRT无法连接到SUSE的解决方法
- .net中post上传的简单实例
- 布衣乐队的姑娘闪亮星光现场
- 有点失落
- iBatis入门
- GRASP模式
- 怨妇贴:新浪与腾讯
- jsp中 java ,html/javascript 交互
- sql server 按照日期自动生成单据编号的函数
- 以后的日子少了番茄会怎么过?
- 使用jad反编译class时报The class file version is 48.0 (only 45.3 and 46.0 are supported)
- SOA,现在进行时
- ASP中正则表达式的用法