Mybatis
概述
1.Mybatis是一款基于半自动的ORM持久层框架,具有较高的SQL灵活性,支持高级映射(一对一、一对多),动态SQL,但是他的数据库无关性较低,也就是说需要用到数据库Mysql或者Oracle才能进行书写
什么是ORM呢:
Object Relation Mapping,对象关系映射。对象指的就是java对象,关系指的是数据库中的关系模型,对象关系映射,指的就是通过java对象与数据库当中的关系模型之间建立一种关系,一个java类User就是数据库当中的一张User表,然后对应的User类当中的对象就是表中的数据
我们可以来举一个例子
先创建这样一个User类,当中建立了一个人对应的所有信息属性,如下所示:
package com.sangeng.pojo;
import java.io.Serializable;
public class User implements Serializable {
private Integer id;
private String username;
private String password;
private String phone;
private String address;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public Integer getId(){
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
", phone='" + phone + '\'' +
", address='" + address + '\'' +
"}\n";
}
}
然后我们再在一张表中对这些数据进行插入,使得这样的一个表拥有相应的数据,如下代码所示
package com.sangeng;
import com.sangeng.Util.MyBatisUtil;
import com.sangeng.dao.UserDao;
import com.sangeng.pojo.User;
import org.apache.ibatis.session.SqlSession;
public class Test01 {
public static void main(String[] args) {
SqlSession session=null;
try {
session= MyBatisUtil.getSession();
User user=new User();
user.setUsername("刘洋2");
user.setPassword("1232");
user.setPhone("1999.131.18");
user.setAddress("四川省3成都大学");
UserDao userDao=session.getMapper(UserDao.class);
//userDao.insertUser(user);
userDao.insert(user);
session.commit();
} catch