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

在网站上上传文件需要怎么做品牌建设成绩

在网站上上传文件需要怎么做,品牌建设成绩,sae wordpress 图片,重庆最大的本地交流网站1. ApplicationRunner接口 用法#xff1a; 类型#xff1a; 接口 方法#xff1a; 只定义了一个run方法 使用场景#xff1a; springBoot项目启动时#xff0c;若想在启动之后直接执行某一段代码#xff0c;就可以用 ApplicationRunner这个接口#xff0c;并实现接口…1. ApplicationRunner接口 用法 类型 接口 方法 只定义了一个run方法 使用场景 springBoot项目启动时若想在启动之后直接执行某一段代码就可以用 ApplicationRunner这个接口并实现接口里面的run(ApplicationArguments args)方法方法中写上自己的代码逻辑。也就是spring容器启动完成之后就会紧接着执行这个接口实现类的run方法。 run方法的参数 ApplicationArguments可以获取到当前项目执行的命令参数。(比如把这个项目打成jar执行的时候带的参数可以通过ApplicationArguments获取到) Component //此类一定要交给spring管理 public class ConsumerRunner implements ApplicationRunner{Overridepublic void run(ApplicationArgumers args) throws Exception{//代码System.out.println(需要在springBoot项目启动时执行的代码---);} }若有多个代码段需要执行可用Order注解设置执行的顺序。 在同一个项目中可以定义多个ApplicationRunner的实现类他们的执行顺序通过注解Order注解或者再实现Ordered接口来实现。 Order注解 如果有多个实现类而你需要他们按一定顺序执行的话可以在实现类上加上Order注解。Order(value整数值)。SpringBoot会按照Order中的value值从小到大依次执行。 order 使用注解方式使bean的加载顺序得到控制Order标记定义了组件的加载顺序值越小拥有越高的优先级可为负数。值越小越先被加载。 Order(-1) 优先于 Order(0) Order(1) 优先于 Order(2) Component //此类一定要交给spring管理 Order(value1) //首先执行 public class ConsumerRunnerA implements ApplicationRunner{Overridepublic void run(ApplicationArgumers args) throws Exception{//代码System.out.println(需要在springBoot项目启动时执行的代码1---);} }Component //此类一定要交给spring管理 Order(value2) //其次执行 public class ConsumerRunnerB implements ApplicationRunner{Overridepublic void run(ApplicationArgumers args) throws Exception{//代码System.out.println(需要在springBoot项目启动时执行的代码2---);} }Component注解 将类注入到spring容器中。 参考链接https://blog.csdn.net/hc1285653662/article/details/122445495 2. CommandLineRunner接口 用法 在容器启动成功后的最后一步回调类似开机自启动 写一个类实现CommandLineRunner接口将该类注入到Spring容器中 可以通过Order注解属性指定数字越小表示优先级越高或者Ordered接口来控制执行顺序。 EX自定义两个类实现CommandLineRunner接口实现run方法在run方法中添加处理逻辑。 Order(5) Component public class AppStartReport implements CommandLineRunner {Overridepublic void run(String... args) throws Exception {System.out.println(AppStartReport : 项目成功启动------------------);} }Order(2) Component public class AppStartReport2 implements CommandLineRunner {Overridepublic void run(String... args) throws Exception {System.out.println(AppStartReport2 : 项目成功启动------------------);} }启动效果AppStartReport2 较AppStartReport 先执行 3. ApplicationRunner接口与CommandLineRunner接口的区别 区别 CommandLineRunner的方法参数是原始的参数未做任何处理ApplicationRunner的参数为ApplicationArguments对象是对原始参数的进一步封装。ApplicationArguments是对参数主要针对main方法做了进一步的处理可以解析–namevalue的参数我们就可根据name获取value。 Component public class AppStartReport3 implements ApplicationRunner {Overridepublic void run(ApplicationArguments args) throws Exception {System.out.println(AppStartReport3 : 项目成功启动参数为: Arrays.asList(args.getSourceArgs()));} }SpringBootApplication public class App {public static void main(String[] args) {SpringApplication application new SpringApplication(App.class);ConfigurableApplicationContext context application.run(aaa, bbb);context.close();} }自行指定参数后执行效果如下 也可以在Program arguments选项框设置初始值“–keyvalue“形式如“–argnameccc”如下图所示 SpringBootApplication public class App {public static void main(String[] args) {SpringApplication application new SpringApplication(App.class);ConfigurableApplicationContext context application.run(args);context.close();} }启动器传入参数为main方法的参数args效果如下 ApplicationArguments 源码分析 public interface ApplicationArguments {String[] getSourceArgs();SetString getOptionNames();boolean containsOption(String name);ListString getOptionValues(String name);ListString getNonOptionArgs();}资源参数分为两种一种是在调用run方法时传入的”aaa”,”bbb”一种是配置的系统参数即main方法的args参数”ccc”。 首先getSourceArgs方法可以获取到所有参数可以是自己传入的参数也可以是配置的系统参数 getNonOptionArgs方法即可获得我们传入的参数”aaa”,”bbb”。 其余3个方法可获得系统参数。实际用法如下 EX SpringBootApplication public class App {public static void main(String[] args) {SpringApplication application new SpringApplication(App.class);ConfigurableApplicationContext context application.run(args);ApplicationArguments arguments context.getBean(ApplicationArguments.class);System.out.println(参数个数 arguments.getSourceArgs().length);System.out.println(Non OptionArgs arguments.getNonOptionArgs());System.out.println(Option Names arguments.getOptionNames());System.out.println(获取key为argname的value值 arguments.getOptionValues(argname));System.out.println(是否包含key为argname的参数 arguments.containsOption(argname));context.close();} }输出效果 参考链接https://blog.csdn.net/qq_35006663/article/details/102264172
http://www.hkea.cn/news/14585263/

相关文章:

  • 莆田中小企业网站制作网页模板免费下载平台
  • 到国外建网站英语培训学校网站建设多少钱
  • 如何让做网站网站建设肆金手指排名7
  • 网站建设的标准网站建设 是否计入固定资产
  • 网站 建设初步动漫制作技术专业入门
  • 电子商务网站建设合同标准范文在线商城网站制作
  • 如何申请建设网站首页达州达县网站建设
  • 网站内容如何自动关联新浪微博松岗专业做网站公司
  • 网站建设 怎么跑业务网址大全软件下载安装
  • 南宁网站建设公司哪家专业WordPress字库压缩
  • 义乌商城网站开发苏州网站开发公司兴田德润怎么联系
  • 做合约交易哪个网站好哪里可以找到免费的网站
  • 提高网站的权重的最佳方法昌吉市建设局网站
  • 广东石油化工建设集团公司网站wordpress视频自动播放
  • 宁波网站建设公司优选亿企邦西安企业模板建站
  • 什么叫精品网站建设企业网站php源码免费下载
  • 南宁美丽南方官方网站建设意见win2003 wordpress
  • 网站建设如何创建框架页面股权众筹网站建设
  • 垂直类门户网站百度速页建站
  • 安康有建网站的公司吗seo网站优化培训多少价格
  • 合伙做网站怎么分配股权网站改版建设 有哪些内容
  • 江西省建设厅网站资质升级查询互联网公司排名前十名名单
  • 网站被搜索引擎收录建站视频网站
  • 建设银行官方网站手机版朝阳商城网站建设
  • 信阳市商务局网站加油站建设公告广州各类外贸网站
  • 宿州网站建设多少钱曲靖手机网站建设
  • 360免费建站空间陕西购物商城网站建设
  • 教育网站建设需求文档泗水网站建设ys178
  • 广州计算机软件公司排名外贸站seo
  • 厦门外贸网站建设做网站实训报告