`

ibatis 3 学习笔记1

阅读更多
Ibatis更新还真快!呵呵,看到csdn友博客,受益匪浅,转帖大家分享,便于自己保存

准备ibatis环境

oracle 10g express            ibatis beta 5

新建工程 在WEBINF\lib下 导入以下包:
..\oraclexe\app\oracle\product\10.2.0\server\jdbc\lib\ojdbc14.jar
ibatis-3-core-3.0.0.208.jar


总配置文件SqlMapConfig.xml

//ibatis.apache.org//DTD Config 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-config.dtd">

<configuration>
	<environments default="development">
		<environment id="development">
			<transactionManager type="JDBC"/>
			<dataSource type="POOLED">
				<property name="driver" value="oracle.jdbc.driver.OracleDriver"/>
				<property name="url" value="jdbc:oracle:thin:@localhost:1521:xe"/>
				<property name="username" value="puf"/>
				<property name="password" value="pufang890505"/>
			</dataSource>
		</environment>
	</environments>
	
	<mappers>
		<mapper resource="cn/pf/ibatis/domain/Student.xml"/>
	</mappers>
</configuration>




关于每个实体的映射文件(map)Student.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">

<mapper namespace="cn.pf.ibatis.domain.StudentMapper">
	<select id="selectStudent" parameterType="int" resultType="cn.pf.ibatis.domain.Student">
		select * from Student where id = #{id}
	</select>
</mapper>


创建Student POJO

package cn.pf.ibatis.domain;

import java.util.Date;

/**
 * 学生PO
 * @author  pf
 * @version 2010-3-16下午03:00:00
 */
public class Student {
	/**
	 * 学生编号
	 */
	private int id;
	/**
	 * 学生姓名
	 */
	private String name;
	/**
	 * 学生专业
	 */
	private String major;
	/**
	 * 学生生日
	 */
	private Date birth;
	/**
	 * 学生分数
	 */
	private double score;
	/**
	 * ... 构造函数
	 */
	public Student() {
		super();
	}
	/**
	 * ... 构造函数
	 * @param id
	 * @param name
	 * @param major
	 * @param birth
	 * @param score
	 */
	public Student(int id, String name, String major, Date birth, double score) {
		super();
		this.id = id;
		this.name = name;
		this.major = major;
		this.birth = birth;
		this.score = score;
	}
	/**
	 * id getter 方法
	 * @return the id
	 */
	public int getId() {
		return id;
	}
	/**
	 * id setter 方法
	 * @param id the id to set
	 */
	public void setId(int id) {
		this.id = id;
	}
	/**
	 * name getter 方法
	 * @return the name
	 */
	public String getName() {
		return name;
	}
	/**
	 * name setter 方法
	 * @param name the name to set
	 */
	public void setName(String name) {
		this.name = name;
	}
	/**
	 * major getter 方法
	 * @return the major
	 */
	public String getMajor() {
		return major;
	}
	/**
	 * major setter 方法
	 * @param major the major to set
	 */
	public void setMajor(String major) {
		this.major = major;
	}
	/**
	 * birth getter 方法
	 * @return the birth
	 */
	public Date getBirth() {
		return birth;
	}
	/**
	 * birth setter 方法
	 * @param birth the birth to set
	 */
	public void setBirth(Date birth) {
		this.birth = birth;
	}
	/**
	 * score getter 方法
	 * @return the score
	 */
	public double getScore() {
		return score;
	}
	/**
	 * score setter 方法
	 * @param score the score to set
	 */
	public void setScore(double score) {
		this.score = score;
	}
	/**
	 * 转换对象为字符串
	 * @return 对象转换后的字符串
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "Student [birth=" + birth + ", id=" + id + ", major=" + major
				+ ", name=" + name + ", score=" + score + "]";
	}
	
	
}


test.java

String resource = "SqlMapConfig.xml";
Reader reader = null;
try {
	//使用ibatis提供的Resources类读取资源文件
	reader = Resources.getResourceAsReader(resource);
} catch (IOException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}
//根据资源文件内容建立session工厂
SqlSessionFactory sqlMapper = new SqlSessionFactoryBuilder().build(reader);   
//session工厂打开一个session
SqlSession session = sqlMapper.openSession(true);  
		
Student student;
try{
	student = (Student)session.selectOne("cn.pf.ibatis.domain.StudentMapper.selectStudent", 1);
}finally{
	session.close();
}
		
System.out.println(student.toString());


ibatis 3 果然改动很大,调试花了不少时间,很多细小的错误耽误了很久。那个ibatis 3 user guide缺少完整的实例真是不爽,自己一点点试探过来,继续研究各种配置,下一步完成一个基本的crud操作。
分享到:
评论

相关推荐

    iBatis2学习笔记

    1.iBatis2学习笔记:基本原理和配置.doc 2.iBatis2学习笔记:与Spring2的整合.doc 3.iBatis2学习笔记:单表映射 .doc 4.iBatis2学习笔记:SqlMap的配置总结(18条).doc 5.iBatis2学习笔记:入参和返回值的问题.doc ...

    ibatis学习笔记

    ibatis学习笔记 ibatis学习笔记 ibatis学习笔记 ibatis学习笔记 ibatis学习笔记 ibatis学习笔记 ibatis学习笔记

    IBatis学习笔记以及使用心得

    IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得

    ibatis教程学习笔记

    ### ibatis教程学习笔记 #### 一、ibatis简介与特点 ibatis 是一个基于 Java 的持久层框架,它提供了一种将 SQL 映射到 Java 对象的方式,简化了 JDBC 的复杂操作。ibatis 通过 XML 配置文件或者注解的形式来描述 ...

    Ibatis的学习笔记

    Ibatis 是一款轻量级的Java持久层框架,它与Hibernate等ORM框架不同,Ibatis 提供了更加灵活的SQL映射机制,允许开发者直接编写自定义的SQL语句,而不像Hibernate那样进行全封装。这种设计使得Ibatis在处理复杂的SQL...

    ibatis 学习笔记

    1. 提供一个对象作为参数,这个对象用于设置更新语句中的输入值或查询语句中的条件。 2. 执行映射的SQL语句,iBATIS会创建PreparedStatement实例,利用对象参数执行SQL,并从ResultSet构建返回的对象。 3. 更新操作...

    ibatis-3-学习笔记.docx

    iBatis 3 学习笔记 iBatis 是一个基于 Java 的持久层框架,主要用于数据库交互。下面是 iBatis 3 的学习笔记,包括环境配置、Mapper 文件配置、POJO 类设计等内容。 一、环境配置 要使用 iBatis 3,需要在项目中...

    ibatis学习笔记.txt

    ### iBatis 学习笔记知识点总结 #### 一、iBatis 概念与特点 **1.1 iBatis 定义** - **iBatis** 是一个基于 Java 的开源持久层框架,它专注于 SQL 映射,提供了一种将对象与数据库交互过程中的 SQL 语句进行分离的...

    spring3学习笔记(2)-集成ibatis3进行单元测试

    在本篇“Spring3学习笔记(2)-集成ibatis3进行单元测试”中,我们将深入探讨如何在Spring3框架中整合Ibatis3,并利用它来进行单元测试。这个主题对于理解如何在实际项目中实现数据访问层的测试具有重要意义。在现代...

    持久层框架ibatis学习笔记

    通过本文的学习笔记,我们可以了解到 iBatis 在简化数据库访问的同时提供了足够的灵活性。尽管 iBatis 相比 Hibernate 在自动化程度上略显不足,但对于需要高度定制 SQL 查询的场景来说,iBatis 的优势十分明显。...

    Ibatis学习笔记,文档,资源6合1

    这个压缩包集合了Ibatis的学习笔记、文档和相关资源,为想要深入理解和掌握Ibatis的人提供了一站式的自学材料。 Ibatis的核心概念是SQL Mapping,它允许开发者将SQL语句直接写在XML配置文件中,或者使用注解方式,...

    ibatis学习笔记(一)

    这篇“ibatis学习笔记(一)”可能是博主对Ibatis基础概念、安装配置以及基本使用的介绍,让我们通过标签“源码”和“工具”来深入探讨Ibatis的相关知识。 首先,Ibatis是一个轻量级的Java ORM(对象关系映射)框架...

    Ibatis 练习Demo和笔记

    在提供的压缩包中,"Ibatis 学习笔记.docx"可能是对以上知识点的详细文档,包含了学习过程中的总结和例子,适合阅读理解。而"IbatisStudy"可能是一个示例项目,包含了一个简单的Ibatis应用场景,如用户管理模块,...

    ibatis学习资料及个人学习笔记,对初学者很有用

    【ibatis学习资料及个人学习笔记】 Ibatis,作为一个轻量级的持久层框架,它在Java开发领域中占有重要地位。本资料包是针对Ibatis的学习资源集合,旨在帮助初学者快速掌握这一强大的数据库操作工具。Ibatis的核心...

    IBATIS学习笔记

    ### IBATIS学习笔记知识点详解 #### 一、IBATIS简介 iBatis是一个用于Java的数据持久化框架,类似于Hibernate、JDO和EJB等技术。它的主要特点是将对象映射为SQL语句,这使得开发人员可以更加灵活地控制SQL的执行,...

Global site tag (gtag.js) - Google Analytics