mybatis之芝麻开门

话不多说直接开搞,把mybatis的环境搭起来,弄一个简单的查询。

mybatis jar包下载地址:https://github.com/mybatis/mybatis-3

我下的是3.4.1版本的,解压后里面有个mybatis-3.4.1.jar的文件这个是要用的,很轻量级一个jar就搞定。还有lib目录里面会一些,但这些都不是必须要用的,是一些扩展的依赖。


在mySql数据库中创建一个表,同时插入了一条数据


接着就可以创建java project了


创建后首先导入我们需要的jar包,为了能把日志打印出来建议把log4j导入,最后一个是mysql的驱动包也得导入。

然后创建log4j.xml配置文件,根据数据库字段创建pojo,db.properties(数据库连接配置文件)这些都不是重点,就不贴图了。

重点是其他几个文件,首先来说我们的mybaties-config.xml,这是mybatis的全局配置文件,程序会把它当作资源通过

SqlSessionFactoryBuilder来创建我们的sqlSession会话,每一个sqlSession就是一次连接,生命周期是由mybatis自动管理的

它是暴露给我们用户的,通过sqlSession就可以调用增删改等操作了。这些是从官方文档里拿过来的,

<?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>
	<!-- 这是将数据库连接信息加入配置 -->
	<properties resource="db.properties"></properties>

	<environments default="development">
	  <environment id="development">
	    <transactionManager type="JDBC"/>
	    <dataSource type="POOLED">
	      <!-- 从我们的db.properties中取值 -->
	      <property name="driver" value="${db.driver}"/>
	      <property name="url" value="${db.url}"/>
	      <property name="username" value="${db.namme}"/>
	      <property name="password" value="${db.password}"/>
	    </dataSource>
	  </environment>
	</environments>
	<!-- 这是管理我们sql映射文件, mybatis-config.xml文件可以说是mybatis的入口
		很多配置都需要在这里面配置,当然以后跟spring整合后很多东西就可以交给我spring管理-->
	<mappers>
	  <mapper resource="EmployeeMapper.xml"/>
	</mappers>
</configuration>

下面来创建sqlSession

public class MybatisTest {

@Test
public void test() throws Exception {
    String resource = "mybatis-config.xml";
    //加载全局配置文件
    InputStream inputStream = Resources.getResourceAsStream(resource);
    //创建session工厂
    SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
    //通过工厂创建sqlSession会话
    SqlSession sqlSession = sqlSessionFactory.openSession();
    //用会话对象进行查询,这里通过参数1(namespace+sql语句的唯一标识)来定位我要查的是哪个sql文件的哪个查询。
    //参数2:表示要传的参数
    Employee e = sqlSession.selectOne("com.luohp.mybatis.bean.Employee.findEmp", 1);
    System.out.println(e.toString());
    //记得关闭
    sqlSession.close();
    }
}

最后还得创建sql映射文件EmployeeMapper.xml,平时开发mybatis这块儿大部分时间都是在捣鼓这些,里面就写了我们的sql

语句。

<?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:命名空间,这里可以随便起个名字。但如果采用的是接口的映射方式这里必须是mapper接口的全限定名,不然没法映射。
id:唯一标识
parameterType:参数的类型
resultType:返回值的类型
#{id}:取值(传过来的参数)
 -->
<mapper namespace="com.luohp.mybatis.bean.Employee">
  <select id="findEmp" parameterType="int" resultType="com.luohp.mybatis.bean.Employee">
    select * from tbl_employee where id = #{id}
  </select>
</mapper>

然后就可以运行我们的测试代码,根据打印出来信息来看,已经正确的执行了。












  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值