ibatis的CRUD代码
来源:互联网 发布:开淘宝店一个月赚3万 编辑:程序博客网 时间:2024/05/01 17:22
使用ibatis对数据库进行简单的CRUD操作,四个文件就可以搞定,分别是:SqlMapConfig.xml ,Contact.java , Contact.xml , test.java
1、 SqlMapConfig是有关操作数据库的配置文件,具体内容如下:
<? xml version="1.0" encoding="UTF-8" ?> <! DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd" > <sqlMapConfig> <settings cacheModelsEnabled ="true" <!--是否启用缓存机制-- > lazyLoadingEnabled="true" <!-- 是否启用延迟加载机制 --> enhancementEnabled="true" <!-- 是否启用字节码增强机制 --> errorTracingEnabled="true" <!-- 是否启用错误处理机制 --> maxRequests="32" <!-- 最大并发请求数 --> maxSessions="10" <!-- 最大Session数 --> maxTransactions="5" <!-- 最大并发事务数 --> useStatementNamespaces="true"/> <!-- 是否启用名称空间 -->
<transactionManager type="JDBC"> <!-- 定义了ibatis的事务管理器有3中(JDBC,JTA,EXTERNAL) --> <dataSource type="SIMPLE"> <!-- type属性指定了数据源的链接类型,也有3种类型(SIMPLE,DBCP,JNDI) --> <property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/> <property name="JDBC.ConnectionURL" value="jdbc:mysql://127.0.0.1:3306/test"/> <property name="JDBC.Username" value="root"/> <property name="JDBC.Password" value="root"/> </dataSource> </transactionManager>
<sqlMap resource="com\ection\ibatis\Contact.xml"/>
</sqlMapConfig>
2、 Contact.java
public class Contact {private int id;private String firstName;private String lastName;private String email;public Contact(){}public Contact(String firstName, String lastName, String email){this.firstName = firstName;this.lastName = lastName;this.email = email;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getFirstName() {return firstName;}public void setFirstName(String firstName) {this.firstName = firstName;}public String getLastName() {return lastName;}public void setLastName(String lastName) {this.lastName = lastName;}public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}}
3、 Contact.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="Contact"> <!-- show all data of table --> <!-- 查询 --> <select id="getAll" resultClass="com.ection.ibatis.Contact"> select * from contact </select> <!-- ResultMap的使用 --> <resultMap class="com.ection.ibatis.Contact" id="Contact"> <result property="id"/> <result property="firstName"/> <result property="lastName"/> <result property="email"/> </resultMap> <select id="selectById" resultMap="Contact"> select * from contact where id = #id# </select> <!-- 插入 --> <insert id="insert" parameterClass="com.ection.ibatis.Contact" > insert into contact(firstName,lastName,email) values(#firstName#,#lastName#,#email#) <selectKey resultClass="int" keyProperty="id"> select last_insert_id() as id </selectKey> </insert> <!-- 删除 --> <delete id="deleteAll" parameterClass="com.ection.ibatis.Contact"> delete from contact </delete> <delete id="deletById" parameterClass="int"> delete from contact where id = #id# </delete> <!-- 更新 --> <update id="updateById" parameterClass="long"> update contact set lastName = "John" where id = #id# </update> </sqlMap>
4、test.java
Reader reader = Resources.getResourceAsReader("SqlMapConfig.xml");SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);
System.out.println("---------Insert information in contact-------");Contact contact = new Contact("Amit", "Kuman", "amit@163.com");sqlMap.insert("Contact.insert", contact); System.out.println("Record inserted success");
System.out.println("-------update contact by Id"); long contactId = 5; sqlMap.update("Contact.updateById", contactId); System.out.println("update record is success");
System.out.println("--------delete all data in contact");int id = 6;sqlMap.delete("Contact.deleteById", id);System.out.println("delet data success");
//Output all contactsSystem.out.println("All Contacts");List<Contact> contacts = sqlMap.queryForList("Contact.getAll", null);for(Contact c : contacts){System.out.println(" " + c.getId());System.out.println(" " + c.getFirstName());System.out.println(" " + c.getLastName());System.out.println(" " + c.getEmail());System.out.println(" ");}
parameterClass与parameterMap的设置及其意义参考:
http://www.blogjava.net/qianbiguabi/archive/2008/12/22/247708.html
- ibatis的CRUD代码
- ibatis的CRUD代码 -------懂这些,ibatis差不多就会用了。
- ibatis教程 实战篇 11例代码讲述CRUD操作
- ibatis教程 实战篇 11例代码讲述CRUD操作
- ibatis的探索和应用,实现ibatis的CRUD功能,ibatis的优缺点
- jdbc crud的演示代码
- CRUD的共公代码
- Ibatis实现CRUD之一
- ibatis实现CRUD功能
- iBatis的简单增删改查(CRUD)操作
- iBatis的简单增删改查(CRUD)操作
- iBatis的简单增删改查(CRUD)操作二
- Ibatis实现CRUD之二
- Ibatis实现CRUD之三
- iBatis学习笔记(2)--CRUD
- iBatis教程之CRUD操作
- 分享java操作mongodb的crud代码
- MyBatis 的CRUD 功能代码演示
- 链表逆置
- 程序编译后运行时的内存分配
- Thrift 是什么?
- Jquery 插件 方法名意义
- C/C++ 笔试、面试题目大汇总
- ibatis的CRUD代码
- 多态 数组的声明遍历与赋值 反射函数和对Entity的进一步了解
- 去掉数组中与给定元素相同的元素
- HBase 默认配置说明
- 读书
- 十个程序开发入门必去网站
- Nehe第五课
- 实现栏目页在同级栏目列表中,点击一栏目,该栏目样式变化(背景/颜色/字体...),其他栏目样式不变。
- c#线程编程的一些集合