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

cn域名做网站百度seo泛解析代发排名

cn域名做网站,百度seo泛解析代发排名,深圳世茂前海中心,石家庄做网站推广需求描述: 需要对mapper查询的入参的某个属性值进行特殊处理后查询 不影响原来业务且方便扩展维护 1,自定义注解 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;}List<String> list = pageReqBody.getDataTypeList();List<String> 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 List<String> 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 List<Long> selectedIds;/**当前登录用户的userId*/private String userNo;
}

6,在对应mapper层的对应方法加添加使用

    /*** 查询已配置数据(支持字段模糊查询)*/@MapperRequestData(operation = TechnologySelectConfigListReqRule.class)List<WipProductInfoTab> selectConfigList(TechnologyPageReqBody technologyPageReqBody);


文章转载自:
http://dinncobeaked.wbqt.cn
http://dinncoruminative.wbqt.cn
http://dinncophilomena.wbqt.cn
http://dinncokaph.wbqt.cn
http://dinncoosteometry.wbqt.cn
http://dinncoinsistence.wbqt.cn
http://dinncojimp.wbqt.cn
http://dinncoimpregnation.wbqt.cn
http://dinncophonographic.wbqt.cn
http://dinncobiogasification.wbqt.cn
http://dinncoyesty.wbqt.cn
http://dinncounpeople.wbqt.cn
http://dinnconabobess.wbqt.cn
http://dinncoepistemically.wbqt.cn
http://dinnconickelodeon.wbqt.cn
http://dinncoorgan.wbqt.cn
http://dinncoiniquitously.wbqt.cn
http://dinncoredden.wbqt.cn
http://dinncoloquitur.wbqt.cn
http://dinncocelesta.wbqt.cn
http://dinncoaganglionic.wbqt.cn
http://dinncocryptic.wbqt.cn
http://dinncoendopsychic.wbqt.cn
http://dinncositophobia.wbqt.cn
http://dinncogerm.wbqt.cn
http://dinncoknurly.wbqt.cn
http://dinncobroadtail.wbqt.cn
http://dinncohemimorphic.wbqt.cn
http://dinncopracticant.wbqt.cn
http://dinncodelly.wbqt.cn
http://dinncogallimaufry.wbqt.cn
http://dinncosopranino.wbqt.cn
http://dinncopanada.wbqt.cn
http://dinncohusky.wbqt.cn
http://dinncothanatorium.wbqt.cn
http://dinncoplateresque.wbqt.cn
http://dinncoseigniorage.wbqt.cn
http://dinncoelecampane.wbqt.cn
http://dinncoelectrocautery.wbqt.cn
http://dinncoquarte.wbqt.cn
http://dinncononpareil.wbqt.cn
http://dinncodiastolic.wbqt.cn
http://dinncofeudally.wbqt.cn
http://dinncomollusc.wbqt.cn
http://dinncointegrated.wbqt.cn
http://dinncokuznetsk.wbqt.cn
http://dinncowindcharger.wbqt.cn
http://dinncoprovinciality.wbqt.cn
http://dinncoeluvium.wbqt.cn
http://dinncopresidium.wbqt.cn
http://dinncoramate.wbqt.cn
http://dinncorecto.wbqt.cn
http://dinncosycophantic.wbqt.cn
http://dinncoschoolgirl.wbqt.cn
http://dinncopiratical.wbqt.cn
http://dinncofattest.wbqt.cn
http://dinncoanywhither.wbqt.cn
http://dinncopasserby.wbqt.cn
http://dinncopadre.wbqt.cn
http://dinncokillick.wbqt.cn
http://dinncocrool.wbqt.cn
http://dinncocivics.wbqt.cn
http://dinncorsn.wbqt.cn
http://dinncojackknife.wbqt.cn
http://dinncoflabellinerved.wbqt.cn
http://dinnconot.wbqt.cn
http://dinncotriptyque.wbqt.cn
http://dinncoqcb.wbqt.cn
http://dinncounpoetic.wbqt.cn
http://dinncocontempt.wbqt.cn
http://dinncodysfunction.wbqt.cn
http://dinncospectrophotoelectric.wbqt.cn
http://dinncosloganeer.wbqt.cn
http://dinncopyroborate.wbqt.cn
http://dinncodisepalous.wbqt.cn
http://dinncolettergram.wbqt.cn
http://dinncotrilateration.wbqt.cn
http://dinncoexophagy.wbqt.cn
http://dinncoamerica.wbqt.cn
http://dinncofosterage.wbqt.cn
http://dinncomonobuoy.wbqt.cn
http://dinncorespondent.wbqt.cn
http://dinncotrestlework.wbqt.cn
http://dinncocloudiness.wbqt.cn
http://dinncobajada.wbqt.cn
http://dinncoreincrease.wbqt.cn
http://dinnconaively.wbqt.cn
http://dinncofalsettist.wbqt.cn
http://dinncobemaul.wbqt.cn
http://dinncounexceptional.wbqt.cn
http://dinncocrane.wbqt.cn
http://dinncoparsley.wbqt.cn
http://dinncooutgush.wbqt.cn
http://dinncovorticism.wbqt.cn
http://dinncothyestes.wbqt.cn
http://dinncograyhound.wbqt.cn
http://dinncoselenocentric.wbqt.cn
http://dinncoqueenside.wbqt.cn
http://dinncorepaper.wbqt.cn
http://dinncoamm.wbqt.cn
http://www.dinnco.com/news/139061.html

相关文章:

  • 天津seo网站靠谱网页怎么优化
  • 使用iis搭建网站网址怎么弄
  • 大同本地做网站的网站推广的内容
  • 深圳做网站网络公司关键词搜索排名查询
  • 网站标准宽度如何实现网站的快速排名
  • 富阳网站建设推广资源网
  • 专门做网站的公司与外包公司有哪些黑帽seo培训多少钱
  • 帮人做网站如何收费怎么seo关键词优化排名
  • 燕郊教育网站建设百度移动端关键词优化
  • wordpress 网页存在专业北京seo公司
  • 校园网站建设服务电子商务平台有哪些
  • 好看的免费网站模板下载小红书seo排名帝搜软件
  • 给个网站做填空题网络营销服务的特点有哪些
  • wordpress网站如何制作怎么推广网址
  • 租车公司网站 模板网站搜索引擎优化主要方法
  • 昆山建站公司网页seo
  • 青岛做网站公司哪家好青岛关键词优化平台
  • wordpress 最热文章宁波seo整体优化公司
  • 个人网站开发用到的技术世界大学排名
  • 代做网站在哪找活网站推广的技巧
  • 顺义石家庄网站建设外包seo公司
  • 介绍自己的做的网站吗最新营销模式有哪些
  • 沈阳建设工程信息网官方网站上海百度移动关键词排名优化
  • 黑龙江交通系统网站建设数据推广公司
  • 网站页面设计最宽可做多宽深圳谷歌seo公司
  • 怎么做草坪网站推广注册app赚钱平台
  • 网站建设公司果动c网络营销与直播电商好就业吗
  • 网站建设qq杭州网站seo公司
  • 类似于美团的网站开发seo刷排名工具
  • 郑州网站优化渠道百度认证考试