MyBatis 3.0 实现数据的增删查改操作
如果对Mybatis还未入门的请看
?
http://josh198331.iteye.com/blog/1751163
?
?
本文是在MyBatis入门基础之上进行修改而来
?
一.修改UserMapper类增加对应的接口
import java.util.List;
public interface UserMapper {?// 可以通过注入的方式生成映射本例不采用,本例采用Xml映射方式?// @Select("select * from user where username = #{username}")?public User getUser(String username);?/**? * 增加一个用户? * ? * @param user? */?public void addUser(User user);
?/**? * 查询所有用户? * ? * @return? */?public List<User> queryAll();
?/**? * 根据ID查找用户? * ? * @param id? * @return? */?public User getUserById(int id);
?/**? * 修改一个用户? * ? * @param user? */?public void update(User user);
}
二.修改配置文件(user.xml)
?
?
?<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper?? PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"?? "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.fly31.mybatis.UserMapper">?<!-- 下面这段代码可有可无,如果没有的话可以在mapper类中通过注解的方式实现 -->?<!-- 用户名不可重复 -->?<select id="getUser" parameterType="java.lang.String"??resultType="User">??select * from user where username = #{username}?</select>?<select id="getUserById" parameterType="int"??resultType="User">??select * from user where id = #{id}?</select>??<!--查询所有记录-->?<select id="queryAll" resultType="User">select * from user</select>?<!-- 增加一个user -->?<insert id="addUser" parameterType="User" >??insert into user(id, username, password)??values (#{id},#{username}, #{password})?</insert>?<!-- 更新数据库 -->?<update id="update" parameterType="User">?update user set username = #{username},password = #{password} where id=#{id}?</update></mapper>说明:namespace在3.0一下可能不是很重要,在3.0及以上版本,命名空间很重要,必须要配置。
???????? select:用于查询
???????? id:是一个唯一标示,由于没有实现类,用默认mybatis的默认实现,所有id要用UserMapper 的方法名。
???????? resultType:结果类型,如果返回的是个结果集,类型为结果集单元的类型
???????? parameterType:参数类型,用#{……}可以取他的属性值。
?
三.写测试类 (MyBatisTest)我这里用的是junit 4
?
?
?