需要导入三个包(数据库连接驱动,mybatis,Junit)
创建父模块选择普通maven项目,删除src目录
<dependencies> <!--MySQL驱动--> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.22</version> </dependency> <!--mybatis--> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.0</version> </dependency> <!--Junit可用于单元测试--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> </dependencies>
创建一个子模块
编写mybatis核心配置文件
<?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代表核心配置文件--> <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? userSSL=true&useUnicode=true &characterEncoding=utf-8"/> <property name="username" value="连接数据库用户名"/> <property name="password" value="连接数据库用户密码"/> </dataSource> </environment> </environments> <!--每一个mapper.xml都需要在mybatis核心配置文件中注册--> <mappers> <mapper resource="com/pzl/dao/UserMapper.xml"/> </mappers>
</configuration>
编写mybatis工具类
<?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=绑定一个对应的UserDao(Mapper)接口--> <mapper namespace="com.pzl.dao.UserDao"> <!-- namespace=绑定一个对应的UserDao(Mapper)接口, 相当于是这个接口的实现类 --> <select id="getUserList" resultType="com.pzl.pojo.User"> select *from mybatis.users </select> </mapper>
Cause: java.sql.SQLException: The server time zone value ’ й ʱ ’ is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
出现该问题的情况:使用idea工具,利用mybatis去操作数据库的时候出现的时区错误,我们只需要在mybatis的配置文件中的连接池的url的后面加上 ?serverTimezone=UTC
出现1 字节的 UTF-8 序列的字节 1 无效
解决方法:把xml的encoding属性值UTF-8改为UTF8
<!--在build中配置resources,来防止我们资源导出失败的问题--> <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>