注解的用法

直接创建一个新的项目


下一步直接next 然后finish即可

把之前项目01里面的代码直接复制过来

复制到我们02的注解的工程中

把01项目导入的依赖也都粘贴过来

再把测试类复制过去

复制到02的项目,test/java下


用注解的话,这个xml就没有任何意义了

主配置文件的内容不动

resources下的com文件夹直接删除

删除后的resources目录

在dao类里面加上注解

之前我们这里是这么配置的。里面是xml的配置。现在我们不用xml的配置 ,改用注解了。 

改成class的配置

再来运行我们的测试类

运行结果,和刚才用xml配置的结果是一样的。这样配置比xml的方式更简单了一步

用注解步骤简单

注解总结

dao实现类

实际的开发过程中,越简单越好,所以不写dao的实现类

自己写dao实现类。我们重新创建一个工程

把第一个工程的文件复制过来


配置文件也复制过来

新建实现类UserDaoImpl放在Impl包下

继承IUserDao的接口

添加这么个方法

有了实现类就需要提供方法来实现功能、。
原来的代码后面代理对象这里就没有了。我们是自己写实现类的

session里面有selectList查询的方法

我们应该在session里面去调用,但是发现里面没有session这个对象。

那就需要定义能拿到session对象的。SqlSessionFactory对象,构造函数传入进来赋值。

这里selectList方法报错。

selectList是需要有个参数的

进去到源码里面看到,参数是一个stateMent

statement实际上就是我们的配置信息。我们需要从配置文件里面,拿到sql语句

namespace+方法名,就是statement这个参数,

传入工厂对象

执行结果

写dao实现类,可以实现功能,但是意义不大。我们不写也能实现功能。

光靠id无法定位到sql语句,还需要namespace

阶段3 1.Mybatis_02.Mybatis入门案例_3.mybatis注解开发和编写dao实现类的方式的更多相关文章

  1. mybatis学习:mybatis的注解开发和编写dao实现类的方式入门

    一.使用注解则不需要创建映射配置文件:即xxxDao.xml javaBean为什么要实现Serializable接口? Java的"对象序列化"能让你将一个实现了Serializ ...

  2. 阶段3 1.Mybatis_02.Mybatis入门案例_1.mybatis的入门

    H:\BaiDu\黑马传智JavaEE57期 2019最新基础+就业+在职加薪\讲义+笔记+资料\主流框架\31.会员版(2.0)-就业课(2.0)-Mybatis\mybatis\mybatis_d ...

  3. 阶段3 1.Mybatis_02.Mybatis入门案例_2.mybatis入门案例中的设计模式分析

    读取配合文件 创建工厂 最终图

  4. MyBatis入门案例、增删改查

    一.MyBatis入门案例: ①:引入jar包 ②:创建实体类 Dept,并进行封装 ③ 在Src下创建大配置mybatis-config.xml <?xml version="1.0 ...

  5. MyBatis入门案例 增删改查

    一.MyBatis入门案例: ①:引入jar包 ②:创建实体类 Dept,并进行封装 ③ 在Src下创建大配置mybatis-config.xml <?xml version="1.0 ...

  6. Mybatis入门案例中设计模式的简单分析

    Talk is cheap, show me the code! public class TestMybatis { public static void main(String[] args) t ...

  7. mybatis入门案例自定义实现

    mybatis入门案例自定义实现 一.需要实现的类和接口 public static void main(String[] args) throws Exception{ //1.读取配置文件 Inp ...

  8. mybatis入门案例分析

    mybatis入门案例分析 一.设计模式分析 public class MybatisTest { public static void main(String[] args) throws Exce ...

  9. 03 Mybatis:01.Mybatis课程介绍及环境搭建&&02.Mybatis入门案例

    mybatis框架共四天第一天:mybatis入门 mybatis的概述 mybatis的环境搭建 mybatis入门案例 -------------------------------------- ...

随机推荐

  1. Linux 防火墙之TCP Wrappers

      1.TCPWrappers  原理 Telnet.SSH.FTP.POP和SMTP等很多网络服务都会用到TCPWrapper,它被设计为一个介于外来服务请求和系统服务回应的中间处理软件.     ...

  2. juniper 命令

    show chassis hardware 查看系统硬件配置,fpc表示板卡,pic表示板卡中的槽位,xcvr表示板卡中的槽位的端口位置 show chassis envirmonent 查看系统运行 ...

  3. 四、Ubuntu16.04下TestLink的部署【测试管理必备工具】

    TestLink部署和使用方法 TestLink是一个基于Web的开源测试和需求管理工具.该应用程序提供测试规范.测试计划和执行,报告,需求规范以及与知名的bug跟踪器协作. 特征 l 需求管理 - ...

  4. git 合并某个分支指定的文件

    $ git checkout <another-branch> <path-to-file> [<one-more-file> ...] $ git status ...

  5. 基于element ui 实现七牛云自定义key上传文件,并监听更新上传进度

    借助上传Upload 上传组件的 http-request 覆盖默认的上传行为,可以自定义上传的实现 <el-upload multiple ref="sliderUpload&quo ...

  6. 那些年我写过的mysql命令

    建表语句 #mysql5.7适用create table testfy ( id int primary key AUTO_INCREMENT, clipid int comment '影片编号', ...

  7. Gitlab+Jenkins+Docker实现net core持续集成

    前言 在项目中使用这一套自动集成的体系之后,一直想找个时间总结出来,用于自己记录也打算将自己的所得分享给园友们,不经常写文章,可能会有错误的地方,希望各位不吝指正,我会及时的改正并表示感谢,希望大家能 ...

  8. Docker(2)--Centos7 上安装部署

    Centos7 上安装docker Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE. 社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比 ...

  9. MySQL——复制(Replication)

    1.复制概述 1.1.复制解决的问题数据复制技术有以下一些特点:(1)    数据分布(2)    负载平衡(load balancing)(3)    备份(4)    高可用性(high avai ...

  10. java——SimpleDateFormat与DateTimeFormatter

    https://www.jianshu.com/p/b212afa16f1f SimpleDateFormat不是线程安全的 DateTimeFormatter是线程安全的