Groovy学习笔记

245 阅读1分钟

Groovy学习笔记

java调用groovy动态脚本,maven引入相关的依赖包:

      <dependency>
         <groupId>org.codehaus.groovy</groupId>
         <artifactId>groovy</artifactId>
         <version>2.1.6</version>
      </dependency>
      <dependency>
         <groupId>org.codehaus.groovy</groupId>
         <artifactId>groovy-jsr223</artifactId>
         <version>2.1.6</version>
      </dependency>

java调用groovy例子

D:/11/TestGroovy.groovy代码

 def testC(int numA, int numB, int numC) {
 "传入参数:" + numA + numB + numC + "计算之和为:" + (numA + numB + numC)
}

Groovy读取Excel文件:

遍历文件

import org.apache.poi.ss.usermodel.Row
import org.apache.poi.xssf.usermodel.XSSFCell
import org.apache.poi.xssf.usermodel.XSSFRow
import org.apache.poi.xssf.usermodel.XSSFSheet
import org.apache.poi.xssf.usermodel.XSSFWorkbook
import com.cs.util.BillParseInfo;
import com.cs.bps.dao.model.bps.BpsBillDetail;


void parse(BillParseInfo info){
      File file = new File(info.getBill());
        FileInputStream is = new FileInputStream(file);
      int i = 0;
      file.eachLine {
          if(i > 0){
             if(it.length()>10){
                           String[] arr = it.split("\|");
               BpsBillDetail detail = new BpsBillDetail();
                     detail.setBatchNo(arr[0]);
      detail.setOrderNo(arr[1]);
      detail.setPayAmount(arr[2].substring(3));
      detail.setTrxType(arr[3]);
      detail.setTrxStatus(arr[4]);
      detail.setPayerBankCode(arr[5]);
      detail.setPayeeBankCode(arr[6]);
               println it.toUpperCase();
               println arr[0];
               info.addDetail(detail);
            }
         }
         i++;
      }
}

遍历数组:

      String[] cArr =  info.getBill().split("\n");
      for(String it : cArr){