但凡是框架,使用都是分三步走
1.导入jar文件,用maven导入
2.处理配置文件
3.开发业务代码
1.创建maven项目导入相关依赖
在pom文件中导入MyBatis相关依赖jar文件
安装lombok
在File->Settings Pugins 中安装lombok
要想启动lombok的话还需要在Build,Execution下的Compiler目录中进行勾选,才能正常的使用lombok。那这个lombok有什么样的作用呢?它可以消除Java冗长的代码,用简单注解的形式。
package com.msb.pojo; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; @Data//get set方法 @AllArgsConstructor// 全参构造器 @NoArgsConstructor// 无参构造器 public class Dept implements Serializable { private Integer deptno; private String dname; private String loc; }
2.准备包结构
其中 pojo包放的是数据库中和表格一一对应的实体类
mapper其实是dao层,里面放的curd的实现类
3.准备Mapper映射文件和核心配置文件
resources目录下准备sqlMapConfig.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://127.0.0.1:3306/mydb?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai"/> <property name="username" value="root"/> <property name="password" value="root"/> </dataSource> </environment> </environments> <!--加载mapper映射文件--> <mappers> <mapper resource="com/msb/mapper/DeptMapper.xml"/> </mappers> </configuration>
上面代码最后的加载mapper映射文件 要用/分开 不能用 . 因为是路径名。
resources目录下 创建 com/msb/mapper目录,然后添加DeptMapper.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"> <mapper namespace="aaa"> <!--public List<Dept> findAll(){ }--> <select id="findAll" resultType="com.msb.pojo.Dept" > select * from dept </select> </mapper>
实体类:
package com.msb.pojo; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; @Data//get set方法 @AllArgsConstructor// 全参构造器 @NoArgsConstructor// 无参构造器 public class Dept implements Serializable { private Integer deptno; private String dname; private String loc; }
整体结构是这样的:
为了保证java中的mapper和resources下的Mapper映射文件在编译后打包在一个jar包中,在resources下创建和java包中一样的分级目录,注意!!!! 在resources中创建分级包的话 不能直接com.msb.mapper这样创建,这样IDE会识别成一个包,要现在resources中创建一个com包,再在这个com上创建一个msb包,形成com.msb包,最后在com.msb包上创建一个mapper包,形成com.msb.mapper包这样就可以了。