当前位置: 首页 > news >正文

卢松松网站模板做移动网站优化优

卢松松网站模板,做移动网站优化优,网页设计与制作课程标准中职,公司核名查询官网[公共字段自动填充] 核心#xff1a;在切面类中捕获需要填充公共字段的 Mapper 方法#xff0c;方法上使用注解加以标识#xff0c;通过反射拿到需要填充的字段赋值方法#xff0c;进行赋值操作 1、自定义注解 AutoFill Target(ElementType.METHOD) Retention(RetentionPo…[公共字段自动填充] 核心在切面类中捕获需要填充公共字段的 Mapper 方法方法上使用注解加以标识通过反射拿到需要填充的字段赋值方法进行赋值操作 1、自定义注解 AutoFill Target(ElementType.METHOD) Retention(RetentionPolicy.RUNTIME) public interface AutoFill {//数据库操作类型UPDATE INSERTOperationType value(); }2、枚举对象类 public enum OperationType {/*** 更新操作*/UPDATE,/*** 插入操作*/INSERT }3、自定义切面 AutoFillAspect Aspect Component Slf4j public class AutoFillAspect {/*** 切入点*/Pointcut(execution(* com.sky.mapper.*.*(..)) annotation(com.sky.annotation.AutoFill))public void autoFillPointCut(){}/*** 前置通知在通知中进行公共字段的赋值*/Before(autoFillPointCut())public void autoFill(JoinPoint joinPoint){log.info(开始进行公共字段自动填充...);//获取到当前被拦截的方法上的数据库操作类型MethodSignature signature (MethodSignature) joinPoint.getSignature();//方法签名对象AutoFill autoFill signature.getMethod().getAnnotation(AutoFill.class);//获得方法上的注解对象OperationType operationType autoFill.value();//获得数据库操作类型//获取到当前被拦截的方法的参数--实体对象Object[] args joinPoint.getArgs();if(args null || args.length 0){return;}//约定好放在第一个参数位置Object entity args[0];//准备赋值的数据LocalDateTime now LocalDateTime.now();Long currentId BaseContext.getCurrentId();//就是获取修改人的id值不同项目不同的获取方法//根据当前不同的操作类型为对应的属性通过反射来赋值if(operationType OperationType.INSERT){//为4个公共字段赋值try {Method setCreateTime entity.getClass().getDeclaredMethod(AutoFillConstant.SET_CREATE_TIME, LocalDateTime.class);Method setCreateUser entity.getClass().getDeclaredMethod(AutoFillConstant.SET_CREATE_USER, Long.class);Method setUpdateTime entity.getClass().getDeclaredMethod(AutoFillConstant.SET_UPDATE_TIME, LocalDateTime.class);Method setUpdateUser entity.getClass().getDeclaredMethod(AutoFillConstant.SET_UPDATE_USER, Long.class);//通过反射为对象属性赋值setCreateTime.invoke(entity,now);setCreateUser.invoke(entity,currentId);setUpdateTime.invoke(entity,now);setUpdateUser.invoke(entity,currentId);} catch (Exception e) {e.printStackTrace();}}else if(operationType OperationType.UPDATE){//为2个公共字段赋值try {Method setUpdateTime entity.getClass().getDeclaredMethod(AutoFillConstant.SET_UPDATE_TIME, LocalDateTime.class);Method setUpdateUser entity.getClass().getDeclaredMethod(AutoFillConstant.SET_UPDATE_USER, Long.class);//通过反射为对象属性赋值setUpdateTime.invoke(entity,now);setUpdateUser.invoke(entity,currentId);} catch (Exception e) {e.printStackTrace();}}} }4、在Mapper接口的方法上加入 AutoFill 注解 Mapper public interface CategoryMapper {/*** 插入数据* param category*/AutoFill(value OperationType.INSERT)void insert(Category category);/*** 根据id修改分类* param category*/AutoFill(value OperationType.UPDATE)void update(Category category);}
http://www.ho-use.cn/article/10817541.html

相关文章:

  • 同城信息网站建设wordpress支持md么
  • 找在家做的兼职上什么网站好wordpress 公告栏
  • 快速设计一个网站trswcm网站建设
  • 社保网站减员申报怎么做深圳生产型企业网站建设专业
  • 网站推广经验杂谈dj音乐网站建设
  • 上海哪家做网站好微信微网站开发策划
  • 龙华做网站多少钱wordpress设置新窗口打开链接
  • 给别人做网站挣钱满天星建设网站
  • 做招标代理应关注的网站庆阳工程建设网站
  • 长沙官网网站建设哪家好做网站怎么做的
  • 换空间对网站的影响百度指数明星搜索排名
  • 买医疗产品的网站建设标志设计的三要素
  • ie浏览器哪个做网站稳定网站开发维护需要哪些岗位
  • 网站建设项目开发书连江网站建设
  • 做百度网站排名软件最大的免费网站建设
  • 杭州集团网站建设方案项目组网站建设方案书
  • 网站的ftp服务器微信crm系统软件
  • 夸克看网站要钱吗广告设计与制作模板
  • 做网站要买什么企业做定制网站的好处
  • 网站 建设 汇报做网站背景图怎么插
  • 关于开展全县中小学校网站群建设的请示报告做彩票游戏网站违法吗
  • 国外网站如何做seo网站建设方案 下载
  • 湖北省城乡和住房建设厅网站潍坊网站建设官网
  • 免费建站并且绑定域名网页版微信登录不了怎么解决
  • 比较好的网站设计公司做360手机网站快
  • 重庆模板建站公司福州seo服务商
  • qq邮箱官方网站wordpress 腾讯课堂
  • 上海普陀网站建设网站开发好公司
  • 昆明 网站搭建html可视化编辑软件
  • 网站浮动代码心雨在线高端网站建设网页设计