初探MyBatis(一)

1. 所需文件
引入两个jar包,记住我们建立的是普通java项目,要build path
在这里插入图片描述
放在src下面的mybatis-config.xml文件:注意包头,固定写法,后缀是config,注意结构.

<?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="dev">
 <environment id="dev">
   <transactionManager type="JDBC"></transactionManager>
	<dataSource type="POOLED">
		<property name="driver" value="com.mysql.jdbc.Driver" />
		<property name="url" value="jdbc:mysql://localhost:3306/student_test" />
		<property name="username" value="root" />
		<property name="password" value="123456" />
	</dataSource>
 </environment>
</environments>
<mappers>
<mapper resource="com/zlt/mapper/StudentMapper.xml"/>
<mapper class="com.zlt2.entity.Student"/>
</mappers>
</configuration>

2.各层级
1.建立一个三个字段的实体

public class Student {
	private int stuId;
	private String stuName;
	private int age;
	public int getStuId() {
		return stuId;
	}
	public void setStuId(int stuId) {
		this.stuId = stuId;
	}
	public String getStuName() {
		return stuName;
	}
	public void setStuName(String stuName) {
		this.stuName = stuName;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public Student(){}
	public Student(int stuId, String stuName, int age) {
		super();
		this.stuId = stuId;
		this.stuName = stuName;
		this.age = age;
	}
	@Override
	public String toString() {
		return "Student [stuId=" + stuId + ", stuName=" + stuName + ", age=" + age + "]";
	}
}

2.dao层(注意是接口)

public interface StudentDao {
	public List<Student> showAll();
	public Student findById(Integer id);
}

3.mapper(这是一个包,里面放xml文件,注意也要包头,后缀是mapper)

<?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.zlt.dao.StudentDao">
	<select id="showAll" resultType="com.zlt.entity.Student">
		 SELECT * from student
	</select>
	<select id="findById"  parameterType="int" resultType="com.zlt.entity.Student">
	 SELECT * from student where stuId = #{id}
	</select>
</mapper>

4.测试类()

public class test1 {
	public static void main(String[] args) throws IOException {
		//1.建立一个流,用resourcesde的方法读取总的mybatis-config.xml配置文件
		InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
		//2.SqlSessionFactoryBuilder读取全局配置配置文件,得到数据源信息,创建连接工厂
		//SqlSessionFactory 连接工厂
		SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
		//3.SqlSession 数据库连接,完成一次数据库的访问和结果的映射
		SqlSession session = factory.openSession();//如果里面写了参数true,则不用第六步
		//4.建立一个dao
		StudentDao sd = session.getMapper(StudentDao.class);
		//4.使用dao层里面的方法
		//System.out.println(sd.showAll());
		System.out.println(sd.findById(10));
		//5.事务提交
		session.commit();
		//6.关闭
		session.close();
		
	}
}

猜你喜欢

转载自blog.csdn.net/qq_39556552/article/details/84628137