一.配置文件
1.properties
<properties resource="对应的properties文件位置">
<!--若不在properties文件中配置,可在下方一一配置-->
<property name="对应下面的naem" value="...."/>
</properties>
<dataSource type="POOLED">
<!--${}表示取出properties文件中对应的值-->
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
注意:如果标签properties下对应的property中的name,与从properties文件里读取的key相同(即properties文件里等号的左侧),则文件会先读取properties下对应的property的value再读取properties文件里的value(即properties文件里等号的右侧)并将上次读取的value覆盖.所以当两者出现相同的name时,以properties文件里的value为主.
2.typeAliases
<typeAliases>
<typeAlias alias="别名" type="要取代的位置路径"/>
<!--例如,给com03.Sky.Entity.UserEntity起别名为Hello-->
<typeAlias alias="Hello" type="com03.Sky.Entity.UserEntity"/>
<package name="包名"/>
<!--给指定的包下的文件起别名,包下的所有JavaBean如果没有注解则默认其别名为首字母小写的非限定类名,若想自定义别名则在类名上加@Alias("")-->
<package name="com03.Sky.Entity"/>
<!--com03.Sky.Entity下的User 默认为 user, 别名为hello-->
@Alias("hello")
public class User{
}
</typeAliases>
3.mapper
<mappers>
<!-- 使用相对于类路径的资源引用 -->
<mapper resource="com03/Sky/Mapper/Test/TestMapper.xml"/>
<!-- 使用映射器接口实现类的完全限定类名 -->
<mapper class="com03.Sky.Mapper.Test.TestMapper"/>
<!-- 使用完全限定资源定位符(URL) -->
<mapper url="file:///E:/java/JAVATest/MyBatis/Test03/src/main/java/com03/Sky/Mapper/Test/TestMapper.xml"/>
<!-- 将包内的映射器接口实现全部注册为映射器 -->
<package name="com03.Sky.Mapper.Test"/>
</mappers>
注意:通过mapper来映射SQL语句时,若使用resource 和 url 路径用 "/ “间隔,class 和package用” . "来间隔.
resource, url, class, package,在映射向相同的文件时,不可以同时出现(映射文件只能出现一次)
<!--在配置文件中,要按照这样的顺序来加入标签"(properties,settings,typeAliases,typeHandlers,objectFactory,objectWrapperFactory,reflectorFactory,plugins,environments,databaseIdProvider,mappers)"
-->
二.映射文件
1.mapper
<mapper namespace="对应的接口,类">
</mapper>
<!--如-->
<mapper namespace="com03.Sky.Mapper.Test.TestMapper02">
在com03.Sky.Mapper.Test.TestMapper02中寻找对应的方法,以便下一步的增删改查
</mapper>
2.select
<!--select常用配置-->
<select id="接口中对应的方法" resultType="返回值的类型" parameterType="传入参数的类型" resultMap="引用外部的resultMap">
select * from user where id = #{传入的参数值}
</select>
<!--insert, delete, update 与select相似-->