1.下载需要的jar文件
mybatis-3.2.2.zip 下载网站文件下载
mysql-connector-java-5.1.0-bin.jar(数据库使用MySQL)
2.部署jar文件
把下载的jar文件放到WEB项目的WEB-INF 的 lib目录下.
选中WEB右击,选择Build Path ==》Configure Build Path
或者直接按住 shift 用鼠标选中每个jar文件右键 Build Path==》然后单击那个图标像奶瓶一样的东西
3.开始配置MyBatis
1.MyBatis核心配置文件configuration.xml
第一种
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typeAliases>
<typeAlias alias="user" type="cn.smbms.entity.User"/>
<typeAlias alias="provider" type="cn.smbms.entity.Provider"/>
<package name="cn.smbms.entity"/>
</typeAliases>
<environments default="dev">
<environment id="dev">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/smbms?useUnicode=true&characterEncoding=utf-8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="cn/smbms/dao/user/UserMapper.xml"/>
<mapper resource="cn/smbms/dao/provider/ProviderMapper.xml"/>
</mappers>
</configuration>
第二种
通过引入database.properties文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--引入 database.properties 文件 -->
<properties resource="database.properties"/>
<!--配置mybatis的log实现为 LOG4J -->
<settings>
<!--日志 -->
<setting name="logImpl" value="LOG4J"/>
<!-- PARTIAL 只会自动映射简单,没有嵌套的结果。FULL 会自动映射任意复杂的结果 NONE 不自动映射-->
<setting name="autoMappingBehavior" value="FULL"/>
</settings>
<!-- 设置别名 -->
<typeAliases>
<!-- 单个类设置 -->
<typeAlias type="cn.smbms.entity.Bill" alias="bill"/>
<!-- 包设置 -->
<package name="cn.smbms.entity"/>
</typeAliases>
<environments default="dev">
<environment id="dev">
<!--定义事务管理器 事务管理 MANAGED,JDBC 保证数据安全 -->
<transactionManager type="JDBC"></transactionManager>
<!--UNPOOLED 不使用连接池的数据源
POOLED 使用连接池的数据源
JNDI 使用JNDI实现的数据源
POOLED:mybatis自带的数据源,JNDI:基于tomcat的数据源
获取链接POOLED采用连接池管理链接 -->
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<!--将mapper文件加入到配置文件中 -->
<mappers>
<!--指定SQL映射文件的路径 resource -->
<mapper resource=""/>
</mappers>
</configuration>
database.properties内容
注意:修改数据库和user,password
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/smbms?useUnicode=true&characterEncoding=utf-8
user=root
password=123456
SQL映射文件创建
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--用于区分不同的mapper,全局唯一 -->
<mapper namespace="cn.smbms.dao.user.ProviderMapper">
<!--查询无参数 -->
<!--id类似于方法名 resultType为查询出来的返回值类型 -->
<select id="selectProviderCount" resultType="int">
select count(1) from smbms_provider
</select>
</mapper>
~~=========================================================================================~~
使用
1.创建POJO
也就是实体类 一个类对应数据库一张表,一个属性对应一个字段,一个对象对应一列数据
但是属性名需要与数据表名一致,通过getter和setter方法访问
封装快捷键 alt+shift+s+r
2.功能测试
1.读取全局配置文件configuration.xml (之前写的)
InputStream is=null;
SqlSessionFactory factory=null;
SqlSession sqlSession=null;
try {
//获取全局配置文件
is=Resources.getResourceAsStream("configuration.xml");
//实例化SqlSessionFactory对象
factory=new SqlSessionFactoryBuilder().build(is);
//得到SqlSession对象
sqlSession=factory.openSession();
//通过mapper文件的namespace和id来找到对应SQL执行
int count =sqlSession.selectOne("cn.smbms.dao.user.UserMapper.selectUserCount");
System.out.println("人数:"+count);
} catch (Exception e) {
e.printStackTrace();
}finally{
//关闭sqlsession对象
sqlSession.close();
}