【Mybaits】01概述

1.学习安排

四天
day1:mybaits入门
	    mybaits概述
	    mybatis的环境搭建
	    mybatis入门案例
	    自定义mybatis框架(主要目的是了解mybatis中执行细节)

day2:
         mybatis基本使用
		 mybatis的单表crud操作
		 mybatis的参数和返回值	设置
		 mybatis的dao编写
		 mybatis配置的细节(几个标签的使用)

day3:
		mybatis深入和多表
		mybatis连接池的使用
		mybatis事务控制和设计方法
		mybatis多表查询(一对多、多对多)
				
day4:mybatis缓存和注解开发
		 mybatis中加载时机(查询时机)
		 Mybatis的一级缓存和二级缓存
		 mybatis注解开发(单表CRUD 和 多表查询)

2.三层架构和SSM框架的对应关系

三层架构
表现层:展示数据
业务层:处理业务需求
持久层:和数据库交互
在这里插入图片描述
对应关系
MyBaits:持久层框架,和数据库交互
Spring:不属于任何层,提供IOC和AOP支持
Spring MVC框架:表现层框架

3.JDBC操作数据库的问题

1.持久层技术解决方案

JDBC技术:
	Connection
	PreparedStatement
	ResultSet
Spring的JdbcTemplate:
	Spring中对jdbc简单封装
Apache的DBUtils:
	和Spring的JdbcTemplate很像

以上都不是框架;
JDBC是规范
jdbcTemplate和DBUtils都是工具类

2.jdbc代码回顾

public static void main(String[] args){
	Connection connection = null;
	PreparedStatement preparedStatement = null;
	ResultSet resultSet = null;
	try{
		Class.forName("com.mysql.jdbc.Driver");
		connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8","root","root");
		String sql = "select * from user where name = ?";
		preparedStatement = connection.prepareStatement(sql);
		resultset = preparedStatement.executeQuery();
		
		while(resultSet.next()){
			System.out.println(resultSet.toString());
		}
	}catch(Exception e){
		e.printStackTrace();
	}finally{
		//释放资源
	}
}

jdbc存在的问题
在实际业务开发中,我们只关注Sql语句,而jdbc中我们需要准备很多东西,注册驱动、创建各种类、封装对象、释放资源等等。
因此Mybatis能够将这些繁琐的操作封装起来

4.Mybatis框架概述

	持久层框架,java编写
	封装了jdbc操作的很多细节,仅需关注sql本身,无需关注链接等复杂过程
	利用ORM思想实现了结果集的封装;

ORM

  • Object Relational Mapping
  • 将数据库表和实体类的属性对应起来;
  • 通过操作实体类实现操作数据库表
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值