框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。 前者是从应用方面而后者是从目的方面给出的定义。 简而言之,框架是软件(系统)的半成品,框架封装了很多的细节,使开发者可以使用简单的方式实现功能,大大提高开发效率。框架要解决的问题
框架要解决的最重要的一个问题是技术整合的问题,在 J2EE 的 框架中,有着各种各样的技术,不同的软件企业需要从J2EE 中选择不同的技术, 这就使得软件企业最终的应用依赖于这些技术,技术自身的复杂性和技术的风险性将会直接对应用造成冲击。 而应用是软件企业的核心,是竞争力的关键所在,因此应该将应用自身的设计和具体的实现技术解耦。 这样,软件企业的研发将集中在应用的设计上,而不是具体的技术实现,技术实现是应用的底层支撑,它不应该直接对应用产生影响。MyBatis入门 快速体验
模拟需求:使用mybatis查询用户表中的所有用户信息 思路(通过maven构建一个java项目): 1,依赖 mysql驱动依赖 mybatis依赖 lombok依赖 junit依赖 2,配置 核心配置文件 映射配置文件 3,代码编写 dao层接口(接口类的完全限定名与对应mapper的xml文件路径要一致) 4,测试 使用junit进行功能测试开始操 1,引入依赖
2,dao层接口开发mysql mysql-connector-java org.mybatis mybatis org.projectlombok lombok junit junit test
package com.hugo.dao;
import com.hugo.pojo.User;
import java.util.List;
public interface UserMapper {
public List findAll();
}
3,配置文件
3.1 数据源配置
jdbc.driverClassName=com.mysql.cj.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/hugo?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC jdbc.username=****** jdbc.password=******3.2 主配置文件
3.3 映射配置文件
4,测试select * from user
package com.hugo.dao;
import com.hugo.pojo.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;
import java.io.IOException;
import java.util.List;
public class UserDaoTest {
@Test
public void testFindAll() throws IOException {
// 获取SqlSession,代表一个对mysql数据库的连接
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
SqlSessionFactory factory
= sqlSessionFactoryBuilder.build(Resources.getResourceAsStream("mybatis-config.xml"));
SqlSession sqlSession = factory.openSession();
// 获取dao接口对应的mapper
UserMapper userDao = sqlSession.getMapper(UserMapper.class);
// 获取数据
List users = userDao.findAll();
System.out.println("users = " + users);
// 释放连接
sqlSession.close();
}
}
测试结果
进阶111
MyBatis的连接池与事物 MyBatis的映射文件


