java框架MyBatis入门实例教程 1.mybatis简介 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。 MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除 了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java 对象)映射成数据库中的记录。 MyBatis是一个开源的ORM框架,本文以MyEclipse和MySQL数据库为开发环境来介绍一个简单的入门实例。 2.案例程序代码 a.需要准备的jar文件有:mybatis-3.1.1.jar,mysql-connector-java-5.1.2-beta-bin.jar b.创建一个简单的测试用的数据库和添加测试数据,本例中所使用到的数据库创建语句如下: CREATE TABLE user ( id int(11) NOT NULL AUTO_INCREMENT, name varchar(20) NOT NULL, password varchar(20) NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 添加测试数据: INSERT INTO user VALUES ('1', 'admin', 'admin'); c.在MyEclIpse中创建一个Java Project,添加上面两个jar文件到Project的Build Path。在src下创建一个包model,并在model下创建一个类User,内容如下: package model; public class User { private int id; private String name; private String password; public User(){ } public User(int id,String name){ this.id=id; this.name=name; } public int getId() { return id; } public void setId(int id) { this.id = id; } 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 toString(){ return "User [id = "+ id +" , name = "+ name +"]" ; } } d.在Project的src目录下创建两个文件Configuration.xml和SqlMap.xml,文件内容: Configuration.xml数据库名和用户名以及密码请根据你的实际环境作相应的修改) <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-mybatis.orgDTD Config 3.0EN" "http:mybatis.orgdtdmybatis-3-config.dtd"> <configuration> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"> <property name="url" value="jdbc:mysql:localhost:3306test"> <property name="username" value="root"> <property name="password" value="123456"> <dataSource> <environment> <environments> <mappers> <mapper resource="SqlMap.xml"> <mappers> <configuration> SqlMap.xml: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-ibatis.apache.orgDTD Mapper 3.0 EN" "http:ibatis.apache.orgdtdibatis-3-mapper.dtd"> <mapper namespace="org.mapper"> <select id="selectUser" parameterType="int" resultType="model.User"> select * from user where id = #{id} <select> <insert id="insertUser" parameterType="model.User"> insert into user (id,name,password) values (#{id},#{name},#{password}) <insert> <update id="updateUser" parameterType="model.User"> update user set name=#{name},password=#{password} where id=#{id} <update> <delete id="deleteUser" parameterType="int"> delete from user where id=#{id} <delete> <mapper> e.创建一个test包,并在test包下创建一个类MyBatisTest,内容如下: package test; import java.io.IOException; import java.io.Reader; import model.User; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; public class MyBatisTest { public static void main(String[] args) throws IOException { String resource="Configuration.xml"; Reader reader=Resources.getResourceAsReader(resource); SqlSessionFactory ssf=new SqlSessionFactoryBuilder().build(reader); SqlSession session=ssf.openSession(); try { User u=(User) session.selectOne("selectUser", "1"); System.out.println(u); 插入(下面使用**注释的部分) * u.setId(2); session.insert("org.mapper.insertUser",u); session.commit(); * 更新(下面使用**注释的部分) * u.setPassword("654321"); session.update("org.mapper.updateUser",u); session.commit(); * 删除(下面使用**注释的部分) * session.delete("org.mapper.deleteUser", 2); session.commit(); * } catch (Exception e) { e.printStackTrace(); }finally{ session.close(); } } } f.以上的例子将增改删注释起来了,读者可以自行修改注释部分来调试增改删功能。 至此,我们已经可以使用MyBatis对数据库进行增删改查了。 |
mybatis入门教程
最新推荐文章于 2025-06-11 15:41:31 发布