1、首先建立工程导入mysql驱动jar包机mybatis-3.1.1.jar
2、编辑配置文件config.properties,mybatis-config.xml,StudentMapper.xml
config.properties
- driver=com.mysql.jdbc.Driver
- url=jdbc:mysql://localhost:3306/student
- user=root
- password=123
mybatis-config.xml(核心配置文件用于数据库连接,事务管理等)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="config.properties"><!--读取属性文件-->
</properties>
<typeAliases>
<typeAlias alias="Student" type="com.mybaits.bean.Student"/>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${user}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/mybatis/bean/StudentMapper.xml"/>
</mappers>
</configuration>
- <?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.mbatis.bean">
- <select id="SelectAllStudent" resultType="Student">
- Select * from student<!-- 此处的student是数据库的student表 -->
- </select>
- <select id="SelectOneStudent" resultType="Student" parameterType="int">
- select * from student where student.id=#{id};
- </select>
- <insert id="AddStudent" parameterType="Student" useGeneratedKeys="true" keyProperty="id">
- insert into Student(id,name,age,mail)
- values(#{id},#{name},#{age},#{mail});
- </insert>
- <delete id="DeleteStudent" parameterType="int">
- delete from student where student.id=#{id}
- </delete>
- <update id="UpdateStudent" parameterType="Student">
- update student set student.name=#{name},student.age=#{age},student.mail=#{mail}
- where student.id=#{id}
- </update>
- </mapper>
StudentDaoImpl.java
- package com.Dao.Impl;
- import java.io.IOException;
- import java.io.InputStream;
- import java.util.List;
- 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.Dao.*;
- import com.Ibatis.Student;
- public class StudentDaoImpl implements StudentDao {
- private static SqlSessionFactory ssf ;
- static{
- String resource ="mybatis-config.xml";
- InputStream stream;
- try {
- stream = Resources.getResourceAsStream(resource);
- ssf= new SqlSessionFactoryBuilder().build(stream);
- stream.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- public List<Student> GetAllStduent() {
- List<Student> list = null;
- SqlSession session = null;
- try {
- session = ssf.openSession();
- list= session.selectList("com.mybatis.SelectAllStudent");
- } catch (Exception e) {
- e.printStackTrace();
- }
- finally{
- session.close();
- }
- return list;
- }
- public void AddStudent(Student student) {
- SqlSession session = null;
- try {
- session = ssf.openSession();
- session.insert("com.mybatis.AddStudent",student);
- session.commit();
- } catch (Exception e) {
- e.printStackTrace();
- }
- finally{
- session.close();
- }
- }
- public void DeleteStudent(int id) {
- SqlSession session = null;
- try {
- session = ssf.openSession();
- session.delete("com.mybatis.DeleteStudent", id);
- session.commit();
- } catch (Exception e) {
- e.printStackTrace();
- }
- finally{
- session.close();
- }
- }
- public Student GetOneStudent(int id) {
- Student student = null;
- SqlSession session = null;
- try {
- session = ssf.openSession();
- student =session.selectOne("com.mybatis.SelectOneStudent", id);
- } catch (Exception e) {
- e.printStackTrace();
- }
- finally{
- session.close();
- }
- return student;
- }
- public void UpdateStudent(Student student) {
- SqlSession session = null;
- try {
- session = ssf.openSession();
- session.update("com.mybatis.UpdateStudent", student);
- session.commit();
- } catch (Exception e) {
- e.printStackTrace();
- }
- finally{
- session.close();
- }
- }
- }
- public static void main(String[] args) {
- StudentDao dao = new StudentDaoImpl();
- System.out.println("***********查询所有***************************");
- List<Student> list = dao.GetAllStduent();
- for(Student s:list){
- System.out.println(s.toString());
- }
- System.out.println("************增加新的记录************************");
- Student student1 = new Student();
- student1.setAge(45);
- student1.setName("ant");
- student1.setMail("[email protected]");
- dao.AddStudent(student1);
- System.out.println("*************删除前查询第12条记录***************");
- Student student3 = dao.GetOneStudent(12);
- if(student3==null){
- System.out.println("第12条记录删除了");
- }else{
- System.out.println(student3.toString());
- }
- System.out.println("**************删除第12条记录*****************");
- dao.DeleteStudent(12);
- System.out.println("**************删除后查询第12条记录**************");
- Student student2 = dao.GetOneStudent(12);
- if(student2==null){
- System.out.println("第12条记录 删除了");
- }else{
- System.out.println(student2.toString());
- }
- System.out.println("**************获得更新前的记录********************");
- Student student4 = dao.GetOneStudent(4);
- System.out.println(student4.getName());
- student4.setName("my name is changed");
- dao.UpdateStudent(student4);
- System.out.println("**************获得更新后的记录********************");
- Student student5 = dao.GetOneStudent(4);
- System.out.println(student5.getName());
- }
参考:http://blog.csdn.net/qiufengsaoluoye01/article/details/7881241
http://mybatis.co.uk/index.php/2010/09/mybatis-simple-and-complete-example.html
MyBatisMyBatis存储过程、MyBatis分页、MyBatis一对多增删改查操作
:http://blog.csdn.net/qiufengsaoluoye01/article/details/7891930