- orm 框架 (object relaction mapping)对象关系映射
- mybatis流程:
- 1、与数据库连接,获得信息。 sqlMapConfig.xml文件存储数据源(dataSource)
- 2、读取sqlMapConfig,构建sqlSessionFactory的工厂。 使用sqlSessionFactoryBuilder类的builder()方法 (构建是需要结构和内容的)
- 3、通过工厂创建sqlSession对象,会有很多线程访问。 存在线程安全问题
- 4、执行sql语句。 executor 执行器
- 代码:
- 1、InputStream is = Resources.getResourceAsStream("sqlMapConfig.xml");
- 2、SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); SqlSessionFactory factory = builder.build(is);
- 3、SqlSession session = factory.openSession();
- List<Customer> list = session.selectList("findAll");
- Customer cus = session.selectOne("findById",5);
- mybatis优点:sql语句写在xml文件里,不需要重新编译
- xxxmapper.xml文件、
- 属性id:id唯一,作为session要调用的语句
- parameterType:输入映射;数据类型(java.lang.String)
- resultType:输出映射;查询结果类型
- resultType是针对于拿数据的时候用的,paramType是针对于存数据的时候用的
sqlMapConfig.xml
<configuration> 配置文件
<environments default="development"> 环境,默认开发环境
<environment id="development">
<transactionManager type="JDBC"></transactionManager> 事物管理
<dataSource type="POOLED"> 数据源,池连
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/douyin"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<mappers>映射
<mapper resource="mapper/CustomerMapper.xml"/>
</mappers>
</configuration>