流程
首先前置工作是下载安装musql,进idea连接mysql
打开IDE
新建项目选中maven
设置好项目名称后来到工作台
现在我们来到navicat新建一个数据库用于框架练习
我们新导入四个依赖,分别是mybatis框架,mysql配置文件,log4j日志,junit单元测试,前两者是必须的,后两者是附加的。
<dependencies> <dependency> <groupId>org.mybatisgroupId> <artifactId>mybatisartifactId> <version>3.4.5version> dependency> <dependency> <groupId>mysqlgroupId> <artifactId>mysql-connector-javaartifactId> <version>5.1.6version> dependency> <dependency> <groupId>log4jgroupId> <artifactId>log4jartifactId> <version>1.2.12version> dependency> <dependency> <groupId>junitgroupId> <artifactId>junitartifactId> <version>4.10version> dependency> dependencies>
导入成功后在外部库能看到四个jar包
这就是maven工程的好处,统一规划好配置包了,你只需要输入依赖idea就能从中央仓库自动下载所需要的包。
接下来我们创建java的实体类,我们创建一个User类继承Serializable,序列化接口我们学过,实现了Serializable接口的类可以被ObjectOutputStream转换为字节流,同时也可以通过ObjectInputStream再将其解析为对象。
现在我们将User实体类的成员变量做到和数据库表的字段一致:
生成他们的set和get方法,还有全部成员变量的tostring
因为在操作数据库的时候我们基于dao接口操作,于是我们定义一个dao接口,创一个dao包统一放dao接口
然后在resources目录下创一个xml文件,文件名自己起
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">
然后就开始我们的配置工作,记得url的结尾是数据库名
<configuration> <environments default="mysql"> <environment id="mysql"> <transactionManager type="JDBC">transactionManager> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/eesy_mybatis"/> <property name="username" value="root"/> <property name="password" value="123456"/> dataSource> environment> environments> <mappers> <mapper resource="com/itheima/dao/IUserDao.xml"> mappers> configuration>
然后我们在resources目录创一个IUserDao.xml,路径和IUserDao接口一样,拷贝如下配置代码
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">
然后写入我们的sql方法,方法名和IUserDao里面的方法名一样,叫findAll
<mapper namespace="com.itheima.dao.IUserDao"> <select id="findAll"> select * from user select> mapper>
至此mybatis的环境搭建到此告一段落。
8.5/00:23:20——所谓觉悟,就是在漆黑的荒野上开辟出一条理当前进的光明大道。