需要两个jar包,mysql-connector-java-5.1.21.jar和mybatis-3.4.2.jar 对应的maven为
org.mybatis mybatis 3.4.2 mysql mysql-connector-java 5.1.21
1.创建表
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)
2.创建实体类
public class Employeer { private Integer employeer_id; private String employeer_name; private Integer employeer_age ; private String employeer_department; private String employeer_worktype; ...
3.创建mybatis配置文件mybatis-config.xml
如果想从配置文件读取mysql的数据源,可以添加对应的properties文件,上文的注释为properties方式的配置 mysql.properties
driver=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/test?charset=utf8username=hsmpassword=1994713
4.根据实体列编写对应的xml文件Employeer.xml
这个地方的命名空间很重要,一定是具体的接口
insert into `t_employeer`(employeer_name,employeer_age,employeer_department,employeer_worktype) values(#{employeer_name},#{employeer_age},#{employeer_department},#{employeer_worktype}) delete from `t_employeer` where employeer_id = #{employeer_id} update t_employeer set employeer_name = #{employeer_name},employeer_age= #{employeer_age},employeer_department = #{employeer_department} ,employeer_worktype=#{employeer_worktype} where employeer_id = #{employeer_id}
5.编写mapper接口
package com.hsm.inter;import com.mucfc.model.Employeer;public interface EmployeerMapper { /** * 注意要和Employeer.xml的方法名对应 */ public Employeer findEmployeerByID(int id); public void addEmployeer(Employeer employeer); public void deleteEmployeer(int id); public void updateEmployeer(Employeer employeer);}
6 .编写测试类
package com.hsm;import java.io.Reader;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import com.hsm.inter.EmployeerMapper;import com.mucfc.model.Employeer;public class MybatisTest2 { private static SqlSessionFactory sqlSessionFactory; private static Reader reader; static { try { reader = Resources.getResourceAsReader("mybatis-config.xml"); sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader); } catch (Exception e) { e.printStackTrace(); } } /** * 查找 */ public static void findEmployeerById(int id) { SqlSession session = null; try { session = sqlSessionFactory.openSession(); EmployeerMapper employeerMapper=session.getMapper(EmployeerMapper.class); Employeer employeer=employeerMapper.findEmployeerByID(id); if (employeer == null) System.out.println("null"); else System.out.println(employeer); } finally { session.close(); } } /** * 增加 */ public static void addEmployeer(Employeer employeer){ SqlSession session = null; try { session = sqlSessionFactory.openSession(); EmployeerMapper employeerMapper=session.getMapper(EmployeerMapper.class); employeerMapper.addEmployeer(employeer); session.commit() ; } finally { session.close(); } } /** * 删除 * */ public static void deleteEmployeer(int id){ SqlSession session = null; try { session = sqlSessionFactory.openSession(); EmployeerMapper employeerMapper=session.getMapper(EmployeerMapper.class); employeerMapper.deleteEmployeer(id); session.commit() ; } finally { session.close(); } } /** * 更改 */ public static void updateEmployeer(Employeer employeer){ SqlSession session = null; try { session = sqlSessionFactory.openSession(); EmployeerMapper employeerMapper=session.getMapper(EmployeerMapper.class); employeerMapper.updateEmployeer(employeer); session.commit() ; } finally { session.close(); } } public static void main(String[] args) { Employeer employeer1=new Employeer(); employeer1.setEmployeer_name("李四"); employeer1.setEmployeer_age(23); employeer1.setEmployeer_department("产品一部"); employeer1.setEmployeer_worktype("开发工程师"); Employeer employeer2=new Employeer(); employeer2.setEmployeer_name("张三"); employeer2.setEmployeer_age(30); employeer2.setEmployeer_department("产品二部"); employeer2.setEmployeer_worktype("测试工程师"); Employeer employeer3=new Employeer(); employeer3.setEmployeer_name("小王"); employeer3.setEmployeer_age(22); employeer3.setEmployeer_department("产品三部"); employeer3.setEmployeer_worktype("数据分析师"); Employeer employeer4=new Employeer(); employeer4.setEmployeer_name("明明"); employeer4.setEmployeer_age(22); employeer4.setEmployeer_department("财会部"); employeer4.setEmployeer_worktype("财务人员"); //插入 addEmployeer(employeer1); addEmployeer(employeer2); addEmployeer(employeer3); addEmployeer(employeer4); findEmployeerById(26); deleteEmployeer(27); //更改 employeer2.setEmployeer_id(28); employeer2.setEmployeer_age(21); employeer2.setEmployeer_department("产品四部"); updateEmployeer(employeer2); }}