实用API设计案例
艺术生永远不要把学技巧放在第一位,而要把怎么思考放在第一位。——灵遁者 今天为了偷懒,写了两个函数 1234567891011121314151617/** * AR模式in查询 * * @param page 分页参数 * @param ids ids * @param type Class * @return com.baomidou.mybatisplus.extension.plugins.pagination.Page<T> * @author <achao1441470436@gmail.com> * @since 2021/8/16 16:21 */@SneakyThrowspublic static <T extends BaseEntity<T>> IPage<T> selectPageByIds(IPage<T> page, List<?> ids, Class<T> type) { if (ids.isEmpty()) { ...
mybatis-plus不使用spring
只有把抱怨环境的心情,化为上进的力量,才是成功的保证。——罗曼·罗兰 代码如下: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667package com.ruben.simplescaffold;import com.baomidou.mybatisplus.core.MybatisConfiguration;import com.baomidou.mybatisplus.core.MybatisSqlSessionFactoryBuilder;import com.baomidou.mybatisplus.core.toolkit.Wrappers;import com.ruben.simplescaffold.entity.UserDetail;import com.ruben.simplescaffold.mapper.UserDetailMapper;import or...
uniapp清除缓存
每一幅作品,都是艺术家对自己生命的延伸。——灵遁者 清楚缓存的函数为uni.clearStorage(); 文档 以及还有计算缓存大小的函数 1234567uni.getStorageInfo({ success: function (res) { console.log(res.keys); console.log(res.currentSize); console.log(res.limitSize); }}); success 返回参数说明 参数 类型 说明 keys Array<String> 当前 storage 中所有的 key currentSize Number 当前占用的空间大小, 单位:kb limitSize Number 限制的空间大小, 单位:kb 文档
jquery和springBoot文件上传
友情在过去的生活里,就像一盏明灯,照彻了我的灵魂,使我的生存有了一点点光彩。——巴金 首先是后端代码: 写入文件工具类 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253package com.ruben.simplescaffold.utils;import lombok.extern.slf4j.Slf4j;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.util.Collections;import java.util.Optional;import java.util.Spliterator;import java.util.function.Predicate;import java.util.stream.Stream;/** * 文件工具类 * * @author <achao144...
ActiveRecord
理想主义者是不可救药的:如果他被扔出了他的天堂,他会再制造出一个理想的地狱。——尼采 MybatisPlus支持ActiveRecord形式调用,实体类只需继承Model类即可进行强大的CRUD操作 效果如下: 12345678910111213141516171819202122232425262728293031323334import com.baomidou.mybatisplus.extension.activerecord.Model;import lombok.Data;import lombok.EqualsAndHashCode;import java.io.Serializable;@Data@Builder@ToString@Accessors@NoArgsConstructor@AllArgsConstructor@EqualsAndHashCode(callSuper = true)public class UserDetail extends Model<UserDetail> implements Serializable {...
mvc配置指定参数处理
人原来是这样健忘的,同样的一个人在短短的时间内竟然变换了两个面目,过后他又想,大概正是因为这样健忘,所以才能够在痛苦中生活下去罢。——巴金 今天遇到这样一个情况,我想使用parameter也就是?orders=[{"column":"sort","asc":false}]的方式传递参数 但我很多接口都是生成的如下写法,并且排序使用的List<OrderItem>这样的对象数组去接收 因此我需要进行全局配置,所以就有了如下代码: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110package com.ruben....
mybatis-plus随机查询工具类(二)
当真理还正在穿鞋的时候,谎言就能走遍半个世界。——马克吐温 之前写过一个,最近感觉不好用 然后写了一个更优雅的 12345678910111213141516171819/** * 随机查询 * * @param mapper 持久层DAO * @param limit 随机条数 * @return java.util.List<T> * @author <achao1441470436@gmail.com> * @since 2021/8/10 15:30 */public static <T> List<T> getAny(BaseMapper<T> mapper, T condition, Integer limit) { LambdaQueryWrapper<T> wrapper = Wrappers.lambdaQuery(condition); Integer total = mapper.selectCount(wrapper); if (limit == nu...
mvc配置fastjson序列化枚举
怯懦囚禁人的灵魂,希望可以令你感受到自由,强者自救,圣者渡人。——《肖申克的救赎》 我们可以使用SerializerFeature.WriteEnumUsingToString去完成枚举的序列化操作: 例如我这里某对象属性为枚举类型 我们当使用该POJO接收参数时,我们如果手动转换的话比较麻烦 我们配置如下的后就可以直接传入枚举常量的名字进行映射 例如我此处 最后传入type=INDEX_SHUFFLE,成功完成映射 完整代码 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475package com.ruben.zsxh.config;import com.alibaba.fastjson.serializer.SerializeConfig;import com.alibaba.fastjson.serializer.Serializer...
MybatisPlus通用枚举
胡马依北风,越鸟巢南枝。一一《古诗十九首》 在项目开发中,经常数据库中的一个字段对应一个枚举 对于这些枚举,我们要使用数据库将他们的值映射起来 MybatisPlus为我们提供了优雅的解决方案 只需要配置中添加枚举处理器,开启通用枚举支持 12345678910mybatis-plus: #指定Mybatis的Mapper文件 mapper-locations: classpath:mappers/*xml #指定Mybatis的实体目录 type-aliases-package: com.ruben.pojo.po configuration: # 开启mybatis日志 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 开启通用枚举支持,默认使用ordinalType default-enum-type-handler: org.apache.ibatis.type.EnumOrdinalTypeHandler 然后如果是对于一些简单的枚举,例如使用ordinal和数据库的...
屏蔽词过滤器
黑发不知勤学早,白首方恨读书迟。 ——颜真卿 我们可能想使用本地配置词库、过滤器的方式去做全局屏蔽词处理 这里针对三种参数情况 1.requestParam传参:http://localhost:8080/test?keywords=屏蔽词2号 2.requestBody传参:请求体内传json格式的数据,请求头的Content-Type为application/json 3.pathvariable传参:http://localhost:8080/test/屏蔽词3号 这三种应该概括了绝大多数情况下参数传递与接收 代码如下: 首先是过滤器 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394package com.ruben.simplescaffold.filter;im...
