You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.3 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

#框架 mybatis-plus

##常用

  • 生成java 类

    使用 CustomGenerator.java 自动生成 ,里面的表名等参数自己修改

    需要注意 xml 文件要拷贝到 resource 或者扫描的时候自己修改位置本项目是直接拷贝到resource mapper下 注意如果 xml 开启了二级缓存 ,报错的话需要注释掉

  • 常用的对象注解

     mybatis-plus注解
      @TableField(exist = false)
     private String name;

     @TableField("name")
     private String name;
  Jackson 注解
  @JsonIgnore
  private String name;

  @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")   入
   @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") 出
   private Date updateTime
  - 在线用户统计
          实现方式不记录在mysql中 redis  bitmap  。 t_user 表的 id作为偏移量   记录数据的方法在网关层  (其他的信息自己百度关键字)
      1. 计算每条记录(所有的用户登录信息就是一条记录) 的登录用户数 key 就是那条redis的记录
            ``` jedis.bitcount key ```
       2. 计算活跃度 假设 7天连续登录
              ``` bitSet =  bitSet.and(bitSet2);    bitSet.and(bitSet2);  bitSet.and(bitSet3)。。。。 ```
           求合集就是7天连续登录的数据了就可以求数量判断某个用户是否是活跃用户 (求所有的活跃用户好像会麻烦点)

           每天每个时段(为了实现SB需求做的)的数据可能会有很多,注意定时清理, 每天可能会有24条记录产生
  - doc 文件生成
      1. 早先的实现方案 doc 直接 改格式成xml ,替换里面的数据  例子:  报表.doc 改成 报表.xml  增加freemark数据 ,生成文件的时候生成  名字改回报表.doc
       2. 当前实现方案, docx 文件解压 ,替换里面的 document.xml 文件,重新生成 docx 文件
#公用
   - 异常处理

       统一异常处理 在 包  com.charge.user.advice 下

   - log报错问题(get set 问题也是一样)
      引入@Slf4j 注解导致,本身执行没问题。 只是IDE 提示问题可file -setting -plugin 中搜索 lom  安装lomk插件