配置文件优化
执行流程:读取配置流程—>sqlSessionFactory—>sqlSession(连接、读取sql并执行相应操作、关闭)
a)配置优化:通过中文参考指南的说明可知—>Properties的多项配置可通过导入外置properties文件替换(利用properties标签的resource属性),例如:
//------------核心配置文件------------// <configuration> <!-- environments指mybatis可以配置多个环境, default指向默认的环境每个SqlSessionFactory对应一个环境environment --> //关键1 <properties resource="db.properties" ></properties> <environments default="development"> <environment id="development"> <!-- JDBC 这个配置直接使用JDBC的提交和回滚功能,它依赖与从数据源获得链接来管理事务的生命周期。 MANAGED-这个配置基本什么都不做,它从不提交或者回滚一个连接的事务, 而是让容器(例如Spring或者J2EE应用服务器)来管理事务的生命周期 --> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <!-- UNPOOLED这个数据源实现只是在每次请求的时候简单的打开和关闭一个连接。 POOLED 这个数据源缓存JDBC连接对象用于避免每次都要连接和生成连接实例而需要的验证时间--> //关键2 <property name="driver" value="${driver}"/> <property name="url" value="${url}"/> <property name="username" value="${username}"/> <property name="password" value="${password}"/> </dataSource> </environment> <mappers> <!-- 定义映射SQL语句的文件 --> <mapper resource="cn/aaa/entity/User.mapper.xml"/> </mappers> </configuration> //------------properties配置文件------------// driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/aaaa username=root password=aaaa
b)别名优化——
//------------核心配置文件------------// //*在configuration标签中引用 //*此处的(1)与(2)是两种方式,请只选择一种使用或者使用不同路径尝试两种方式 <!-- 指定别名,简化mapper引用 --> <typeAliases> <typeAlias alias="User" type="cn.aaa.entity.User"/>------(1) <!-- 为某个包下的所有类命名“别名”,默认别名是对应的类名,即cn.aaa.entity.User可直接用User表示 --> <package name="cn.aaa.entity" />-------------------------(2) </typeAliases> //------------映射文件------------// //*resultType引用由"cn.aaa.entity.User"--->"User" <!--查询语句 --> <select id="selectAll" resultType="User"> select * from users </select>
来源:https://www.cnblogs.com/inkqx/p/12316444.html