首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我执行了dao层的mybatis update方法,但数据库没有更新

在这个问题中,你执行了DAO层的MyBatis的update方法,但是数据库没有更新。这可能是由于以下几个原因导致的:

  1. 数据库连接问题:首先,你需要确保你的数据库连接是正确的,并且没有任何错误。你可以检查数据库连接的配置文件,确保数据库的URL、用户名和密码是正确的。另外,你还可以尝试重新启动数据库服务,以确保连接正常。
  2. SQL语句问题:你需要仔细检查你的SQL语句是否正确。确保你的update语句中的表名、列名和条件都是正确的。你可以尝试在数据库客户端中手动执行这个SQL语句,看看是否能够成功更新数据。
  3. 事务管理问题:如果你的代码中使用了事务管理,那么可能是事务没有正确提交导致的。你需要确保在执行完update方法后,调用了事务的提交操作,以确保更新操作被持久化到数据库中。
  4. 数据库权限问题:如果你的数据库用户没有足够的权限执行更新操作,那么数据库将不会更新数据。你可以检查数据库用户的权限,确保它具有执行更新操作的权限。

总结起来,当你执行DAO层的MyBatis的update方法时,但数据库没有更新,你需要检查数据库连接、SQL语句、事务管理和数据库权限等方面的问题,以找出导致数据库没有更新的原因。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

你还在用传统 JDBC 持久化访问吗

前言 这里我会采用mybatis3.2做数据库持久化,很多小伙伴或许还停留在老师教导下,仍然停留在使用传统JDBC持久化访问数据。今天,我们来聊聊面向接口编程和怎么充分利用注解优势!...那么,mybatis+springmvc开发框架就此兴起… 闲聊结束,先说说原理吧: 使用mybatis定义接口完成sql语句映射,该接口还可以直接作为DAO组件使用。 桥接模式知道吗?...这个公共常量类根据数据库结构定义得,也就是说在数据库里面一共创建了6个表,每个表和此类是一一对应。至于这里session对象,是为了后期编写控制所铺垫,与本次所讲内容无影响噢。...实体类基本准则就是遵循javabean规则,也就是常说公有的类、私有的成员变量以及自带一个无参构造方法。当然,这里用了setter和getter方法对其进行了简单封装。...持久化DAO接口只需要通过SqlSessiongetMapper方法获得对应接口实例,从而达到调用接口方法完成数据库操作,而在spring容器里,只负责生成和管理DAO组件。

58720

快速学习-Mybatis 缓存

第2章 Mybatis 缓存 像大多数持久化框架一样,Mybatis 也提供了缓存策略,通过缓存策略来减少数据库查询次数,从而提高性能。 Mybatis 中缓存分为一级缓存,二级缓存。 ?...我们可以发现,虽然在上面的代码中我们查询了两次,最后只执行了一次数据库操作,这就是 Mybatis 提供给我们一级缓存在起作用了。...因为一级缓存存在,导致第二次查询 id 为 41 记录时,并没有发出 sql 语句从数据库中查询数据,而是从一级缓存中查询。...(user1 == user2); } 当执行sqlSession.close()后,再次获取sqlSession并查询id = 41User对象时,又重新执行了sql语句,从数据库行了查询操作。...,并且在执行第一次查询后,我们关闭了一级缓存,再去执行第二次查询时,我们发现并没有数据库发出 sql 语句,所以此时数据就只能是来自于我们所说二级缓存。

34720

SpringBoot (六) :如何优雅使用 mybatis

mybatis初期使用比较麻烦,需要各种配置文件、实体类、dao映射关联、还有一大推其它配置。...当然mybatis也发现了这种弊端,初期开发了generator可以根据表结果自动生产实体类、配置文件和dao代码,可以减轻一部分开发量;后期也进行了大量优化可以使用注解了,自动管理dao和配置文件等...其实就是myBatis看spring boot这么火热也开发出一套解决方案来凑凑热闹,这一凑确实解决了很多问题,使用起来确实顺畅了许多。...@Insert 插入数据库使用,直接传入实体类会自动解析属性到对应值 @Update 负责修改,也可以直接传入对象 @delete 负责删除 了解更多属性参考这里。...极简xml版本 极简xml版本保持映射文件老传统,优化主要体现在不需要实现dao是实现,系统会自动根据方法名在映射文件中找对应sql。

39420

springboot(六):如何优雅使用mybatis

mybatis初期使用比较麻烦,需要各种配置文件、实体类、dao映射关联、还有一大推其它配置。...当然mybatis也发现了这种弊端,初期开发了generator可以根据表结果自动生产实体类、配置文件和dao代码,可以减轻一部分开发量;后期也进行了大量优化可以使用注解了,自动管理dao和配置文件等...,这里就不贴了 极简xml版本 极简xml版本保持映射文件老传统,优化主要体现在不需要实现dao是实现,系统会自动根据方法名在映射文件中找对应sql. 1、配置 pom文件和上个版本一样,只是...搬到了这里xml中了 3、编写Dao代码 public interface UserMapper { List getAll(); UserEntity getOne...(Long id); } 对比上一步这里全部只剩了接口方法 4、使用 使用和上个版本没有任何区别,大家就看代码吧 xml配置版本:https://github.com/ityouknow/spring-boot-starter

1.4K120

MyBatis:基本应用

一般包括以下三: 持久:主要完成与数据库相关操作,即对数据库增删改查。因为数据库访问对象一般称为 Data Access Object(简称 DAO),所以有人把持久叫做 DAO 。...SQL,使用框架就不需要这么麻烦了,直接调用方法就可以。...MyBatis 采用 ORM 思想解决了实体和数据库映射问题,对 JDBC 进行了封装,屏蔽了 JDBC API 底层访问细节,使我们不用与 JDBC API 打交道就可以完成对数据库持久化操作。...常用有如下两个: openSession() - 会默认开启一个事务,事务不会自动提交,也就意味着需要手动提交该事务,更新操作数据才会持久化到数据库中 openSession(boolean autoCommit...,代理对象方法体同上边 Dao 接口实现类方法

1.3K30

MyBatis从入门到精通(五)—MyBatis插件原理探究和自定义插件实现

Mybatis对持久操作就是借助于四⼤核⼼对象。...MyBatis所允许拦截⽅法如下: ⾏器Executor (update、query、commit、rollback等⽅法); SQL语法构建器StatementHandler(prepare、parameterize...这样,插件逻辑即可在 Executor相关⽅法被调⽤前⾏。 以上就是MyBatis插件机制基本原理。...法 关于插件⾏逻辑就分析结束 pageHelper分页插件 MyBatis可以使⽤第三⽅插件来对功能进⾏扩展,分⻚助⼿PageHelper是将分⻚复杂操作进⾏封装,使⽤简单⽅式即可获得分⻚相关数据...); //保存实体,null属性不会保存,会使⽤数据库默认值 int i = userMapper.insertSelective(user); // update

83530

【ssm个人博客项目实战04】mybatis实现博客类别的增删改查分页

以及mapper文件 这里有两种方法可以完成 1、手写 2、通过mybatis generator自动生成 前期还是觉得手写比较这样我们对表结构更加了解在这里使用手写方式 ---- 1、...#{name}获取参数中值 在这个dao接口声明了博客类别的增删改查 分页 查询总记录等方法 但是这里只是方法声明并没有具体实现,所以我们还需要新建mapper文件对接口中方法进行实现。...因为我们整合spring与mybatis时候设置mapper扫描路径就这个路径不知道大家还有没有映像! ? mapper扫描路径 <?...接口方法就实现了 我们可以新建测试类来测试一下 这里主要测试分页方法 4、测试dao接口 package ssm.blog.dao; import org.apache.ibatis.annotations.Param...功能已经实现

49050

如何细粒度地控制你MyBatis二级缓存(mybatis-enhanced-cache插件实现)

插件使用实例 1.一个关于MyBatis二级缓存实际问题 网友chanfish 给我抛出问题 现有AMapper.xml中定义了对数据库表 ATable CRUD操作,BMapper定义了对数据库表...执行BMapper中对BTable更新操作(update、delete、insert)后,BTable数据更新; 3....: 对于某些表执行了更新(update、delete、insert)操作后,如何去清空跟这些表有关联查询语句所造成缓存; 当前MyBatis缓存机制不能很好地处理这一问题,下面我们将从当前...最理想解决方案就是:           对于某些表执行了更新(update、delete、insert)操作后,如何去清空跟这些表有关联查询语句所造成缓存; 这样,就是以很细粒度管理MyBatis...基于这个思路,写了一个对应mybatis-enhanced-cache 缓存插件,可以很好地支持上述功能。

58450

SpringBoot 笔记

@SpringBootApplication //扫描daomybatis框架接管到 @MapperScan("com.qf.music.dao") public class MusicApplication...和mapper⽂件进⾏关联 mybatis.mapper-locations=classpath:mapper/*.xml # 数据库连接池配置 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource...⼀些逻辑操作,并动态拼接成完整SQL之后再 ⾏,以达到SQL复⽤、简化编程 效果。...test 中并不由SQL解析,而是框架 其它 SpringMVC 默认方式是转发 转发: 表示 一次请求 重定向: 重新发起一次请求 AJAX 请求登录后,响应 Set-Cookie ,浏览器仍然没有设置...当我导航到我域中另一个网页时,不发送Cookie。 (注意:没有做任何跨域ajax请求;请求与文档在同一个域中。)

1.8K10

SpringBoot教程(十) | SpringBoot集成JdbcTemplate

今天我们先来搞个简单点,先来个JdbcTemplate, 这个是Spring基于Jdbc而封装一个持久框架,致力于轻量、便捷地操作数据库。...service中一般用来处理业务逻辑,一般把有事务代码放到这一,一般是根据业务模块进行划分,名字可以不与实体名或者表名开发,他里边一般是对多个Dao操作封装。...想要彻底搞懂Service也能需要更多项目的历练。这里以演示为主,也没有特别复杂业务,我们就直接起名UserService.里面就直接把Dao方法全部拿过来。...注意别忘了传header, 因为咱们拦截器里要求必须传header 返回成功,查看数据库中数据: 数据保存成功。 我们再试试getById方法 其他方法就不在演示了。 3....后边我们会继续介绍比较主流DAO框架Mybatis和JPA用法。希望本篇文章对大家有所帮助。 另: 配套项目代码已托管中gitCode: gitcode.net/lsqingfeng/…

41330

手把手教你整合最优雅SSM框架:SpringMVC + Spring + MyBatis

– – – spring 这里当然是存放spring相关配置文件,有dao service web三。 – – – sql 其实这个可以没有,但是为了项目完整性还是加上吧。...先新建好几个必要包,并为大家讲解一下每个包作用,顺便理清一下后台思路~ 包名 名称 作用 dao 数据访问(接口) 与数据打交道,可以是数据库操作,也可以是文件读写操作,甚至是...为什么没有daoImpl,因为我们用mybatis,所以可以直接在配置文件中实现接口每个方法。...entity 实体类 一般与数据库表相对应,封装dao取出来数据为一个对象,也就是我们常说pojo,一般只在dao与service之间传输。...dao写完了,接下来test对应package写我们测试方法吧。

37310

Spring Boot(六):如何优雅使用 Mybatis

Mybatis 初期使用比较麻烦,需要各种配置文件、实体类、Dao 映射关联、还有一大推其它配置。...当然 Mybatis 也发现了这种弊端,初期开发了generator可以根据表结果自动生产实体类、配置文件和 Dao 代码,可以减轻一部分开发量;后期也进行了大量优化可以使用注解了,自动管理 Dao...Mybatis 看 Spring Boot 这么火热也开发出一套解决方案来凑凑热闹,这一凑确实解决了很多问题,使用起来确实顺畅了许多。...,这里就不贴了 极简 xml 版本 极简 xml 版本保持映射文件老传统,接口只需要定义空方法,系统会自动根据方法名在映射文件中找对应 Sql . 1、配置 pom 文件和上个版本一样,只是 application.properties...void delete(Long id); } 对比上一步,这里只需要定义接口方法 4、使用 使用和上个版本没有任何区别,大家就看文章对应示例代码吧 如何选择 两种模式各有特点,注解版适合简单快速模式

56030

java架构之路-(源码)mybatis基本使用

我们今天先来简单了解一下我们持久框架,mybatis使用。...再就是我们typehandlers,可以指定类型转换。我们也可以继承BaseTypeHandler来重写父类方法来自定义类型转换。 来一个自己简单配置。 <?...其余insert,update,delete都差不多,这里就放在一起说了。 id 命名空间中唯一标识符,可被用来代表这条语句。...useGeneratedKeys (仅对 insert 和 update 有用)这会令 MyBatis 使用 JDBC getGeneratedKeys 方法来取出由数据库内部生成主键(比如:像...尽力不要用拼接方式来做,后面将动态sql会说具体怎么来实现。${}容易被sql注入。所以我们尽力还用占位符方式来处理我们SQL。

49420

Mybatis系列全解(七):全息视角看Dao两种实现方式之传统方式与代理方式

[hq72yaymr6.png] 号外: 我们 Mybatis 全解系列一直在更新哦 [h1jhs82l80.png] Mybaits系列全解 ( 传送门 ) *** Mybatis系列全解(一):手写一套持久框架...(或物质)不同表现形态,类比水与冰、或水与气(可能不恰当,But 确实理解为信息/物质形态转移),而 C 存在目的就是为了连接转移 M 与 V ,保证 M 与 V 同步/更新。...所以只要是跟数据库打交道,我们 Dao 就必不可少!...[mpu8ce33ec.png] 到这里,相信很多朋友会联想到,Dao 模块是负责数据持久化处理 ,而我们 Mybatis 不就是一个持久框架吗?...配置紧密关联,故此我们也称之为 Mapper 接口开发方法,之所以不需要编写实现类原因是其底层创建了 Dao 接口动态代理对象,代理对象本身会构建有 Dao 接口方法体, Dao 代理实现方式

48800

SpringBoot集成mybatis配置

灵活性特点更为适合其 作为技术选型优势; mybatis初期使用比较麻烦,需要各种配置文件、实体类、dao映射关联、还有一大推其它配置。...当然mybatis也发现了这种弊端,初期开发了可以根据表结果自动生产实体类、配置文件和dao代码,可以减轻一部分开发量;后期也进行了大量优化可以使用注解了,自动管理dao和配置文件等,发展到最顶端就是今天要讲这种模式了...,优化主要体现在不需要实现dao实现【只需要定义接口类和方法】,系统会自动根据方法名在映射文件中找对应sql【由namespace和名称坐标确定】。...搬到了这里xml中了 3、编写Dao代码【定义接口】 public interface UserMapper { List getAll(); UserEntity...user_sex、nick_name两个属性在数据库加了下划线和实体类属性名不一致,另外user_sex使用了枚 4、使用 上面三步就基本完成了相关dao开发,使用时候当作普通类注入进入就可以了

2.4K10

从零开始做网站2-springboot整合mybatis

配置 #指定实体类位置,在mapper中就不用写全路径 mybatis.type-aliases-package: com.zjlovelt.entity #映射mapper位置,和dao接口对应...这个主要检查是namespace中名字和其dao接口类是否对应。 检查dao方法名和Mapper.xml中方法名是否一致。...查看mybatisxml路径配置是否正确 3、项目结构问题 springboot项目在启动时会依据启动类所在包逐级向下扫描,如果你dao,service和controller在一个模块中,一定要把他们放到启动类所在目录或者他子目录下...改变理由:之所以选war是因为对war最熟悉,之前工作基本都是这个,对tomcat也很了解,而且war包后面部署好修改代码可以局部更新某一个文件,但是jar就不行了,不过还是选择用jar是因为做这个项目毕竟是为了学习...spring boot目录有点小区别,首先是这个ServletInitializer类没有 具体区别可以参考: https://www.jianshu.com/p/cb5cb5937686 最后,开发计划更新

21730

Mybatis执行流程浅析(附深度文章推荐&面试题集锦)

那如果去参考Mybatis,我们来看看它几个环节是如何设计: [图片] 其实大致思路一样,需要一个数据结构去存储全部变量,通过接口代理方式调用Sqlsession里面内置方法,不同是真正执行者又加了一...Dao 接口里方法,参数不同时,方法能重载吗?...【面试官之你说听】-MyBatis常见面试题(作者:Ccww) 数据库链接中断如何处理 数据库访问底层是通过tcp实现,当链接中断是程序是无法得知,导致程序一直会停顿一段时间在这,最终会导致用户体验不好...如果存在并发操作,那么同时进行了第一步,然后大家都发现没有记录,然后都插入了数据从而造成数据重复 分布式环境中通过Redis分布式锁解决即可,多线程环节下用普通Lock锁解决即可 事务执行过程中宕机应对处理方式...创建SqlSession方法传递ExecutorType类型参数 最后 Myabtis也有其缺点,重复代码实在太多,在这里推荐另一篇文章,SpringBoot & Mybatis代码生成器,解决百分之

51140
领券