创建项目:

day04_eesy_03annotation_mybatis

工程目录如下:

创建实体类User:

public class User implements Serializable {private Integer id;private String username;private String address;private String sex;private Date birthday;//get和set省略
}

创建实体类对应接口IUserDao:

public interface IUserDao {/*查询所有用户*/@Select("select * from user")List<User> findAll();
}

创建mybatis的核心配置文件SqlMapConfig.xml:

<configuration><!--引入外部配置文件--><properties resource="jdbcConfig.properties"></properties><!--配置别名--><typeAliases><package name="com.itheima.domain"></package></typeAliases><!--配置环境--><environments default="mysql"><environment id="mysql"><transactionManager type="JDBC"></transactionManager><dataSource type="POOLED"><property name="driver" value="${jdbc.driver}"></property><property name="url" value="${jdbc.url}"></property><property name="username" value="${jdbc.username}"></property><property name="password" value="${jdbc.password}"></property></dataSource></environment></environments><!--指定带有注解的dao接口所在位置--><mappers><package name="com.itheima.dao"></package></mappers>
</configuration>

jdbcConfig.properties文件内容如下:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/eesy_mybatis
jdbc.username=root
jdbc.password=root

最后即使用注释,方法如下:

在SqlMapConfig.xml文件配置:

<mappers><package name="com.itheima.dao"></package></mappers>

在IUserDao接口的对应方法上添加注释:

public interface IUserDao {/*查询所有用户*/@Select("select * from user")List<User> findAll();
}

编写测试类:

/*测试基于注解的mybatis使用*/public static void main(String[] args) throws IOException {//1.获取字节输入流InputStream in= Resources.getResourceAsStream("SqlMapConfig.xml");//2.根据字节输入流构建SqlSessionFactorySqlSessionFactory factory=new SqlSessionFactoryBuilder().build(in);//3.根据SqlSessionFactory生产一个SqlSessionSqlSession session=factory.openSession();//4.使用SqlSession获取Dao的代理对象IUserDao userDao=session.getMapper(IUserDao.class);//5.执行Dao方法List<User> users=userDao.findAll();for (User user:users) {System.out.println(user);}//6.释放资源session.close();in.close();}

测试结果如下:

注解方法和配置文件方法对比:

注解方法同样有配置IUserDao.xml文件中的信息内容

注意事项:

采用注解方法时,在同样的目录结构下存在IUserDao.xml文件会报错。

Mybatis(16)注解开发环境搭建相关推荐

  1. Spring + Maven + Dubbo + MyBatis + Linner + Handlebars-Web开发环境搭建

    spring + Maven + Dubbo + MyBatis + Linner + Handlebars                                         - 开发环 ...

  2. 【Spring Web MVC】Spring Web MVC 注解开发环境搭建

    为什么80%的码农都做不了架构师?>>>    1.创建maven项目 创建一个名为:springwebmvc-first的maven项目 2.添加依赖包 要使用springWebM ...

  3. Web前端开发环境搭建

    最近在学习前端开发,通过网上的查找资料和自身实践:完成了前端开发环境的简单搭建.但发现网上提供的搭建方法总有些不全,因此把自己的搭建过程分享一下,希望能为web开发入门者提供帮助,少走弯路. 搭建的环 ...

  4. Spring+Dubbo+MyBatis+Linner分布式Web开发环境搭建

            Spring+Dubbo+MyBatis+Linner分布式Web开发环境搭建               本文承接我之前的博客<Spring+Maven+Dubbo+MyBat ...

  5. Spring+Maven+Dubbo+MyBatis+Linner+Handlebars—Web开发环境搭建

    Spring+Maven+Dubbo+MyBatis+Linner+Handlebars                                         --Web开发环境搭建 本文主 ...

  6. ubuntu 16.04 php 开发环境搭建

    ubuntu 16.04 php 开发环境搭建 mysql sudo apt install -y mysql-server mysql-client php 5.6 sudo add-apt-rep ...

  7. MyBatis-学习笔记01【01.Mybatis课程介绍及环境搭建】

    Java后端 学习路线 笔记汇总表[黑马程序员] MyBatis-学习笔记01[01.Mybatis课程介绍及环境搭建][day01] MyBatis-学习笔记02[02.Mybatis入门案例] M ...

  8. Windows Java JavaFX IntelliJ IDEA 开发环境搭建 创建工程 编译运行 打包分发 自定义运行时

    博文目录 文章目录 本文说明 JavaFX 简单说明 JavaFX 版本说明 JavaFX 与 JDK 的关系 JavaFX 与 JDK Modular (JDK 9 模块化系统) JavaFX 模块 ...

  9. MyBatis3 开发环境搭建

    MyBatis3 开发环境搭建 1. 准备工作 下载并导入SQL数据文件:测试数据库脚本 下载相关JAR文件 MyBatis3核心jar文件:mybatis-3.2.2.jar Mysql数据库驱动文 ...

最新文章

  1. 智源青年科学家林乾:揭开人工智能的黑匣,从解答最基本的问题开始
  2. 计算机主机组装的过程,电脑主机组装需要怎样的操作流程简单至极?
  3. C#中读取xml文件指定节点
  4. NLP CV ML future
  5. mysql 压缩表_MySQL InnoDB 表压缩(行格式压缩)
  6. Spring Boot基础讲解
  7. 死锁与活锁的区别,死锁与饥饿的区别?
  8. 存放有数组的list排序
  9. opengl编程指南
  10. 电脑使用技巧提升篇2:修改电脑桌面固定图标
  11. [python][统计学入门]scipy.stats.norm函数探究
  12. 用Python进行数据整理
  13. 2021年茶艺师(初级)考试总结及茶艺师(初级)作业考试题库
  14. 批处理使用技巧:批量修改文件名
  15. linux cp 性能,linux性能监控以及优化之CPU
  16. QIIME2进阶五_QIIME2扩增子基因序列多样性分析
  17. 计算机怎么复制公式,excel怎么复制公式 -电脑资料
  18. SendMessage函数
  19. C++ 算法设计与分析 地图着色问题(中国+美国)
  20. 计算机网络(严伟 潘爱民)通过课后题总结学习网络 --持续更新

热门文章

  1. Hibernate学习3—映射对象标识符(OID)
  2. linux下使用fdisk命令进行硬盘分区
  3. 关于C语言中运算符优先级的一次错误
  4. php之数据类型自动转换
  5. 81. Search in Rotated Sorted Array II
  6. jmeter 响应结果分析一
  7. matlab 扫雷命令,Matlab版扫雷
  8. 信息学奥赛一本通 1130:找第一个只出现一次的字符 | OpenJudge NOI 1.7 02
  9. 搜索 —— 深搜的剪枝技巧
  10. 数论 —— 高次同余方程与 BSGS 算法