1、创建一个javase项目;
2、新建一个source folder命名为config,专门用来存放配置文件;
3、新建一个folder命名为lib,用来存放jar包,本次搭建只存放了最基础了3个包,分别是mybatis-3.2.7.jar、ojdbc6.jar、log4j-1.2.17.jar。其中,只需要有mybatis.jar和ojdbc.jar就可以让mybatis跑起来。不要忘记buildpath,然后就会出现一个Referenced Libraries,里面放的就是buildpath后的类库了;
4、找一个log4j.properties放到config下,用来显示打印日志的打印信息;
如下图:这样就搭建了一个简易的mybatis环境啦~~~
好下面开始写具体项目内容:
5、在config下创建SqlMapConfig.xml全局配置文件,然后去官方配置文档复制关于全局配置文件的信息,在Getting Started下,然后ctrl+shift+F格式化一下;
我这里为大家将配置文件代码复制到下面,大家按照自己的具体配置进行修改:
<?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="oracle.jdbc.OracleDriver" />
<property name="url" value="jdbc:Oracle:thin:@localhost:1521:ORCL" />
<property name="username" value="scott" />
<property name="password" value="tiger" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper/GoodsMapper.xml" />
</mappers>
</configuration>
6、在src下创建package为pojo包,包下创建Goods类,里面要有基本属性和toString方法,注:不需要写set、get方法,因为mybatis利用的是反射的原理直接操作属性而非set方法,具体可查看mybatis的源码:
7、、在config下创建一个包,我命名为mapper,在mapper下创建一个GoodsMapper.xml文件,然后从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">
<mapper namespace="Goods">
<select id="selById" parameterType="int" resultType="com.test.pojo.Goods">
select * from TestMybatis where id = #{id}
</select>
</mapper>
(注:parameterType的类型为int,但实际会自动转成Integer包装类,且parameterType可以不写,因为在测试中的代码
sqlSession.selectOne("Goods.selById",1)
1,mybatis底层是可以通过反射的方式得到1的类型,所以可不写,另外Sql的结尾千万不要写分号;
#{id}中的id替代的是jdbcSql中“?”占位符的位置,id表示的是占位符的名称,如果写成uid,那么uid就是占位符的名称。)
先给大家看下我的TestMybatis表里数据:
就是这样简单直接。
做到这里,简单的mybatis搭建就已经搭建成功了,下面开始写测试代码。
8、在src下建package,为test包,并创建TestMybatis.jave测试类具体代码及解析如下:
public class TestMybatis {
public static void main(String[] args) throws Exception {
//将全局配置文件以流的形式生成SqlSession
String resource = "SqlMapConfig.xml";
InputStream inputStream = Resources.getResourceAsStream(resource); //将全局配置文件生成InputStream的形式
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); //将IO流生成sqlSessionFactory
SqlSession sqlSession = sqlSessionFactory.openSession(); //使用工厂的openSession()方法生产sqlSession
//使用sqlSession API中的方法执行mapper中的Sql语句
Goods goods = sqlSession.selectOne("Goods.selById",1); //第一个参数是寻找指定的namespace和指定的stement名称
System.out.println(goods);
//提交事务
sqlSession.commit();
//关闭SqlSession
sqlSession.close();
}
}
(注:在GoodsMapper.xml文件中每一个select、delete、update、insert都是一个statement)
运行结果如下:
全程下来我们可以发现,如果想简单吧mybatis运行起来,只需要有mybatis的jar包、ojdbc的jar包、一个全局配置文件、一个mapper配置文件、一个实体类就可以喽。这样简单梳理是不是感觉也很简单,只要把运行思路理清,就剩下扩充具体细节部分了,期待本少女的进一步跟新吧~~~
啦啦啦~~~~~~