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

网站开发之前前后端不分离网站做多少层级

网站开发之前前后端不分离,网站做多少层级,wordpress双栏主题开源,wordpress乐器模版简介 其实前面文章我们已经介绍过了如何定义spring表达式的解析模版,但是那是直接使用表达式api的形式,对于使用spring的同学来说,更优雅的方式就是可以自定义一个扩展去修改 本文就是介绍如何通过Spring的扩展点修改表达式解析模版 自定义…

简介

其实前面文章我们已经介绍过了如何定义spring表达式的解析模版,但是那是直接使用表达式api的形式,对于使用spring的同学来说,更优雅的方式就是可以自定义一个扩展去修改

本文就是介绍如何通过Spring的扩展点修改表达式解析模版

自定义解析模版

首先AbstractBeanFactory就有有一个解析器BeanExpressionResolver,这个前面文件介绍过,默认是一个StandardBeanExpressionResolver

public abstract class AbstractBeanFactory extends FactoryBeanRegistrySupport implements ConfigurableBeanFactory {private BeanExpressionResolver beanExpressionResolver;public BeanExpressionResolver getBeanExpressionResolver() {return this.beanExpressionResolver;}
}

而StandardBeanExpressionResolver恰好也有修改解析版本的方法

public class StandardBeanExpressionResolver implements BeanExpressionResolver {public void setExpressionPrefix(String expressionPrefix) {this.expressionPrefix = expressionPrefix;}public void setExpressionSuffix(String expressionSuffix) {this.expressionSuffix = expressionSuffix;}
}

那么其实就是对BeanFactory的一个扩展,在spring中针对于BeanFactory的后置处理器就是 BeanFactoryPostProcessor

下面我们就来实现一下

@Component
public class SpElPostProcessor implements BeanFactoryPostProcessor {@Overridepublic void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {BeanExpressionResolver beanExpressionResolver = beanFactory.getBeanExpressionResolver();if (beanExpressionResolver instanceof StandardBeanExpressionResolver) {StandardBeanExpressionResolver resolver = (StandardBeanExpressionResolver) beanExpressionResolver;// 修改resolver.setExpressionPrefix("&{");resolver.setExpressionSuffix("}");}}
}

修改表达式模版为 &{}

测试

@ComponentScan({"com.shura"})
public class AppConfig {
}public static void main(String[] args) {AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);BeanExpressionResolver beanExpressionResolver = context.getBeanFactory().getBeanExpressionResolver();Object result = beanExpressionResolver.evaluate("&{appConfig}", new BeanExpressionContext(context.getBeanFactory(), null));System.out.println(result);
}输出
com.shura.config.AppConfig@3e58a80e

欢迎关注,学习不迷路!

http://www.hyszgw.com/news/48806.html

相关文章:

  • 怎么才能学网页设计网站手机端优化
  • 摄影网站怎么做数据库适合在家做的电商
  • 重庆网站设计费用时尚flash网站
  • 单页网站制作程序餐饮品牌形象设计案例
  • 一个大型的网站建设长春网络公司哪家最好
  • 乐清网站开发沈阳seo优化排名公司
  • 网站外链接自己可以怎么做设计师常用的设计论坛
  • 吉林响应式网站价格网站开发如何适应手机现实要求
  • 做影视网站须要注意什么网站建设软文
  • 域名跳转网站如何自建企业网站
  • 建设网站的需要的工具极简个人网站模板
  • 和龙市建设局网站手机做推广比较好的网站
  • 昆明移动端网站建设职业生涯规划大赛含金量高吗
  • 武大网站建设深圳小程序制作流程
  • 什么网站可以做数据调查中企动力销售一个月能挣多少
  • 如何做大型网站西安网站制作顶尖
  • 单位还能建设网站吗建网站的公司服务
  • 做触屏网站郑州做企业网站哪家好
  • 哈尔滨手机网站建设报价网站流量来源
  • 怎样把网站做的高大上全球搜索引擎网站
  • 做网站属于广告费吗网站开发地图板块浮动
  • 淄博网站建设专家品牌微信网站开发
  • 上海网站建设好处服务商英文
  • 网站建设对企业的发展学习网站建设优化
  • 临泉县建设局网站wap 网站的盗链问题
  • 可信网站认证 费用在线数据分析工具
  • 使用vue.js做企业网站移动端网站如何开发
  • 创建自由摄影师的网站内容深圳视频制作公司
  • 网站制作网站维护鹿城做网站
  • 网站制作软件培训wordpress 字号