mybatis入门(一)
开发环境 idea+maven+jdk1.8
- 三个配置文件,mybatis3.4 , mysql-connector-java, log4j 1.27
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
2.三个配置:总的配置文件config.xml和映射文件student.xml还有pojo
config.xml
<configuration>
<environments default="MySQL">
<environment id="MySQL">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="POOLED">
<property name="username" value="root"/>
<property name="password" value="123"/>
<property name="url" value="jdbc:mysql://127.0.0.1:3306/s6x"/>
<property name="driver" value="com.mysql.jdbc.Driver"/>
</dataSource>
</environment>
</environments>
//此处填写映射的配置文件
<mappers>
<mapper resource="com/pojo/student.xml"/>
</mappers>
</configuration>
student.xml
<mapper namespace="com.dao.StudentDAO">
<!--
public List<Student> findAll();查询所有的学生
-->
<select id="findAll" resultType="com.pojo.Student">
select xh,xm,cs,money from student
</select>
<!--
public Student findById(int xh); 根据id查找
#{} ognl表达式
${} el表达式
-->
<select id="findById" parameterType="int" resultType="com.pojo.Student">
select xh,xm,cs,money from student
where xh=#{value}
</select>
<!--
public Student findById(int xh);
#{} ognl表达式
${} el表达式
-->
<select id="findById2" parameterType="int" resultType="com.pojo.Student">
select xh,xm,cs,money from student
where xh=${value}
</select>
</mapper>
student
public class Student implements java.io.Serializable {
private int xh;
private String xm;
private Date cs;
private float money;
public int getXh() {
return xh;
}
public void setXh(int xh) {
this.xh = xh;
}
public String getXm() {
return xm;
}
public void setXm(String xm) {
this.xm = xm;
}
public Date getCs() {
return cs;
}
public void setCs(Date cs) {
this.cs = cs;
}
public float getMoney() {
return money;
}
public void setMoney(float money) {
this.money = money;
}
}
再做一个测试
public class 查所有学生 {
public static void main(String[] args) throws IOException {
// 1.读取总的配置文件
Reader reader = Resources.getResourceAsReader("configxml.xml");
//2.创建session工厂
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader);
//3.打开session
SqlSession session = factory.openSession();
//4.增删改查
List<Student> list = session.selectList("com.dao.StudentDAO.findAll");
for (Student s : list) {
System.out.println(s.getXh()+"\t"+s.getXm());
}
//5.提交事务
session.commit();
//6.关闭session
session.close();
}
}