第一个Mybatis程序
核心配置文件mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
编写mybatis工具类
public class MybatisUtils {
private static SqlSessionFactory sqlSessionFactory;
static {
try {
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
public static SqlSession getSqlSession() {
return sqlSessionFactory.openSession();
}
}
编写代码
public class User {
private int id;
private String username;
private String password;
}
//重写方法toString方法等
public interface UserMapper {
List getUserList();
}
接口实现类Mapper配置文件UserMapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
select * from db4.user
public class test {
@Test
public void test1(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
List userList = userMapper.getUserList();
for (User user : userList) {
System.out.println(user);
}
sqlSession.close();
}
}
src/main/resources/
**/*.properties
**/*.xml
true
src/main/java
**/*.properties
**/*.xml
true
CRUD
<?xml version="1.0" encoding="UTF-8" ?>
select *
from db4.user
select *
from db4.user
where id = #{id}
insert into db4.user (id, username, password)
values (#{id}, #{username}, #{password})
update db4.user
set username = #{username},
password = #{password}
where id = #{id};
delete
from db4.user
where id = #{id}
public interface UserMapper {
List getUserList();
User getUserById(int id);
void addUser(User user);
void updateUser(User user);
void deleteUser(int id);
}
public class test {
@Test
public void getUserList_test(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
List userList = userMapper.getUserList();
for (User user : userList) {
System.out.println(user);
}
sqlSession.close();
}
@Test
public void getUserById_test(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
User user = userMapper.getUserById(1);
System.out.println(user);
sqlSession.close();
}
@Test
public void addUser_test(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
userMapper.addUser(new User(66,"zhang", "7777"));
sqlSession.commit();
sqlSession.close();
}
@Test
public void updateUser_test(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
userMapper.updateUser(new User(2,"oooo", "000000"));
sqlSession.commit();
sqlSession.close();
}
@Test
public void deleteUser_test(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
userMapper.deleteUser(10);
sqlSession.commit();
sqlSession.close();
}
}
万能的Map查询
User getUserByMapId(Map map);
select *
from db4.user
where id = #{mapId}
@Test
public void getUserByMapId_test() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
Map map = new HashMap<>();
map.put("mapId", 1);
User user = userMapper.getUserByMapId(map);
System.out.println(user);
sqlSession.commit();
sqlSession.close();
}
模糊查询怎么写
List userlist = mapper.getUserLike("%张%");
select * from db4.user where name like "%"#{value}"%"