- 1.类型别名
- 2.结果集映射ResultMap
- 3.mybatis使用步骤
注意:接口和它的Mapper配置文件最好同名,在同一包下
UserMapper.xml就可以直接用User了
2.结果集映射ResultMapselect * from mybatis_study.user where id= #{id};
主要用于解决属性名与数据库表中字段不一致
实体类属性
表字段
运行结果
解决方法:
resultMap结果集映射
UserMapper.xml
.
1.导入mysql驱动和mybatis、lombok依赖
mysql mysql-connector-java8.0.27 org.mybatis mybatis3.5.7 org.projectlombok lombok1.18.20 provided
2.编写mybatis-config.xml配置文件
3.db.properties文件
driver=com.mysql.cj.jdbc.Driver url=jdbc:mysql://localhost:3306/mybatis_study?serverTimezome=UTC username=root password=123456
4.工具类utils下的MybatisUtil.Java
public class MybatisUtil { private static SqlSessionFactory factory; static{ try { //1.读取配置文件 InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml"); //2.创建SqlsessionFactory工厂 factory = new SqlSessionFactoryBuilder().build(inputStream); } catch (IOException e) { e.printStackTrace(); } } public static SqlSession getSqlSession(){ //3.使用工厂生产sqlsession对象 return factory.openSession(); } }
5.pojo实体类User.java
@Data public class User{ private Integer id; private String name; private String sex; private String address; }
6.对应Mapper接口
public interface UserMapper { //查询全部用户 ListfindAll(); //根据ID查找 User getUserId(int id); //添加用户 int addUser(User user); //更新用户 int updateUser(User user); //删除用户 int deleteUser(int id); }
7.对应的Mapper.xml文件
8.测试类
//查询所有 @Test public void TestList(){ SqlSession session = MybatisUtil.getSqlSession(); UserMapper userMapper = session.getMapper(UserMapper.class); Listlist = userMapper.findAll(); for (User user : list) { System.out.println(user); } //释放资源 session.close(); } //根据ID查询 @Test public void getUserId(){ SqlSession session = MybatisUtil.getSqlSession(); UserMapper mapper = session.getMapper(UserMapper.class); User userId = mapper.getUserId(41); System.out.println(userId); session.close(); } //添加 *** 作,增删改都需要提交事务 @Test public void addUser(){ SqlSession session = MybatisUtil.getSqlSession(); UserMapper mapper = session.getMapper(UserMapper.class); mapper.addUser(new User(3, "小哈", "男", "新乡市")); //提交事务 session.commit(); session.close(); } //更新 *** 作 @Test public void updateUser(){ SqlSession session = MybatisUtil.getSqlSession(); UserMapper mapper = session.getMapper(UserMapper.class); mapper.updateUser(new User(3,"小何","女","河南省")); //提交事务 session.commit(); session.close(); } //删除 *** 作 @Test public void deleteUser(){ SqlSession session = MybatisUtil.getSqlSession(); UserMapper mapper = session.getMapper(UserMapper.class); mapper.deleteUser(3); session.commit(); session.close(); }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)