- 博客(7)
- 收藏
- 关注
原创 MybatisPlus-2
会在底层帮我们自动修改CRUD语句。我们只需要在yaml文件中配置逻辑删除的字段名称和值即可。因此,不太推荐采用逻辑删除功能,如果数据不能删除,可以采用把数据迁移到其它表的办法。点击OK保存,然后再次点击Idea顶部菜单中的other,然后选择。首先需要配置数据库地址,在Idea顶部菜单中,找到。SQL中全都需要对逻辑删除字段做判断,影响查询效率。会导致数据库表垃圾数据越来越多,从而影响查询效率。,枚举中的哪个字段的值作为数据库值。并且,在UserStatus枚举中通过。,其中的一些静态方法与。
2025-04-30 11:58:01
393
原创 MybatisPlus-1
在2.1.2案例中,这种写法在某些企业也是不允许的,因为SQL语句最好都维护在持久层,而不是业务层。就当前案例来说,由于条件是in语句,只能将SQL写在Mapper.xml文件,利用foreach来生成动态SQL。这实在是太麻烦了。假如查询条件更复杂,动态SQL的编写也会更加复杂。所以,MybatisPlus提供了自定义SQL功能,可以让我们利用Wrapper生成查询条件,再结合Mapper.xml编写SQL。
2025-04-29 13:36:29
1359
原创 苍穹外卖学习day 5
Redis ---- 基于的结构数据库基于存储,读写性能高适合存储数据企业应用广泛Redis服务默认没有配置密码,需要在redis.windows.conf配置文件中设置密码。寻找到这行代码,将前面的#注释去掉,在红框圈中即 requirepass的后面设置自己的密码。其中key是字符串类型,value有5种常用的数据类型字符串 string:普通字符串,Redis中最简单的数据类型哈希 hash:也叫散列,类似于HashMap列表 list按照插入顺序排序,
2025-03-27 18:29:03
1662
原创 苍穹外卖学习day 4
当前端传入一个字符串数据例如 1,2,3 而这代表三个不同的id,若使用String类型来接收还需要自行进行处理将其分隔开。所以我们可以使用mvc框架提供的方法来解决,添加 @RequestParam 注解即可。因为获取到的是一个集合,删除数据时可以通过遍历获取其中的值然后根据值来到数据库删除对应数据,但是这么做会频繁执行sql语句效率低下。可以上传一个集合,在sql语句中使用foreach遍历这样无论要删除几条数据sql语句都是只固定执行两次。
2025-03-25 21:11:22
174
原创 苍穹外卖学习day 3
在从表中插入数据时需要获取主表的主键值,通过useGeneratedKeys="true"返回sql语句执行后的主键值 keyProperty="id"赋给id。解决方法:通过操作类型先将字段进行区分,通过面向切面编程统一拦截mapper而后统一进行赋值,但是并不需要拦截所有方法,所以需要对需要被拦截的方法添加注解。涉及多表操作使用逻辑外键,在所定义的具有原子性方法上需要添加@Transactional注解,并在启动项里开启事务注解。自定义注解AutoFill,用于标识需要进行公共字段自动填充的方法。
2025-03-24 21:39:23
894
原创 苍穹外卖学习day 2
客户端发起的每一次请求都是一个单独的线程,那么就可以使用ThreadLocal来解决从当前请求中获取到当前用户id的问题,因为在线程的生命周期内共享同一份存储空间,在拦截器中可以将id传到存储空间去,那么调用service方法时就可以将空间内的id取出。使用DTO实体是为了方便接收前端传入的数据,但DTO并不包含entity实体内的全部元素,所以在service实现里还是建议新建一个entity对象并将前端传来的数据拷贝进来,而后手动补齐剩下元素内的数据。是将左侧数据拷贝入右侧,注意顺序。
2025-03-23 21:43:51
703
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人