mybatis入門
mybatis原生用法
sqlSession.selectOne(sqlId,參數(shù));
sqlSession.selectList(sqlId,參數(shù));
sqlSession.update(sqlId,參數(shù));
sqlSession.insert(sqlId,參數(shù));
sqlSession.delete(sqlId,參數(shù));
mybatis接口用法
1 namespace與接口全限定名一致
2 id和抽象函數(shù)保持一致
3 參數(shù)類型與返回類型保持一致
4 java類名與xml文件名保存一致
public interface GoodsMapper {
Goods selectGoodsById(Goods goods);
}
<select id="selectGoodsById" resultType="com.study.entity.Goods" paramenterType="Goods">
select * from goods where gid=#{gid}
</select>
GoodsMapper mapper = sqlSession.getMapper(GoodsMapper.class);//接口的實現(xiàn)類度液,該實現(xiàn)類有 mybatis創(chuàng)建
Goods goods = mapper.selectGoodsById();
db.properties
mybatis.driverClass=com.mysql.jdbc.Driver
mybatis.url=jdbc:mysql:///taobao?useUnicode=true&characterEncoding=utf-8
mybatis.user=root
mybatis.password=123456
mybatis-config.xml配置
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<!--原理通過Dom4j解析后通過反射創(chuàng)建 -->
<configura配置文件ion>
<!-- 加載properties-->
<properties resource="db.properties"/>
<settings>
<setting name="autoMappingBehavior" value="FULL"/><!-- 開啟自動映射 -->
<setting name="mapUnderscoreToCamelCase" value="true"/><!-- 開啟懶加載 -->
</settings>
<!-- 配置別名扑庞,可以在映射文件中使用短名稱 -->
<typeAliases>
<!-- 為某個類取別名 -->
<typeAlias type="com.bean.User" alias="user"/>
<!-- 指明那個包下全部用別名恢筝,別名默認每個類的類名 -->
<package name="com.bean"/><!-- 常用 -->
<package name="com.dao"/>
</typeAliases>
<!-- 分頁插件 -->
<plugins>
<plugin interceptor="com.github.pagehelper.PageHelper">
<!-- 設置數(shù)據(jù)庫類型 Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六種數(shù)據(jù)庫 -->
<property name="dialect" value="mysql"/>
</plugin>
</plugins>
<environments default="development"><!--環(huán)境 -->
<environment id="development">
<transactionManager type="JDBC"/><!-- 事務管理 -->
<dataSource type="POOLED"><!--數(shù)據(jù)源類型 是否使用連接池 -->
<property name="driver" value="${mybatis.driver}"/>
<property name="url" value="${mybatis.url}"/>
<property name="username" value="${mybatis.user}"/>
<property name="password" value="${mybatis.password}"/>
</dataSource>
</environment>
</environments>
<mappers> <!--用來指定加載映射文件 -->
<!-- 掃描方式 映射文件和接口名一致而且位于同一包下 -->
<package name="com.mapper"/>
</mappers>
</configuration>