概述
声明:本博客为本人学习笔记,由于本人能力有限,可能会出现各种问题,欢迎朋友们指正,谢谢!
一、环境的搭建
1.打开IDEA,创建一个maven项目,给artifactId和groupId命名。
2.创建完成后,会弹出pom.xml的界面,我们需要导入mybatis、mysql、junit的依赖。
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.3</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.20</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
二、创建一个module
1.删除src包,新建一个module,命名为mybatis,此时我们会发现在mybatis下面的pom.xml中出现了如下代码,意思是此pom.xml是继承了导入依赖的xml的所有的配置,这就是删除src包的原因。
<parent>
<artifactId>com.mybatislearnblog01</artifactId>
<groupId>org.example</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
2.打开Navicat,创建一个新的查询,在数据库mybatis里建立一个新的表user1。
CREATE TABLE `user1` (
`id` int(11) NOT NULL auto_increment,
`username` varchar(32) NOT NULL COMMENT '用户名称',
`sex` char(1) default NULL COMMENT '性别',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
insert into `user1`(`id`,`username`,`sex`) values (41,'老王','男'),(42,'小二王','女'),(43,'王小二','女');
select * from user1;
3.在resources下面新建一个mybatis-config.xml,编辑系统的核心设置。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>
此处的mapper resource我们先不设置,把上面的driver,url,user,password更改了,是用来和本地的数据库相连接的,连接到数据库mybatis.
4.编写Mybatis工具包,是为了将创建SqlsessionFactory以及Sqlsession的获取整合,方便以后直接调用。在main包下新建com.mybatislearn包,在这个包下新建utils包,在此包下新建mybatisUtils.class,
public class mybatisUtils {
//1.使用mybatis第一步,获取SqlSessionFactory
private SqlSessionFactory sqlSessionFactory;
InputStream inputStream;
{
try {
String resource = "mybatis-config.xml";//指定mybatis核心配置文件的位置
inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
//既然有了 SqlSessionFactory,顾名思义,我们可以从中获得SqlSession的实例。SqlSession提供了在数据库执行SQL命令所需的所有方法。
public SqlSession getSqlsession() {
return sqlSessionFactory.openSession();
}
}
三、编写代码
1.在com.mybatislearn包下面新建一个pojo包,里面创建一个user.class,用来编写用户的成员变量和方法。
public class user {
//注意成员变量的命名要和数据库里的表的一致
private Integer id;
private String username;
private String sex;
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 String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public user() {
}
public user(Integer id, String username, String sex) {
this.id = id;
this.username = username;
this.sex = sex;
}
@Override
public String toString() {
return "user{" +
"id=" + id +
", username='" + username + ''' +
", sex='" + sex + ''' +
'}';
}
}
2.在com.mybatislearn包下新建一个mapper包,包里新建userMapper.interface,写入方法getUserList()
public interface userMapper {
public List<user> getUserList();
}
3.在mapper包里新建一个userMapper.xml,相当于我们以前学过的实现类,用来实现接口中的方法
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- namespace 绑定一个Mapper接口 -->
<mapper namespace="com.mybatislearn.mapper.userMapper">
<!-- 实现接口中的方法 -->
<!-- id为接口中的方法名称,resultType为返回值类型-->
<select id="getUserList" resultType="com.mybatislearn.pojo.user">
select * from user1
</select>
</mapper>
4.在上面的mybatis-config.xml中我们提到了mapper resource先不设置,现在可以对它进行修改
<!-- 每一个mapper.xml都需要在Mybatis核心配置文件中注册,注意此处是用/分隔的 -->
<mappers>
<mapper resource="com/mybatislearn/mapper/userMapper.xml"/>
</mappers>
四、进行测试
1.在pom.xml中加入如下代码,是为了防止资源导出失败,可以在每一个maven里加入此代码
<!--在build中配置resources,防止资源导出失败问题,所有maven都要加 -->
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</resource>
</resources>
</build>
2.在test.java包中新建com.mybatislearn.mapper包,包里新建userMapperTest.class
@Test
public void test(){
SqlSession sqlsession = new mybatisUtils().getSqlsession();
userMapper mapper = sqlsession.getMapper(userMapper.class);
List<user> userList = mapper.getUserList();
System.out.println(userList);
}
输出结果如下:
至此,我们已经实现了Mybatis的简单环境搭建以及查询操作。
最后
以上就是酷炫夏天为你收集整理的Mybatis学习笔记1——环境的搭建及数据库查询操作声明:本博客为本人学习笔记,由于本人能力有限,可能会出现各种问题,欢迎朋友们指正,谢谢!一、环境的搭建二、创建一个module三、编写代码四、进行测试的全部内容,希望文章能够帮你解决Mybatis学习笔记1——环境的搭建及数据库查询操作声明:本博客为本人学习笔记,由于本人能力有限,可能会出现各种问题,欢迎朋友们指正,谢谢!一、环境的搭建二、创建一个module三、编写代码四、进行测试所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复