提交 0621e62d authored 作者: liupengfei's avatar liupengfei

--no commit message

上级 6038742d
package com.zrqx.file.commons;
import java.io.IOException;
import java.util.Enumeration;
import java.util.List;
import java.util.concurrent.TimeUnit;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import com.zrqx.core.enums.ResponseCodeEnum;
import com.zrqx.core.exception.BaseException;
import com.zrqx.core.model.sysuser.user.User;
import com.zrqx.core.util.JsonUtil.JsonUtil;
/**
* Redis消息管理 ,调用时不能用多线程调用
* @author lpf
* @date 2018年6月5日上午10:03:01
*/
@Component
public class Redis {
private static final String FG_TOKEN = "y-token";
private static final String BG_TOKEN = "x-token";
@Autowired
StringRedisTemplate stringRedisTemplate;
public void updateDatebase(int num) {
JedisConnectionFactory jedisConnectionFactory = (JedisConnectionFactory) stringRedisTemplate.getConnectionFactory();
jedisConnectionFactory.setDatabase(num);
stringRedisTemplate.setConnectionFactory(jedisConnectionFactory);
}
/**
* 获取后台登录用户信息
*
* @return
*/
public User getUser() {
return getInfoObjectRedis(getToken(BG_TOKEN), User.class);
}
public String fmtObj(Object obj) throws IOException {
return obj instanceof String ? obj.toString():JsonUtil.bean2Json(obj);
}
public <T> String fmtObj(List<T> objList) throws IOException {
String ss = JsonUtil.list2Json(objList);
return JsonUtil.list2Json(objList);
}
/**
* 添加到redis
* @param token
* Key
* @param obj
* Value
* @param timeout
* 过期时间
* @param unit
* TimeUnitEnum 时间格式
* @throws IOException
*/
public void set(String token, Object obj, long timeout,TimeUnit unit) throws IOException {
stringRedisTemplate.opsForValue().set(token,fmtObj(obj),timeout,unit);
}
public void set(String token, Object obj, long timeout) throws IOException {
stringRedisTemplate.opsForValue().set(token,fmtObj(obj),timeout,TimeUnit.SECONDS);
}
/**
* 添加到redis
* @param token Key
* @param obj Value
* @throws IOException
*/
public void set(String token,Object obj) throws IOException{
stringRedisTemplate.opsForValue().set(token,fmtObj(obj));
}
/**
* 添加list对象到redis
* @param <T>
* @param token Key
* @param obj Value
* @throws IOException
*/
public <T> void set(String token,List<T> objList) throws IOException{
stringRedisTemplate.opsForValue().set(token,fmtObj(objList));
}
/**
* 根据key删除redis中的数据
* @param key
* @throws IOException
*/
public void delete(String key) throws IOException{
stringRedisTemplate.delete(key);
}
/**
* 根据key查询redis中的数据
*
* @param token
* @return
*/
public String get(String token) {
return stringRedisTemplate.opsForValue().get(token);
}
public <T> T getInfoObjectRedis(String key,Class<T> objClass){
try {
String userInfo = get(key);
if(StringUtils.isEmpty(userInfo)) {
throw new BaseException(ResponseCodeEnum.NO_LOGIN);
}
return JsonUtil.json2Bean(userInfo, objClass);
} catch (Exception e) {
throw new BaseException("获取用户信息错误!"+e.getMessage());
}
}
public <T> List<T> getInfoObjectListRedis(String key,Class<T> objClass){
try {
String userInfo = get(key);
if(StringUtils.isEmpty(userInfo)) {
throw new BaseException(ResponseCodeEnum.NO_LOGIN);
}
return JsonUtil.json2List(userInfo, objClass);
//return JSON.parseObject(userInfo, objClass);
} catch (Exception e) {
throw new BaseException("获取用户信息错误!"+e.getMessage());
}
}
public static String getToken(String tokenName){
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
Enumeration<String> headerNames = request.getHeaderNames();
String token = null;
while (headerNames.hasMoreElements()) {
String key = (String) headerNames.nextElement();
//TODO--前台获取token
if(key.toLowerCase().equals(tokenName)){
token=request.getHeader(key);
}
}
if (token == null) {
throw new BaseException(ResponseCodeEnum.NO_LOGIN);
}
return token;
}
public static String getBgToken(){
return getToken(BG_TOKEN);
}
public static String getFgToken(){
return getToken(FG_TOKEN);
}
}
package com.zrqx.file.controller; package com.zrqx.file.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -18,11 +15,14 @@ import org.springframework.web.bind.annotation.RequestParam; ...@@ -18,11 +15,14 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import com.zrqx.core.commons.redis.Redis;
import com.zrqx.core.exception.BaseException; import com.zrqx.core.exception.BaseException;
import com.zrqx.core.vo.resource.EpubVo; import com.zrqx.core.vo.resource.EpubVo;
import com.zrqx.file.commons.Redis;
import com.zrqx.file.util.BookUtil; import com.zrqx.file.util.BookUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@RestController @RestController
@RequestMapping(value = "/epub") @RequestMapping(value = "/epub")
@Api(description = "单本epub解析(弃用)") @Api(description = "单本epub解析(弃用)")
......
package com.zrqx.file.controller; package com.zrqx.file.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import java.io.BufferedInputStream; import java.io.BufferedInputStream;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
...@@ -23,25 +20,24 @@ import org.slf4j.Logger; ...@@ -23,25 +20,24 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Description;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import tk.mybatis.mapper.entity.Example.Criteria; import com.zrqx.core.commons.redis.Redis;
import com.zrqx.core.exception.BaseException; import com.zrqx.core.exception.BaseException;
import com.zrqx.core.model.resource.ebook.Book;
import com.zrqx.core.util.response.CallBack; import com.zrqx.core.util.response.CallBack;
import com.zrqx.core.vo.resource.EpubVo; import com.zrqx.core.vo.resource.EpubVo;
import com.zrqx.file.client.ResourceClient; import com.zrqx.file.client.ResourceClient;
import com.zrqx.file.commons.Redis;
import com.zrqx.file.config.FTPConfig; import com.zrqx.file.config.FTPConfig;
import com.zrqx.file.service.FileService; import com.zrqx.file.service.FileService;
import com.zrqx.file.util.BookUtil; import com.zrqx.file.util.BookUtil;
import com.zrqx.file.util.MockMultipartFile; import com.zrqx.file.util.MockMultipartFile;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@RestController @RestController
@RequestMapping(value = "/ftp") @RequestMapping(value = "/ftp")
@Api(description = "ftp上传下载服务") @Api(description = "ftp上传下载服务")
......
package com.zrqx.file.controller; package com.zrqx.file.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import it.sauronsoftware.jave.Encoder;
import it.sauronsoftware.jave.MultimediaInfo;
import java.io.BufferedInputStream; import java.io.BufferedInputStream;
import java.io.File; import java.io.File;
import java.io.FileFilter; import java.io.FileFilter;
...@@ -47,8 +42,7 @@ import org.springframework.web.bind.annotation.ResponseBody; ...@@ -47,8 +42,7 @@ import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import tk.mybatis.mapper.entity.Example; import com.zrqx.core.commons.redis.Redis;
import com.zrqx.core.exception.BaseException; import com.zrqx.core.exception.BaseException;
import com.zrqx.core.form.file.CreatreQRCodeForm; import com.zrqx.core.form.file.CreatreQRCodeForm;
import com.zrqx.core.model.file.FileInfo; import com.zrqx.core.model.file.FileInfo;
...@@ -59,9 +53,14 @@ import com.zrqx.core.util.page.PageParam; ...@@ -59,9 +53,14 @@ import com.zrqx.core.util.page.PageParam;
import com.zrqx.core.util.response.CallBack; import com.zrqx.core.util.response.CallBack;
import com.zrqx.core.util.zip.ZipUtil; import com.zrqx.core.util.zip.ZipUtil;
import com.zrqx.file.client.ResourceClient; import com.zrqx.file.client.ResourceClient;
import com.zrqx.file.commons.Redis;
import com.zrqx.file.service.FileService; import com.zrqx.file.service.FileService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import it.sauronsoftware.jave.Encoder;
import it.sauronsoftware.jave.MultimediaInfo;
import tk.mybatis.mapper.entity.Example;
@RestController @RestController
@RequestMapping(value = "/file") @RequestMapping(value = "/file")
@Api(description = "文件上传下载服务") @Api(description = "文件上传下载服务")
......
package com.zrqx.file.controller; package com.zrqx.file.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
...@@ -12,20 +9,16 @@ import java.util.List; ...@@ -12,20 +9,16 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.collections4.map.HashedMap; import org.apache.commons.collections4.map.HashedMap;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import com.zrqx.core.constant.sysuser.SysUserRequestPath; import com.zrqx.core.commons.redis.Redis;
import com.zrqx.core.enums.resource.LibraryStatusEnum; import com.zrqx.core.enums.resource.LibraryStatusEnum;
import com.zrqx.core.exception.BaseException; import com.zrqx.core.exception.BaseException;
import com.zrqx.core.model.file.FileInfo; import com.zrqx.core.model.file.FileInfo;
...@@ -35,10 +28,12 @@ import com.zrqx.core.util.datatype.StringUtil; ...@@ -35,10 +28,12 @@ import com.zrqx.core.util.datatype.StringUtil;
import com.zrqx.core.util.datatype.UUIDUtil; import com.zrqx.core.util.datatype.UUIDUtil;
import com.zrqx.core.util.response.CallBack; import com.zrqx.core.util.response.CallBack;
import com.zrqx.core.vo.resource.EpubVo; import com.zrqx.core.vo.resource.EpubVo;
import com.zrqx.file.commons.Redis;
import com.zrqx.file.service.FileService; import com.zrqx.file.service.FileService;
import com.zrqx.file.util.XmlUtils; import com.zrqx.file.util.XmlUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/** /**
* xml * xml
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论