请选择 进入手机版 | 继续访问电脑版

(三)mybatis的增删改查,Map,模糊查询

[复制链接]
菜鸡 发表于 2020-12-31 19:00:21 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
设置文件中namespace中的名称为对应Mapper接口或者Dao接口的完整包名,必须一致!

CURD

1.select

select标签是mybatis中最常用的标签之一
select语句有许多属性可以详细设置每一条SQL语句


  • SQL语句返回值类型。【完整的类名或者别名】
    传入SQL语句的参数类型 。【万能的Map,可以多实验使用】
    定名空间中唯一的标识符
    id(接口中的方法名与映射文件中的SQL语句ID 一一对应)
    parameterType(传入参数的类型)
    resultType (返回值类型,可以给底子类型及其包装类,自己界说的实体类,Map,List集合)
实例:根据id查询用户

  • 在UserMapper接口中添加对应方法
  1.    //查询全部用户   List selectUser();   //根据id查询用户   User selectUserById(int id);
复制代码

  • 在UserMapper.xml中添加Select语句(UserMapper.xml为UserMapper接口的实现文件)

  • 测试

注意:每个线程都有差别的session实例,session是从数据池中获取的,用完要归还毗连,否则会占用内存资源,所以要在最后执行session.close();
2.insert

流程同select一样

  • 在接口中声明方法

  • 在实现接口的userMapper.xml文件中设置

  • 在测试类中举行测试

    注意:增删改是有事务的,最后提交才有效,用完session对象毗连,要记得归还,使用session.close();
3.update

流程同上…
4.delete

流程同上…
注意点:

  • 增、删、改利用需要提交事务!**
  • 增、删、改、查利用都不要忘记归还毗连!
根据 密码 和 名字 查询用户

思路一:直接在方法中通报参数


  • 在接口方法的参数前加 @Param属性
  • Sql语句编写的时候,直接取@Param中设置的值即可,不需要单独设置参数类型
流程:



思路二:使用万能的Map


  • 在接口方法中,参数直接通报Map;
  • 编写sql语句的时候,需要通报参数类型,参数类型为map
  • 在使用方法的时候,Map的 key 为 sql中取的值即可,没有顺序要求!
流程:



总结:

  • 所有的增删改利用都需要提交事务!
  • 接口所有的平常参数,只管都写上@Param参数,尤其是多个参数时,必须写上!
  • 有时候根据业务的需求,可以思量使用map通报参数!
  • 为了规范利用,在SQL的设置文件中,我们只管将Parameter参数和resultType都写上!
含糊查询like语句怎么写?

第1种:在Java代码中添加sql通配符。


第2种:在sql语句中拼接通配符,会引起sql注入



来源:https://blog.csdn.net/qq_44785877/article/details/111875894
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题

专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )