欢迎访问 生活随笔!

凯发ag旗舰厅登录网址下载

当前位置: 凯发ag旗舰厅登录网址下载 > 前端技术 > javascript >内容正文

javascript

springbatch处理器scriptitemprocessor执行脚本语言详解 -凯发ag旗舰厅登录网址下载

发布时间:2025/1/21 javascript 21 豆豆
凯发ag旗舰厅登录网址下载 收集整理的这篇文章主要介绍了 springbatch处理器scriptitemprocessor执行脚本语言详解 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

目录

scriptitemprocessor介绍

scriptitemprocessor方法和属性介绍

scriptitemprocessor实战


scriptitemprocessor介绍

脚本语言通常更易于创建和修改,所以对于需要频繁修改的组件,脚本能够提供很大的灵活性。通过在itemprocessor中执行脚本语言,springbatch把这种灵活性注入了批处理作业。scriptitemprocessor允许设定一段脚本,从而接收itemprocessor的输入,返回的对象是itemprocessor的输出。 

scriptitemprocessor方法和属性介绍

以下主要scriptitemprocessor介绍下常用的两种方法

  • setscript(resource resource)执行脚本路径
public void setscript(resource resource) {assert.notnull(resource, "the script resource cannot be null");this.script = new resourcescriptsource(resource);}
  • setitembindingvariablename(string itembindingvariablename)执行脚本时候绑定属性名称,默认值为item
public void setitembindingvariablename(string itembindingvariablename) {this.itembindingvariablename = itembindingvariablename;}

scriptitemprocessor实战

小需求是:把cafecat文件地址内容转换为大写。

  • 定义uppercase.js function cat(){} var cat = new cat(); cat.cataddress=item.getcataddress().touppercase(); cat.catage=item.getcatage() 1; cat.catname=item.getcatname().tolowercase(); cat;
  • 执行脚本语言scriptcatconfiguration

/*** 执行脚本语言* @author: shuliangzhao* @date 2021/11/1311:19*/ @configuration @enablebatchprocessing public class scriptcatconfiguration {@autowiredprivate jobbuilderfactory jobbuilderfactory;@autowiredprivate stepbuilderfactory stepbuilderfactory;@autowiredprivate sqlsessionfactory sqlsessionfactory;@beanpublic job scriptcafecatjob() {return jobbuilderfactory.get("scriptcafecatjob").start(scriptcafecatstep()).build();}@beanpublic step scriptcafecatstep() {return stepbuilderfactory.get("scriptcafecatstep").chunk(10).reader(scriptcatcommonfileitemreader()).processor(scriptitemprocessor(null)).writer(scriptcatcommonmybatisitemwriter()).build();}@bean@stepscopepublic commonfileitemreader scriptcatcommonfileitemreader() {return new commonfileitemreader<>(cafecat.class);}@bean@stepscopepublic scriptitemprocessor scriptitemprocessor(@value("#{jobparameters['script']}") string script) {scriptitemprocessor scriptitemprocessor = new scriptitemprocessor<>();resource resource = new filesystemresource(script);scriptitemprocessor.setscript(resource);return scriptitemprocessor;}@bean@stepscopepublic commonmybatisitemwriter scriptcatcommonmybatisitemwriter() {return new commonmybatisitemwriter<>(sqlsessionfactory,cat.class.getsimplename());} }
  • 执行结果为:
  •  数据库内容:

 详细代码请看:具体详细代码。

如果喜欢这篇文章的话请关注我一键三连!谢谢!

总结

以上是凯发ag旗舰厅登录网址下载为你收集整理的springbatch处理器scriptitemprocessor执行脚本语言详解的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得凯发ag旗舰厅登录网址下载网站内容还不错,欢迎将凯发ag旗舰厅登录网址下载推荐给好友。

网站地图