Mybatis
Posted 兴贤博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis相关的知识,希望对你有一定的参考价值。
User.java类
定义数据属性:
形参:
public class User {
private int id;
private String username;
private Date birthday;
private String sex;
private String address;
public User()
{
super();
}
public User(String username, Date birthday, String sex, String address){
this.username = username;
this.birthday = birthday;
this.sex = sex;
this.address = address;
}
App.java
编写测试类:
public class App {
public static void main(String[] args){
//解析全局配置文件
String resource = "mybatis-config.xml";//全局配置文件的路径(相对于src的路径)
try {
InputStream inputStream =Resources.getResourceAsStream(resource);
//输入流实例通过getResourceAsStream()获取配置文件
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//SqlSessionFactory实例可以通过 SqlSessionFactoryBuilder 获得
//调用Dao层接口方法完成SQL执行
SqlSession sqlSession = sqlSessionFactory.openSession();
//从 SqlSessionFactory 中获取 SqlSession
//shift+alt+1
UserDao userdao = sqlSession.getMapper(UserDao.class);
//SqlSession 实例来直接执行已映射的 SQL 语句
//获取相应接口实现类的类对象
List<User> ulist = userdao.getAll();
System.out.println(ulist);
}catch(Exception e) {
e.printStackTrace();//try catch进行异常错误处理
}
}
}
操作
根据主键查询
1.UserDao.xml映射文件
2.UserDao.java接口方法
User getUserById(int uid);
3.App2.java
public class App2 {
UserDao userDao;//创建全局变量
SqlSession sqlSession;//创建全局变量
public void setup() throws IOException {
String resource = "mybatis-config.xml";
InputStream inputStream =Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
sqlSession = sqlSessionFactory.openSession();
userDao = sqlSession.getMapper(UserDao.class);
}
根据主键保存
1.UserDao.xml映射文件
2.UserDao.java接口方法
int saveUser(User user);
3.App2.java
public void saveUser() {
User user = new User("搜索",new Date(),"男","北京");
int i = userDao.saveUser(user);
sqlSession.commit(); //提交
System.out.println(user);//输出打印user表中数据
}
根据主键更新
1.UserDao.xml映射文件
2.UserDao.java接口方法
int updateUser(User user);
3.App2.java
public void update() {
User user = new User();
user.setId(1);
user.setSex("男");
user.setUsername("天天");
userDao.updateUser(user);
sqlSession.commit();
}
根据主键删除
1.UserDao.xml映射文件
2.UserDao.java接口方法
int getDeleteById(User user);
3.App2.java
public void getDeleteById() {
User user = userDao.getUserById(1);
int i = userDao.getDeleteById(user);
sqlSession.commit();
System.out.println(user);
}
以上是关于Mybatis的主要内容,如果未能解决你的问题,请参考以下文章
SSM-MyBatis-05:Mybatis中别名,sql片段和模糊查询加getMapper
MYBATIS05_ifwherechoosewhentrimsetforEach标签sql片段