封装保存音视频样例配置的方法

This commit is contained in:
RenKaiGe-Office
2018-05-19 18:35:24 +08:00
parent 6d8dfec2b2
commit 1a36811688
13 changed files with 440 additions and 73 deletions

View File

@@ -2,6 +2,7 @@ package com.nis.web.controller.restful;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -26,7 +27,7 @@ import com.nis.util.StringUtils;
import com.nis.web.controller.BaseRestController;
import com.nis.web.service.SaveRequestLogThread;
import com.nis.web.service.ServicesRequestLogService;
import com.nis.web.service.restful.TestRedisService;
import com.nis.web.service.restful.ConfigRedisService;
import com.nis.web.service.restful.ConfigSourcesService;
import com.wordnik.swagger.annotations.Api;
import com.wordnik.swagger.annotations.ApiOperation;
@@ -50,14 +51,22 @@ public class ConfigSourcesController extends BaseRestController {
protected ServicesRequestLogService servicesRequestLogService;
@Autowired
TestRedisService testRedisServiceimpl;
ConfigRedisService configRedisServiceimpl;
@RequestMapping(value = "/save", method = RequestMethod.GET)
@ApiOperation(value = "test redis", httpMethod = "GET", response = Map.class, notes = "测试redis事务的crontroller")
@ApiParam(value = "test redis", name = "测试redis事务的crontroller", required = true)
public String testRedis() {
public String testRedis(String id) {
try {
testRedisServiceimpl.saveConfigCompile();
Map<String, String> map = new HashMap<String, String>();
map.put("cfg_id", id);
map.put("is_valid", "1");
map.put("dst_file", "/home/1234/");
map.put("dst_file_md5", "fasdfdasfsdafdsafadsf");
map.put("time_stamp", new Date().getTime() + "");
map.put("level", "20");
map.put("file_id",id);
configRedisServiceimpl.saveConfigYSPDemoCompile(96,map);
return "ok";
} catch (Exception e) {
e.printStackTrace();
@@ -118,7 +127,7 @@ public class ConfigSourcesController extends BaseRestController {
}
return compileServiceResponse(thread, System.currentTimeMillis() - start, request, response,
"编译配置数据插入成功" + sb.toString(), Constants.IS_DEBUG?configSource:null);
"编译配置数据插入成功" + sb.toString(), Constants.IS_DEBUG ? configSource : null);
}
@RequestMapping(value = "/cfg/v1/configSources", method = RequestMethod.PUT)
@@ -183,7 +192,7 @@ public class ConfigSourcesController extends BaseRestController {
RestBusinessCode.missing_args.getValue());
}
return compileServiceResponse(thread, System.currentTimeMillis() - start, request, response,
"编译配置修改成功" + sb.toString(), Constants.IS_DEBUG?configSource:null);
"编译配置修改成功" + sb.toString(), Constants.IS_DEBUG ? configSource : null);
}
@RequestMapping(value = "/cfg/v1/configModifySources", method = RequestMethod.PUT)
@@ -303,7 +312,7 @@ public class ConfigSourcesController extends BaseRestController {
}
return compileServiceResponse(thread, System.currentTimeMillis() - start, request, response,
"修改编译配置数据成功" + sb.toString(), Constants.IS_DEBUG?configSource:null);
"修改编译配置数据成功" + sb.toString(), Constants.IS_DEBUG ? configSource : null);
}
private void validateConfigSource(SaveRequestLogThread thread, long start, ConfigSource configSource) {

View File

@@ -0,0 +1,16 @@
package com.nis.web.service.restful;
import java.util.Map;
/**
*
* <p>Title: ConfigRedisService</p>
* <p>Description: 保存配置到redis中</p>
* <p>Company: IIE</p>
* @author rkg
* @date 2018年5月17日
*
*/
public interface ConfigRedisService {
public void saveConfigYSPDemoCompile(int service, Map<String, String> map);
}

View File

@@ -0,0 +1,103 @@
package com.nis.web.service.restful;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import com.nis.datasource.DynamicJedisDataBase;
import com.nis.domain.MaatXmlConfig;
import com.nis.domain.MaatXmlExpr;
import com.nis.domain.MaatXmlSeq;
import com.nis.util.ReadMaatXmlUtil;
import com.nis.web.dao.impl.BaseRedisDao;
@Service("configRedisServiceimpl")
public class ConfigRedisServiceimpl extends BaseRedisDao<String, String> implements ConfigRedisService {
@Transactional
public void saveConfigYSPDemoCompile(int service, Map<String, String> map) {
if (map != null && map.size() > 0) {
MaatXmlConfig maatXmlConfig = ReadMaatXmlUtil.getMaatConfigByService(service);
if (maatXmlConfig != null) {
List<MaatXmlExpr> expressionList = maatXmlConfig.getExpressionList();
for (MaatXmlExpr maatXmlExpr : expressionList) {
StringBuffer keyBF = new StringBuffer();
String[] keySplit = maatXmlExpr.getKeyExpression().split(";");
for (String keyStr : keySplit) {
if (!StringUtils.isEmpty(keyStr) && keyStr.trim().startsWith("[")) {
keyStr = keyStr.trim().replace("[", "").replace("]", "");
keyBF.append(map.get(keyStr));
} else {
keyBF.append(keyStr.trim());
}
}
StringBuffer valBF = new StringBuffer();
//valBF.append("\"");
String[] valSplit = maatXmlExpr.getValueExpression().split(";");
for (String valStr : valSplit) {
if (!StringUtils.isEmpty(valStr) && valStr.trim().startsWith("[")) {
valStr = valStr.trim().replace("[", "").replace("]", "");
valBF.append(map.get(valStr));
} else if (valStr.equals("&nbsp")) {
valBF.append(" ");
} else {
valBF.append(valStr.trim());
}
}
//valBF.append("\"");
DynamicJedisDataBase.setRedisDataBase(maatXmlExpr.getRedisDB(), redisTemplate);
// redisTemplate.boundValueOps(keyBF.toString()).append(valBF.toString());
System.out.println(keyBF.toString());
System.out.println(valBF.toString());
redisTemplate.opsForValue().set(keyBF.toString(), valBF.toString());
//redisTemplate.boundValueOps(keyBF.toString()).set(valBF.toString());
}
List<MaatXmlSeq> seqList = maatXmlConfig.getSequenceList();
for (MaatXmlSeq maatXmlSeq : seqList) {
DynamicJedisDataBase.setRedisDataBase(maatXmlSeq.getRedisDB(), redisTemplate);
String seqKey = maatXmlSeq.getSequenceKey();
Integer operation = maatXmlSeq.getOperation();
if (operation == 1) {
redisTemplate.boundValueOps(seqKey).increment(1);
}
}
}
}
}
public static void main(String[] args) {
System.out.println("\\t");
}
public void test() {
DynamicJedisDataBase.setRedisDataBase(2, redisTemplate);
for (int i = 0; i < 10; i++) {
redisTemplate.boundZSetOps("1").add("a" + i, i);
if (i == 5) {
// int a = 1 / 0;
}
}
// 切换redis数据库
DynamicJedisDataBase.setRedisDataBase(3, redisTemplate);
for (int i = 10; i < 20; i++) {
redisTemplate.boundZSetOps("1").add("a" + i, i);
if (i == 5) {
// int a = 1 / 0;
}
}
DynamicJedisDataBase.setRedisDataBase(4, redisTemplate);
for (int i = 20; i < 30; i++) {
redisTemplate.boundZSetOps("1").add("a" + i, i);
if (i == 25) {
int a = 1 / 0;
}
}
}
}

View File

@@ -1,14 +0,0 @@
package com.nis.web.service.restful;
/**
*
* <p>Title: TestRedisService</p>
* <p>Description: 测试redis事务</p>
* <p>Company: IIE</p>
* @author rkg
* @date 2018年5月17日
*
*/
public interface TestRedisService {
public void saveConfigCompile();
}

View File

@@ -1,36 +0,0 @@
package com.nis.web.service.restful;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.nis.datasource.DynamicJedisDataBase;
import com.nis.web.dao.impl.BaseRedisDao;
@Service("testRedisServiceimpl")
public class TestRedisServiceimpl extends BaseRedisDao<String, String> implements TestRedisService {
@Transactional
public void saveConfigCompile() {
DynamicJedisDataBase.setRedisDataBase(2, redisTemplate);
for (int i = 0; i < 10; i++) {
redisTemplate.boundZSetOps("1").add("a" + i, i);
if (i == 5) {
// int a = 1 / 0;
}
}
// 切换redis数据库
DynamicJedisDataBase.setRedisDataBase(3, redisTemplate);
for (int i = 10; i < 20; i++) {
redisTemplate.boundZSetOps("1").add("a" + i, i);
if (i == 5) {
// int a = 1 / 0;
}
}
DynamicJedisDataBase.setRedisDataBase(4, redisTemplate);
for (int i = 20; i < 30; i++) {
redisTemplate.boundZSetOps("1").add("a" + i, i);
if (i == 25) {
int a = 1 / 0;
}
}
}
}