第五次作业

本文介绍了如何在JavaMaven项目中配置Mybatis框架,包括设置数据库驱动、连接数据库、创建实体类和UserMapper接口,以及如何使用动态SQL和XML文件编写SQL语句。还提到注意事项,如参数命名一致性与封装问题的解决方法。
摘要由CSDN通过智能技术生成

1.配置环境

新建项目 语言java 类型 maven

配置依赖项(共三项)

                  根据个人数据库选择数据库驱动 如 mysql ->mysql driver

                    选择 Mybatis Framework

                   添加lombok

2.连接数据库

 点解右侧数据库按钮  点加号选择数据源  

此时要注意数据库url路径

必须和application.properties文件里的路径保持一致

配制以下数据

3.操作

每个项目为了简化代码,实体类必不可少

添加实体类 pojo 可以 .User连类一起创建

之后,为实现数据库的增删改查操作,最好添加一个接口UserMapper

该接口中的类,注意添加注释 @mapper 可以

在运行时,自动生成该接口的实现类对象(代理),并且将该对象交给IOC容器管理

实现了依赖注入以及简化配置。

然后开始编写接口方法

增删改查操作结果如下:

编写相应操作的接口方法时,要添加对应的注释。

若没有提示信息的话 可以右键点显示上下文操作,找到语言注入设置,并选择相应的数据库语言

操作时,做好的选择是使用#{}的方式接收参数,这样做性能更高,更安全。

注意事项:#{}里的参数名,要和实体类,数据库字段名 保持一致。

原因:实体类属性名和数据库字段名保持一致,mybatis会自动封装,否则不能封装。

        而#{}里的参数名和实体类保持一致,调用实体类时才能获取到对应数据,并且更加明了。

不能封装解决方法:

        1.给数据库字段名起别名和实体类保持一致。

        2.通过@Results。@Result注解手动映射封装.

     eg:@Results({

                @Pesult(column = "数据库字段名",property = “实体类对应属性名”)(一个@Result注解映射一个无法封装字段)

})

         3.开启mybatis的驼峰命名自动开关   如 a_sj ->aSj

       方法为在application.properties文件中加入

   mybatis.configuration.map-underscore-to-camel-case=true

4.xml文件配制sql语句

首先在resources目录下,创建和接口类相同的文件夹。创建时 点号给为/

之后,创建xml文件要与实体类名一致

然后,在官方文档上复制粘贴约束条件

mapper标签可选相应操作的语句

 注意事项: mapper 的username与接口的全类名保持一致

                   操作的id与接口中的方法保持一致,且返回值为单条记录的类型

添加插件 mybatisX能快速定位xml文件关联的内容

5.动态sql语句

if 判断条件是否成立,如果条件为true则拼接sql语句

需要时最好和set,where标签使用,可以自动去除多余符号,保证sql语句的正确合理

foreach 循环遍历

属性:collection 遍历的集合

          item 遍历出来的元素

          separator 分隔符

          open 遍历开始前拼接的sql片段

          close遍历开始后拼接的sql片段

sql,include标签

sql标签 id名和include 的refid属性保持一致

sql标签内容为重复书写的sql语句,xml文件使用时,直接使用include标签就行

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值