第一个Mybatis程序

具体可参考官方中文文档!!!!!!

第一步:搭建环境

搭建数据库:

这里我创建的是

  

新建项目:

1.新建一个普通maven项目·

2.删除src目录

3.导入依赖:

<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependencies>

第二步:创建一个模块

新建一个模块是上面项目的子工程。

1.编写mybatis核心配置文件:

  在resources中创建创建一个xml文件。我这里命名为mybatis-config.xml。复制官方文档中的配置文件

<configuration>                 
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/luo/dao/UserMapper.xml"/>
</mappers>
</configuration>

填写url需要连接数据库。注意如果在连接数据库出现Server returns invalid timezone.Go to 'Advanced' tab and set 'serverTimezone' property manually.

则需更改时区。

 

2.编写mybatis工具类

 

第三步:编写代码

1.编写实体类

2.编写dao接口

3.接口实现类转换为一个Mapper配置文件

namespace中的包名要和Dao/mapper接口中的包名一致!

 

id就是对应的namespace中的方法名

resultType就是Sql语句执行的返回值

parameterType就是方法的参数类型

 

第四步:测试

 测试中的注意点:1.接口实现类也就是转化了的Mapper配置文件一定要在mybatis核心配置文件中注册;

          

        2.资源过滤问题,在测试中可能会找不到我们的接口实现类也就是转化了的Mapper配置文件,

             在父项目和子项目的pom.xml添加如下配置,以便能导出配置文件。

        3.在测试增删改时要提交事务sqlSession.commit();(在工具类中,设置                             return  SqlsessionFactory.openSession(true));可自动提交事务   

<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>

模糊查询:

 

posted on 2022-04-11 18:35  键盘敲烂的朱  阅读(22)  评论(0编辑  收藏  举报