一 jar包:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<dependency>
<groupId>org.databene</groupId>
<artifactId>contiperf</artifactId>
<version>2.3.4</version>
<scope>test</scope>
</dependency>
二、利用concurrent包下列进行测试
selectSrcbItassetinfoByLastId为查找最大编码值,并且StringUtils.returnzcId(sbmax)为+1
package com.ruoyi.project;
import cn.gjing.tools.redis.lock.AbstractLock;
import cn.gjing.tools.redis.lock.Lock;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.file.FileUploadUtils;
import com.ruoyi.framework.config.RuoYiConfig;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.project.assets.srcbitassetinfo.domain.SrcbItassetinfo;
import com.ruoyi.project.assets.srcbitassetinfo.service.ISrcbItassetinfoService;
import com.ruoyi.project.system.user.domain.User;
import net.coobird.thumbnailator.Thumbnails;
import org.databene.contiperf.PerfTest;
import org.databene.contiperf.junit.ContiPerfRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import javax.annotation.Resource;
import java.io.File;
import java.io.IOException;
import java.util.Date;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Semaphore;
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringsApplicationTests {
@Autowired
private ISrcbItassetinfoService srcbItassetinfoService;
@Test
public void contextLoads() {
}
//引入 ContiPerf 进行性能测试
@Rule
public ContiPerfRule contiPerfRule = new ContiPerfRule();
@Test
//10个线程 执行10次
@PerfTest(invocations = 100,threads = 10)
public void test() {
this.addSave();
}
public synchronized void addSave(){
SrcbItassetinfo srcbItassetinfo=new SrcbItassetinfo();
String pareId = "03-00000001";//IT电子类资产编号首个编码上线时改为 01 非IT类 02 IT类
String sbmax = srcbItassetinfoService.selectSrcbItassetinfoByLastId();
System.out.println("当前数据库最大的ID是:" + sbmax);
if (sbmax != null && sbmax != "") {
pareId = StringUtils.returnzcId(sbmax);
}
srcbItassetinfo.setSysnumber(pareId);
srcbItassetinfo.setAssetsname("ceshi");
srcbItassetinfo.setNumber("1");
srcbItassetinfo.setUsetype(0L);
srcbItassetinfo.setPurchasedate(new Date());
srcbItassetinfo.setEntrydate(new Date());
srcbItassetinfo.setOrigvalueofasset(1D);
srcbItassetinfo.setEnteredby("444");
srcbItassetinfo.setEnterdate(new Date());
srcbItassetinfo.setMaintainer("wng");
srcbItassetinfo.setMaintaindate(new Date());
int s=srcbItassetinfoService.insertSrcbItassetinfo(srcbItassetinfo);
if(s==1){
System.out.println("成功");
}
else{
System.out.println("识别");
}
}
}