3. 选择main右键 New---》Directory 选择java和resourcejunit junit4.11 test mysql mysql-connector-java5.1.47 org.mybatis mybatis3.5.7
4.选择建的Maven文件再冲里面新建Maven 选择Maven打上对√,选择archetype-webapp,--》finish应用 1~!设置类加载:
package com.util;
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 java.io.IOException;
import java.io.InputStream;
public class baseDaoUtil {
private static SqlSessionFactory sessionFactory;
//当类记载时
static{
String resource = "mybatis-config.xml";
InputStream inputStream = null;
try {
inputStream = Resources.getResourceAsStream(resource);
sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
//获取SqlSession对象
public static SqlSession getSqlSession(){
return sessionFactory.openSession();
}
}
2.增删改查方法
package com.yhzz.dao;
import com.yhzz.pojo.User;
import org.apache.ibatis.annotations.Param;
import java.util.List;
//就是UserDao,就是换了名字
public interface UserMapper {
//查 查询所有的用户结果集
List queryListUser();
User queryById(int id);
//删 按id删除 @Param("id")多个参数必须加
int deleteByid(@Param("id")int id);
//增 增加一个对象
int addUser(User user);
//改 修改
int updateUser(User user);
}
3. 设置有参函数
package com.yhzz.pojo;
public class User {
private int id;
private String userName;
private String pwd;
//两个参数的有参构造,测试主键自增
public User(int id){
this.id = id;
}
public User(String userName,String pwd){
this.userName = userName;
this.pwd = pwd;
}
//三个数的有参构造
public User(int id, String userName, String pwd) {
this.id = id;
this.userName = userName;
this.pwd = pwd;
}
public User() {
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
4. 设置结果集
5.连接数据库配置
6.test测试方法
package com.yhzz.dao;
import com.util.baseDaoUtil;
import com.yhzz.pojo.User;
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.Test;
import javax.sound.midi.Soundbank;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
public class UserMapperTest {
//查
@Test
public void queryListUser(){
//连接数据库
//执行sql
//处理结果集
try {
//mybatis-com.xml配置文件路径
String resource = "mybatis-config.xml";
//将配置文件加载到输入流
InputStream inputStream = Resources.getResourceAsStream(resource);
//获取sqlSessionFactory对象
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//获取申请了Session对象,连接数据库
SqlSession sqlSession = sessionFactory.openSession();
//获取UserMapper对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
//调用方法,执行sql
List users = userMapper.queryListUser();
//处理结果集
for(User user:users){
System.out.println(user.getUserName());
}
//关闭sqlSession
sqlSession.close();
} catch (IOException e) {
e.printStackTrace();
}
};
@Test
public void queryById(){
//获取SQLSession
SqlSession sqlSession = baseDaoUtil.getSqlSession();
//获取UserMapper对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
//调用查询方法
User user = userMapper.queryById(1);
System.out.println(user.getUserName());
//关闭资源
sqlSession.close();
};
//删
@Test
public void deleteByid(){
//获取申请了Session
SqlSession sqlSession = baseDaoUtil.getSqlSession();
//获取UserMapper对象
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
//调用方法执行
int rows = mapper.deleteByid(2);
System.out.println("删除了"+rows+"行");
//增删改必须手动提交事务
sqlSession.commit();
//关闭资源
sqlSession.close();
}
//增
@Test
public void addUser(){
SqlSession sqlSession = baseDaoUtil.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
int rows = mapper.addUser(new User(6,"张三","132"));
System.out.println("新增数量"+rows);
//事务
sqlSession.commit();
//关闭数据库
sqlSession.close();
}
//改
@Test
public void update(){
SqlSession sqlSession = baseDaoUtil.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
User us = mapper.queryById(4);
us.setUserName("阮六军");
us.setPwd("ps");
sqlSession.commit();
sqlSession.close();
System.out.println("修改成功:"+us.getUserName()+us.getPwd());
}
}
pox.xml配置文件
4.0.0 org.example mybatis-study1.0-SNAPSHOT mybatis01 mybatis02 pom mybatis-study Maven Webapp http://www.example.com UTF-8 1.7 1.7



