1使用intelliJ IDEA+mysql数据库,实现功能:
实现对数据库中students表的查询,插入。(欢迎完善)
2mybatis 相关包
数据库准备:
3.相关准备完备,新建项目 -->hello
整体实例项目如下:
4.新建lib,导入相关jar包
mysql-connector-java-5方便我们实现对数据库的连接
log4j jar包在控制台打印mybatis操作数据库的过程(很重要,但很简单,认真看一下)
5.新建log4j.properties文件,配置log4j
内容:
# Global logging configuration
log4j.rootLogger=DEBUG, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n6.
6.新建student类(实现面向对象编程的思想)、
内容:
7package com.gyf.model;
import java.io.Serializable;
public class student implements Serializable {
public student() {
// TODO Auto-generated constructor stub
}
public student(int id, String sno, String name, int age, String school, String pass) {
this.id = id;
this.sno = sno;
this.name = name;
this.age = age;
this.school = school;
this.pass = pass;
}
private int id;
private String sno;
private String name;
private int age;
private String school;
private String pass;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getSno() {
return sno;
}
public void setSno(String sno) {
this.sno = sno;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSchool() {
return school;
}
public void setSchool(String school) {
this.school = school;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
@Override
public String toString() {
return "student [id=" + id + ", sno=" + sno + ", name=" + name + ", age=" + age + ", school=" + school
+ ", pass=" + pass + "]";
}
}
7.创建sql配置文件(文件名随意)
实现对数据库的连接
内容:
<?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="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/gyf/sqlmap/student.xml"/>
</mappers>
</configuration>
8.创建Mapper.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="selectStudent" resultType="com.gyf.model.student" parameterType="int">
select * from students where id =#{id}
</select>
<select id="selectStudentNanme" resultType="com.gyf.model.student" parameterType="String">
select * from students where name like '%${value}%'
</select>
<insert id="insertData" parameterType="com.gyf.model.student">
insert into students (id,sno,name,age,school,pass)
value (#{id},#{sno},#{name},#{age},#{school},#{pass});
</insert>
</mapper>
9.创建测试类
Demo01:
package test;
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.gyf.model.student;
import org.junit.Test;
public class Demo01 {
@Test
public void test1() throws IOException{
InputStream is=Resources.getResourceAsStream("SqlMapConfig.xml");
SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(is);
SqlSession session=sessionFactory.openSession();
// student user=session.selectOne("selectStudent",2);
// System.out.println(user);
List<student> users=session.selectList("selectStudentNanme","张");
List<student> users2=session.selectList("selectStudentNanme","李");
System.out.println(users2);
session.commit();
}
}
Demo2:
package test;
import com.gyf.model.student;
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 org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
public class Demo2 {
SqlSession session;
@Before
public void before() throws IOException
{
InputStream is= Resources.getResourceAsStream("SqlMapConfig.xml");
SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(is);
session=sessionFactory.openSession();
}
@After
public void after()
{
session.commit();
}
@Test
public void Test()
{
student student3=new student(205,"256","李四",25,"eggr","255");
session.insert("insertData",student3);
}
}
10欢迎测试运行