开发环境:
windows7+jdk1.8+tomcat8.0
开发工具:
eclipse+sqlyog
数据库:
mysql数据库
 
搭建步骤
【1创建一个java工程,如下:】java项目工程名这里定义为【MybaitsTest

 
【2、完整项目文件结构】
创建完成之后的目录结构如图。
【3、准备两个必要的jar文件,自己有的可以用自己项目的,没有的,下面提供连接直接下载】
mysql-connector-java-5.1.21-bin.jar
mybatis-3.2.3.jar
【4、对于jar文件可以根据自己的习惯去处理,这里分别包装了两个jar类库,分别放到类库里面】
选中你刚才新建的java项目,然后
“next”
找到你的jar文件,然后ok
按照同样的方法添加另一个类库
加完之后“finish”→“ok”
【4、创建测试数据库和表】
创建表:
  1. CREATE TABLE `user`(
  2. `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  3. `name` VARCHAR(64) NOT NULL DEFAULT '',
  4. `team` VARCHAR(64) NOT NULL DEFAULT '',
  5. `position` VARCHAR(64) NOT NULL DEFAULT '',
  6. `number` INT(10),
  7. PRIMARY KEY (`id`)
  8. )ENGINE=INNODB AUTO_INCREMENT=2
  9. DEFAULT CHARSET gbk;
新增测试数据表:
  1. INSERT INTO `user` VALUES('1','麦迪','火箭','得分后卫','1');
  2. INSERT INTO `user` VALUES('2','欧文','骑士','控球后卫','2');
  3. INSERT INTO `user` VALUES('3','韦德','热火','得分后卫','3');
【5、创建user对应的java类文件】
加set,get方法
ps:快速set,get的方法
定义完了上面的属性之后:
①操作快捷键:shift+alt+s+r
②再操作快捷键:shift+alt+a
③ok完成
【6、创建user对应的xml映射文件】
  1. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  2. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <!--
  4. 该文件的作用就是定义各种sql语句,以及这些语句的参数,以及要返回的类型等等。
  5. -->
  6. <mappernamespace="UserMapper">
  7. <selectid="getUserById"parameterType="int"resultType="User">
  8. SELECT * FROM USER WHERE ID =#{id}
  9. </select>
  10. </mapper>
【7、创建configure.xml配置文件】
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  3. "http://mybatis.org/dtd/mybatis-3-config.dtd">
  4. <configuration>
  5. <typeAliases>
  6. <typeAliasalias="User"type="com.crayon.test.models.User"/>
  7. </typeAliases>
  8. <environmentsdefault="development">
  9. <environmentid="development">
  10. <transactionManagertype="JDBC"/>
  11. <dataSourcetype="POOLED">
  12. <propertyname="driver"value="com.mysql.jdbc.Driver"/>
  13. <propertyname="url"value="jdbc:mysql://127.0.0.1:3306/mybatistest"/>
  14. <propertyname="username"value="root"/>
  15. <propertyname="password"value="0908"/>
  16. </dataSource>
  17. </environment>
  18. </environments>
  19. <!-- 这里配置要映射的类的xml文件 -->
  20. <mappers>
  21. <mapperresource="com/crayon/test/models/User.xml"/>
  22. </mappers>
  23. </configuration>
 
ps:该配置文件的作用:
配置文件是mybatis用来建立 sessionFactory 主要包括了数据库连接相关的内容还有java类对应的别名, 
            比如:<typeAlias 
alias="User" type="com.crayon.test.models.User"/> 这个别名非常重要,在具体的类的映射中,
            比如:User.xml 
中 resultType 就是对应这个。要保持一致,这里的 resultType 还有另外单独的定义方式,后面学习到我们再详细介绍说明。
【8、测试】
  1. package com.crayon.test;
  2. import java.io.IOException;
  3. import java.io.Reader;
  4. import org.apache.ibatis.io.Resources;
  5. import org.apache.ibatis.session.SqlSession;
  6. import org.apache.ibatis.session.SqlSessionFactory;
  7. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
  8. import com.crayon.test.models.User;
  9. /**
  10. *
  11. * @ClassName: MyBatisTest
  12. * @Description: TODO(测试工具类)
  13. * @author Crayon
  14. * @date 2016年4月22日 下午4:27:50
  15. *
  16. */
  17. publicclassMyBatisTest{
  18. publicstaticSqlSessionFactory sf ;
  19. publicstaticReader rd ;
  20. static{
  21. try{
  22. rd =Resources.getResourceAsReader("config/Configure.xml");
  23. sf =newSqlSessionFactoryBuilder().build(rd);
  24. }catch(IOException e){
  25. // TODO Auto-generated catch block
  26. e.printStackTrace();
  27. }
  28. }
  29. publicstaticSqlSessionFactory getSession(){
  30. return sf ;
  31. }
  32. publicstaticvoid main(String[] args){
  33. SqlSession session = sf.openSession();
  34. try{
  35. //到对应的user.xml文件中去找
  36. User u = session.selectOne("UserMapper.getUserById",1);
  37. //输出我们要的结果
  38. if(u!=null){
  39. String userInfo = u.getTeam()+"当家球星"+"名字:"+ u.getName()+"球衣号码:【"+u.getNumber()+"】场上位置司职:"+u.getPosition();
  40. System.out.println(userInfo);
  41. }
  42. }catch(Exception e){
  43. // TODO Auto-generated catch block
  44. e.printStackTrace();
  45. }finally{
  46. if(session!=null){
  47. session.close();
  48. }
  49. }
  50. }
  51. }