今天重新返回来看自己的mybatis,总结了一些更好入门的办法,下面用最简单的方法带领大家入门。
此处先引入类包的关系图片
1.构建一个==普通==maven项目
构建好之后向pom.xml添加一下依赖
jar
org.mybatis
mybatis
3.5.2
mysql
mysql-connector-java
8.0.15
log4j
log4j
1.2.17
junit
junit
4.12
2.创建数据库,并创建好实体类
/**
*@author xiaoxie
*@date
*@return mybaits 入门
*/
//实体类需要跟表明一致
public class User {
private Integer id;
private String username;
private Date birthday;
private String sex;
private String address;
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;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", birthday=" + birthday +
", sex='" + sex + '\'' +
", address='" + address + '\'' +
'}';
}
}
==切记实体类与数据库相互对应==
3.创建一个dao
==这里我们先弄明白最简单的查询==
/**
*@author xiaoxie
*@date
*@return
* 用户持久层接口
*/
public interface UserDao {
// 查询所有
@Select(select * from user)
List findAll();
}
4.在resources
文件夹下面建立一个与一个mybatis-Config.xml
内容如下
这里讲解一一下里面的关系和作用
1.约束文件--可以直接从网上复制粘贴
- mybatis主配置文件--相当于最外层的一个容器,所有的事务活动都在里面
xxxxxx
- 配置环境 ---相当于启动的准备
......xxxxx
4.配置mysql的环境 --配置mysql的类型
==注意== environment 的id必须与environments的 defualt相同
xxxxx
5.配置事务类型 --默认为jdbc
6.配置数据源
xxxx常用的url username passsword即可
7.映射地址
注意:1.采用xml的格式需要用resources指定映射文件位置
2.采用注解的方法则用class指定映射文件位置
4.在resources下面创建与类相同的dao包,并在dao包下面创建映射文件UserDaoMapper.xml
注意:
1.约束文件--可以直接从网上复制粘贴
2.mapper文件都以mapper进行配置 namespaces是指定我们的dao层中的具体接口,有了它,就能够识别是哪一个dao被调用。
3.接下来就是写出语法
xml
警告:id是接口中定义的方法。
resultType是指定的实体类
测试
public class MybatisTest {
public static void main(String[] args ){
// 1.读取配置文件
try {
InputStream in = Resources.getResourceAsStream("mybatis-Config.xml");
// 2.创建SqlSessionFactory工厂
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
SqlSessionFactory factory = builder.build(in);
// 3.使用工厂产生SqlSession对象
SqlSession sqlSession = factory.openSession();
// 4.使用SqlSession创建Dao接口代理对象
UserDao userDao = sqlSession.getMapper(UserDao.class);
// 5.使用代理对象执行方法
List users = userDao.findAll();
for (User user : users){
System.out.println("对象有:"+user);
}
// 6.释放资源
sqlSession.close();
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}