MyBatis架构

一.原理: 

  mybatis是支持普通 SQL查询,存储过程和高级映射的优秀持久层的框架,mybatis让程序将主要精力放在sql上,通过mybatis提供的映射方式,自由灵活生成(半自动化,大部分需要程序员编写sql)满足需要sql语句。

  mybatis可以将向 preparedStatement中的输入参数自动进行输入映射,将查询结果集灵活映射成java对象。(输出映射)

  将sql语句配置在xml配置文件中,即使sql变化,不需要对java代码进行重新编译。将sql语句及占位符号和参数全部配置在xml中。


二.架构图


    


  

3.具体实现

  每个MyBatis应用程序主要都是使用SqlSessionFactory实例的,一个SqlSessionFactory实例可以通过SqlSessionFactoryBuilder获得。SqlSessionFactoryBuilder可以从一个xml配置文件或者一个预定义的配置类的实例获得。

  

	//获得SqlSession
	public SqlSession getSqlSession() throws IOException {
		// mybastis配置文件
		String resource = "SqlMapConfig.xml";
		// 得到配置文件流
		InputStream impuStream = Resources.getResourceAsStream(resource);
		// 创建会话工厂
		SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder()
				.build(impuStream);
		// 通过工厂得到sqlSession
		SqlSession sqlSession = sqlSessionFactory.openSession();
		return sqlSession;
	}

  Resources可以方便地从类路径及其它位置加载资源,使用类路径资源(classpath resource),用xml文件构建SqlSessionFactory实例。


四.总结:

  熟悉了架构之后,所有的代码都是在架构的基础上进行的简单操作,更加容易理解  



  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 29
    评论
评论 29
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值