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

用帝国做网站怎么样乌克兰网站后缀

用帝国做网站怎么样,乌克兰网站后缀,产品推广软文500字,资阳网站推广需求描述#xff1a; 需要对mapper查询的入参的某个属性值进行特殊处理后查询 不影响原来业务且方便扩展维护 1#xff0c;自定义注解 import java.lang.annotation.*;/*** 针对 mapper层入参 按照一定规则进行特殊处理重新赋值*/ Target(ElementType.METHOD) Retention(Ret…需求描述 需要对mapper查询的入参的某个属性值进行特殊处理后查询 不影响原来业务且方便扩展维护 1自定义注解 import java.lang.annotation.*;/*** 针对 mapper层入参 按照一定规则进行特殊处理重新赋值*/ Target(ElementType.METHOD) Retention(RetentionPolicy.RUNTIME) Documented Inherited public interface MapperRequestData {/*** 指定执行规则的方法默认方法为transferRequestData* return*/String method() default transferRequestData;Class? extends MapperRequestDataInterface operation(); } 2定义动态处理指定业务的接口 /*** 不同的业务场景 其 针对入参 解析处理规则不同须根据自身情况实现该接口* param T*/ public interface MapperRequestDataInterface {void transferRequestData(Object request);} 3定义切面 MapperRequestDataAspect import com.taia.yms.aop.reponse.inter.MapperRequestDataInterface; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.Signature; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; import org.aspectj.lang.annotation.Pointcut; import org.aspectj.lang.reflect.MethodSignature; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import java.lang.reflect.Method;/*** 针对 mapper层入参进行特殊处理*/ Component Aspect public class MapperRequestDataAspect {private static final Logger log LoggerFactory.getLogger(MapperRequestDataAspect.class);//定义pointcut签名Pointcut(execution(* com.taia.yms.mapper.*.*(..)) annotation(com.taia.yms.aop.reponse.MapperRequestData))private void pointCut() {//方法为空仅做签名}//对切点方法进行前置增强就是在调用切点方法前进行做一些必要的操作这就成为增强Before(pointCut())public void getRes(JoinPoint joinPoint){// 获取方法签名Signature signature joinPoint.getSignature();MethodSignature methodSignature (MethodSignature) signature;Method method methodSignature.getMethod();MapperRequestData annotation method.getAnnotation(MapperRequestData.class);Object[] objects joinPoint.getArgs();// 查找并获取注解try{// 读取注解的属性Class? extends MapperRequestDataInterface operation annotation.operation();MapperRequestDataInterface operationInstance operation.getDeclaredConstructor().newInstance();String methoded annotation.method();Method operationMethod operation.getDeclaredMethod(methoded, Object.class);operationMethod.invoke(operationInstance, objects);}catch (Exception e){log.error(类[{}]的方法[{}]执行失败报错:{},annotation.operation().getName(),annotation.method(),e.getMessage());}}} 4定义指定业务指定入参处理逻辑 import com.taia.yms.aop.reponse.inter.MapperRequestDataInterface; import com.taia.yms.entity.reqbody.TechnologyPageReqBody; import org.springframework.util.CollectionUtils; import java.util.List; import java.util.stream.Collectors;public class TechnologySelectConfigListReqRule implements MapperRequestDataInterface {private static final String PREFIX_SRE CONTAINS_;Overridepublic void transferRequestData(Object request) {TechnologyPageReqBody pageReqBody (TechnologyPageReqBody) request;if(pageReqBody null || CollectionUtils.isEmpty(pageReqBody.getDataTypeList())){return;}ListString list pageReqBody.getDataTypeList();ListString collect list.stream().map(v - PREFIX_SRE v).collect(Collectors.toList());pageReqBody.setDataTypeList(collect);} } 5相关对象类 import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.Accessors; import com.taia.yms.entity.ExportPageReqBody; import java.util.List;Data AllArgsConstructor NoArgsConstructor Accessors(chain true) public class TechnologyPageReqBody extends ExportPageReqBody{private Long id;private String fab;private String productId;private String technology;private ListString dataTypeList;private String createdByName;private String lastUpdatedByName;// ALL、为空、不为空 all isNull isNotNullprivate String isNullable; } import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.Accessors; import java.util.List;/*** ClassName ExportPageReqBody* 导出 和 分页数据**/ Data AllArgsConstructor NoArgsConstructor Accessors(chain true) public class ExportPageReqBody {/**页码*/ApiModelProperty(example 1)private Integer pageNum 1;/**页面大小*/ApiModelProperty(example 10)private Integer pageSize 10;/**1-导出excel 0-导出CSV*/private String isExcel;/**1-只导出表头0或空-导出表头和数据*/private String isEmpty;/**1-配置数据 0或空-待添加配置数据*/private String isConfig;/**选择导出有值时只导出选中的id*/private ListLong selectedIds;/**当前登录用户的userId*/private String userNo; } 6在对应mapper层的对应方法加添加使用 /*** 查询已配置数据(支持字段模糊查询)*/MapperRequestData(operation TechnologySelectConfigListReqRule.class)ListWipProductInfoTab selectConfigList(TechnologyPageReqBody technologyPageReqBody);
http://www.dnsts.com.cn/news/245770.html

相关文章:

  • 网站建设与设计摘要陕西正天建设有限公司网站
  • 网站建设系统优势wordpress网页制作
  • 建设企业网银u盾网站打不开推荐网站建设服务
  • 青海商城网站建设网站分为
  • 昆山网站设计化妆品购物网站模板
  • 比较好的海报设计网站网站建设案例收费情况
  • 网站推广运营广州安全教育平台登录入口账号
  • 杭州高端网站开发wordpress退出函数
  • 无锡网站制作哪家正规室内设计效果图多少钱
  • 如何制作一个网站做淘宝券国内响应式布局网站
  • 网站用什么技术做的龙之向导外贸网站怎么样
  • 上海微信网站公司哪家好响应式布局页面
  • 网站建设与维护蒋勇从小制作小灯笼
  • 网站右侧悬浮代码查权重网站
  • 古蔺网站建设网站外链什么时候做
  • 用模板网站做h5宣传页多少钱关于招聘的网站开发图
  • 设计网站printerestwordpress头部加导航
  • 哪里有网站建设开发公司培训课程表
  • 制作一个网站大概需要多少钱河北建设工程信息网停用公告
  • 农村学校资源网站建设与研究工业产品设计效果图
  • 网站开发需求调研响应式网站应该怎么做
  • 成都建设网站哪家好网站建设与管理职责
  • 手机网站模板更换方法天津小型企业网站设计
  • 刷网站百度关键词软件h5手机模板网站
  • c#可以做网站吗网站规划教学设计
  • 沈阳做微网站的公司自己做副业可以抢哪个网站
  • 网站域名不备案用wordpress建立学校网站
  • 模板建站广团黄石做网站公司
  • 网站建设招聘兼职阿里云免费服务器
  • 网站建设公司东莞高手总结wordpress函数