1.创建数据库student
2.创建项目chapter01,并导入jar包
3.项目结构如下:
StudentMapper.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="student">
<select id="findStudentBySid" parameterType="Integer"
resultType="com.qfedu.pojo.Student">
select * from Student where sid = #{sid}
</select>
<select id="findStudentBySname" parameterType="String"
resultType="com.qfedu.pojo.Student">
select * from student where sname like '%${value}%'
</select>
<insert id="addStudent" parameterType="com.qfedu.pojo.Student">
insert into student(sname,age,course)values(#{sname},#{age},#{course})
</insert>
<update id="updateStudent"
parameterType="com.qfedu.pojo.Student">
update student set sname
=#{sname},course = #{course} where sid = #{sid}
</update>
<delete id="deleteStudent" parameterType="Integer">
delete from student where sid=#{sid}
</delete>
</mapper>
student.java
package com.qfedu.pojo;
public class Student {
private int sid;
private String sname;
private String age;
private String course;
public Student() {
super();
}
public Student(int sid, String sname, String age, String course) {
super();
this.sid = sid;
this.sname = sname;
this.age = age;
this.course = course;
}
public int getSid() {
return sid;
}
public void setSid(int sid) {
this.sid = sid;
}
public String getSname() {
return sname;
}
public void setSname(String sname) {
this.sname = sname;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getCourse() {
return course;
}
public void setCourse(String course) {
this.course = course;
}
@Override
public String toString() {
return "Student [sid=" + sid + ", sname=" + sname + ", " + "age=" + age + ", " + "course=" + course + "]";
}
}
TestAdd.java
package com.qfedu.test;
import java.io.*;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.*;
import com.qfedu.pojo.Student;
public class TestAdd {
public static void main(String[] args) {
// 读取配置文件
String resource = "mybatis-config.xml";
try {
InputStream in = Resources.getResourceAsStream(resource);
// 创建SQLSessionFactory对象
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
// 创建SqlSession对象
SqlSession sqlSession = factory.openSession();
Student student = new Student();
student.setSname("ZhouBa");
student.setAge("21");
student.setCourse("Java");
// 调用SqlSession对象的insert()方法执行插入
int result = sqlSession.insert("student.addStudent", student);
if (result > 0) {
System.out.println("成功插入" + result + "条数据");
} else {
System.out.println("插入操作失败");
}
// 提交事务
sqlSession.commit();
// 关闭SqlSession
sqlSession.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
TestDelete.java
package com.qfedu.test;
import java.io.*;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.*;
public class TestDelete {
public static void main(String[] args) {
// 读取配置文件
String resource = "mybatis-config.xml";
try {
InputStream in = Resources.getResourceAsStream(resource);
// 创建SQLSessionFactory对象
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
// 创建SqlSession对象
SqlSession sqlSession = factory.openSession();
// 调用SqlSession对象的delete()方法执行删除
int result = sqlSession.delete("student.deleteStudent", 7);
if (result > 0) {
System.out.println("成功删除" + result + "条数据");
} else {
System.out.println("删除操作失败");
}
// 提交事务
sqlSession.commit();
// 关闭SqlSession
sqlSession.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
TestFindBySid.java
package com.qfedu.test;
import java.io.*;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.*;
import com.qfedu.pojo.Student;
public class TestFindBySid {
public static void main(String[] args) {
// 读取配置文件
String resource = "mybatis-config.xml";
try {
InputStream in = Resources.getResourceAsStream(resource);
// 创建SQLSessionFactory对象
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
// 创建SqlSession对象
SqlSession sqlSession = factory.openSession();
// 调用SqlSession对象的selectOne()方法执行查询
Student student = sqlSession.selectOne("student.findStudentBySid", 1);
System.out.println(student.toString());
// 关闭SqlSession
sqlSession.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
TestFindBySname.java
package com.qfedu.test;
import java.io.*;
import java.util.List;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.*;
import com.qfedu.pojo.Student;
public class TestFindBySname {
public static void main(String[] args) {
// 读取配置文件
String resource = "mybatis-config.xml";
try {
InputStream in = Resources.getResourceAsStream(resource);
// 创建SQLSessionFactory对象
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
// 创建SqlSession对象
SqlSession sqlSession = factory.openSession();
// 调用SqlSession的selectList()方法执行查询
List<Student> selectList = sqlSession.selectList("student.findStudentBySname", "ZhangSan");
for (Student student : selectList) {
System.out.println(student.toString());
}
// 关闭SqlSession
sqlSession.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
TestUpdate.java
package com.qfedu.test;
import java.io.*;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.*;
import com.qfedu.pojo.Student;
public class TestUpdate {
public static void main(String[] args) {
// 读取配置文件
String resource = "mybatis-config.xml";
try {
InputStream in = Resources.getResourceAsStream(resource);
// 创建SQLSessionFactory对象
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
// 创建SqlSession对象
SqlSession sqlSession = factory.openSession();
Student student = new Student();
student.setSid(3);
student.setSname("WuJiu");
student.setCourse("Python");
// 调用SqlSession对象的update()方法执行更新
int result = sqlSession.update("student.updateStudent", student);
if (result > 0) {
System.out.println("成功更新" + result + "条数据");
} else {
System.out.println("更新操作失败");
}
// 提交事务
sqlSession.commit();
// 关闭SqlSession
sqlSession.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
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>
<!--配置环境 -->
<environments default="mysql">
<environment id="mysql">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/chapter01" />
<property name="username" value="root" />
<property name="password" value="012345" />
</dataSource>
</environment>
</environments>
<!-- 配置映射文件的位置 -->
<mappers>
<mapper resource="com/qfedu/mapper/StudentMapper.xml" />
</mappers>
</configuration>