关于mybatis框架删除时不更新update_time字段问题

9 篇文章 0 订阅
2 篇文章 0 订阅

在使用mybatis框架时,在封装interceptor拦截器的时候,都是基于实体类进行封装,因此天然的对删除方法不生效,因为删除通常都是直接基于id去做删除实现的。

我在网上也找了几种方法,今天就大概总结一下:

第一种:就是自己去封装一个拦截器,专门拦截delete请求,重新把更新时间做一次封装

第二种:就是在删除的时候,把参数封装成实体类去做

第三种:把数据库时间字段设置为动态自动更新

ALTER TABLE s_org
MODIFY COLUMN update_time TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间' ;

我用的是mysql数据库,用第三种方法就能解决问题,第一种和第二种有人实现了,可以评论互相讨论哈。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,留言功能的数据库表设计如下: - 留言表 message | 字段名 | 类型 | 说明 | | ------ | -------- | -------- | | id | int | 主键 | | content| varchar | 留言内容 | | create_time | datetime | 创建时间 | | update_time | datetime | 更新时间 | - 回复表 reply | 字段名 | 类型 | 说明 | | ------ | -------- | -------- | | id | int | 主键 | | message_id | int | 留言表主键 | | content| varchar | 回复内容 | | parent_id | int | 父级回复ID,若为0则表示是针对留言的回复 | | create_time | datetime | 创建时间 | | update_time | datetime | 更新时间 | 接下来,我们可以按照以下步骤实现留言功能: 1. 创建Maven项目,引入SpringMVC和MyBatis的相关依赖。 2. 创建数据库,并在MyBatis中配置数据源和SQL映射文件。 3. 创建实体类Message和Reply,用于映射数据库中的表和字段。 4. 创建DAO层接口MessageDao和ReplyDao,并分别实现查询所有留言和所有回复的方法。 ``` public interface MessageDao { List<Message> findAllMessages(); } public interface ReplyDao { List<Reply> findAllReplies(); } ``` 5. 创建Service层接口MessageService和ReplyService,并分别调用DAO层方法实现查询所有留言和所有回复的功能。 ``` public interface MessageService { List<Message> findAllMessages(); } @Service public class MessageServiceImpl implements MessageService { @Autowired private MessageDao messageDao; @Override public List<Message> findAllMessages() { return messageDao.findAllMessages(); } } public interface ReplyService { List<Reply> findAllReplies(); } @Service public class ReplyServiceImpl implements ReplyService { @Autowired private ReplyDao replyDao; @Override public List<Reply> findAllReplies() { return replyDao.findAllReplies(); } } ``` 6. 创建Controller层,并注入Service层依赖,实现查询所有留言和所有回复的接口。 ``` @RestController @RequestMapping("/message") public class MessageController { @Autowired private MessageService messageService; @GetMapping("/findAllMessages") public List<Message> findAllMessages() { return messageService.findAllMessages(); } } @RestController @RequestMapping("/reply") public class ReplyController { @Autowired private ReplyService replyService; @GetMapping("/findAllReplies") public List<Reply> findAllReplies() { return replyService.findAllReplies(); } } ``` 7. 在Web.xml中配置DispatcherServlet,并在Spring配置文件中开启组件扫描和注解驱动。 至此,我们完成了基于SpringMVC和MyBatis框架的留言功能的设计和实现。对于查询所有留言和所有回复的接口,我们可以通过以下URL进行访问: - 查询所有留言:http://localhost:8080/message/findAllMessages - 查询所有回复:http://localhost:8080/reply/findAllReplies

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值