在【Mybatis】Mybatis入门概述及第一个Mybatis实例实现增删改查 和【Mybatis】Mybatis接口编程方式实现增删改查 演示了如何使用XML来操作Mybatis实现CRUD,但是大量的XML配置文件的编写是非常烦人的。因此Mybatis也提供了基于注解的配置方式,下面我们来演示一下使用接口加注解来实现CRUD的的例子。
一、创建数据库、数据表
?
use test; create table t_employeer( employeer_id int not null primary key AUTO_INCREMENT , employeer_name varchar(50) default null, employeer_age int default null, employeer_department varchar(100) default null, employeer_worktype varchar(100) default null )
二、创建工程
?
整个工程目录如下:

记得要导入相应的包!
1、雇员对应的类Employeer.java
?
package com.mucfc.model;
/**
* 雇员信息类
*@author linbingwen
*@time 2015.5.11
*/
public class Employeer {
private Integer employeer_id;
private String employeer_name;
private Integer employeer_age ;
private String employeer_department;
private String employeer_worktype;
public Employeer() {
super();
}
public Integer getEmployeer_id() {
return employeer_id;
}
public void setEmployeer_id(Integer employeer_id) {
this.employeer_id = employeer_id;
}
public String getEmployeer_name() {
return employeer_name;
}
public void setEmployeer_name(String employeer_name) {
this.employeer_name = employeer_name;
}
public Integer getEmployeer_age() {
return employeer_age;
}
public void setEmployeer_age(Integer employeer_age) {
this.employeer_age = employeer_age;
}
public String getEmployeer_department() {
return employeer_department;
}
public void setEmployeer_department(String employeer_department) {
this.employeer_department = employeer_department;
}
public String getEmployeer_worktype() {
return employeer_worktype;
}
public void setEmployeer_worktype(String employeer_worktype) {
this.employeer_worktype = employeer_worktype;
}
@Override
public String toString() {
return "Employeer [employeer_id=" + employeer_id + ", employeer_name="
+ employeer_name + ", employeer_age=" + employeer_age
+ ", employeer_department=" + employeer_department
+ ", employeer_worktype=" + employeer_worktype + "]";
}
}
Employeer.xml文件,用来放置一些映射,删除了Sql语句了
?
2、配置mybatis-config.xml
?
mysql.jdbc.Driver"/>
3、EmployeerMapper.java在添加Sql映射语句,使用注解的方式来实现
package com.mucfc.dao;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.ResultMap;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.SelectKey;
import org.apache.ibatis.annotations.Update;
import com.mucfc.model.Employeer;
/**
* SQL语句映射类
* @author linbingwen
* @time 2015.5.11
*/
public interface EmployeerMapper {
@Select("select * from `t_employeer` where employeer_name like #{employeer_name}")
@ResultMap("employeerResultMap")
public List
findEmployeerByName(String employeer_name);
@Select("select* from `t_employeer` where employeer_name=#{0} and employeer_department=#{1}")
@ResultMap("employeerResultMap")
public List
findEmployeerByNameandDep(String employeer_name,String employeer_department); @ResultMap("employeerRes