diff --git a/vehicle-company-common/pom.xml b/vehicle-company-common/pom.xml index 67d6895..bca6b51 100644 --- a/vehicle-company-common/pom.xml +++ b/vehicle-company-common/pom.xml @@ -18,6 +18,18 @@ + + + redis.clients + jedis + 2.9.0 + + + + junit + junit + 4.12 + com.baidu.aip diff --git a/vehicle-company-common/src/main/java/com/dragon/vehicle/company/common/utils/JsonUtils.java b/vehicle-company-common/src/main/java/com/dragon/vehicle/company/common/utils/JsonUtils.java new file mode 100644 index 0000000..aa91dae --- /dev/null +++ b/vehicle-company-common/src/main/java/com/dragon/vehicle/company/common/utils/JsonUtils.java @@ -0,0 +1,67 @@ +package com.dragon.vehicle.company.common.utils; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.JavaType; +import com.fasterxml.jackson.databind.ObjectMapper; + +import java.util.List; + +/** + * JsonUtils工具类 + * + * @author HuZhiYong + * @version 2023/11/21 - 21:27 + */ +public class JsonUtils { + private static final ObjectMapper MAPPER =new ObjectMapper(); + private static JavaType JavaType; + + + /** + * 将对象转换成json字符串 + * @param data + * @return + */ + public static String objectToJson(Object data){ + try { + String string = MAPPER.writeValueAsString(data); + return string; + } catch (JsonProcessingException e) { + throw new RuntimeException(e); + } + + } + + + /** + * 将json结果集转化为对象 + * @param jsonData + * @param beanType + * @return + * @param + */ + public static T jsonToPojo(String jsonData,Class beanType){ + try { + T t=MAPPER.readValue(jsonData,beanType); + return t; + } catch (JsonProcessingException e) { + throw new RuntimeException(e); + } + } + + + + public static List jsonToList(String jsonData,Class beanType){ + MAPPER.getTypeFactory().constructParametricType(List.class,beanType); + try { + List list=MAPPER.readValue(jsonData, JavaType); + } catch (JsonProcessingException e) { + throw new RuntimeException(e); + } + + return null; + } + + + +} diff --git a/vehicle-company-common/src/main/java/com/dragon/vehicle/company/common/utils/RedisUtils.java b/vehicle-company-common/src/main/java/com/dragon/vehicle/company/common/utils/RedisUtils.java new file mode 100644 index 0000000..93f0e3d --- /dev/null +++ b/vehicle-company-common/src/main/java/com/dragon/vehicle/company/common/utils/RedisUtils.java @@ -0,0 +1,16 @@ +package com.dragon.vehicle.company.common.utils; + +/** + * redis + * + * @author HuZhiYong + * @version 2023/11/21 - 21:09 + */ +public interface RedisUtils { + public void hest(String key,String filed,String value); + public String hget(String key,String field); + public void set(String key,String value); + public String get(String key); + public void expire(String key,int seconds); + public long ttl(String key); +} diff --git a/vehicle-company-common/src/main/java/com/dragon/vehicle/company/common/utils/SingleTonRedisUtil.java b/vehicle-company-common/src/main/java/com/dragon/vehicle/company/common/utils/SingleTonRedisUtil.java new file mode 100644 index 0000000..64ac307 --- /dev/null +++ b/vehicle-company-common/src/main/java/com/dragon/vehicle/company/common/utils/SingleTonRedisUtil.java @@ -0,0 +1,49 @@ +package com.dragon.vehicle.company.common.utils; + + +import redis.clients.jedis.Jedis; + +/** + * RedisUtils工具实现类 + * + * @author HuZhiYong + * @version 2023/11/21 - 21:14 + */ +public class SingleTonRedisUtil implements RedisUtils{ + + private Jedis jedis; + + public SingleTonRedisUtil(Jedis jedis){ + this.jedis=jedis; + } + + @Override + public void hest(String key, String filed, String value) { + + } + + @Override + public String hget(String key, String field) { + return null; + } + + @Override + public void set(String key, String value) { + + } + + @Override + public String get(String key) { + return null; + } + + @Override + public void expire(String key, int seconds) { + + } + + @Override + public long ttl(String key) { + return 0; + } +} diff --git a/vehicle-company-server/src/main/java/com/dragon/vehicle/company/server/controller/FirmController.java b/vehicle-company-server/src/main/java/com/dragon/vehicle/company/server/controller/FirmController.java index a28aea1..9f824af 100644 --- a/vehicle-company-server/src/main/java/com/dragon/vehicle/company/server/controller/FirmController.java +++ b/vehicle-company-server/src/main/java/com/dragon/vehicle/company/server/controller/FirmController.java @@ -13,7 +13,7 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @RestController -@RequestMapping("/firm") +@RequestMapping("/firm/company") public class FirmController { @Autowired @@ -66,4 +66,7 @@ public class FirmController { return Result.success(); } + + + } diff --git a/vehicle-company-server/src/main/java/com/dragon/vehicle/company/server/service/impl/FirmServiceImpl.java b/vehicle-company-server/src/main/java/com/dragon/vehicle/company/server/service/impl/FirmServiceImpl.java index d066a5a..3e59111 100644 --- a/vehicle-company-server/src/main/java/com/dragon/vehicle/company/server/service/impl/FirmServiceImpl.java +++ b/vehicle-company-server/src/main/java/com/dragon/vehicle/company/server/service/impl/FirmServiceImpl.java @@ -11,17 +11,24 @@ import com.dragon.common.core.web.page.TableDataInfo; import com.dragon.vehicle.company.common.domain.FirmInfo; import com.dragon.vehicle.company.common.domain.req.FirmQueryReq; import com.dragon.vehicle.company.common.utils.BaiDuAiCheck; +import com.dragon.vehicle.company.common.utils.JsonUtils; +import com.dragon.vehicle.company.common.utils.SingleTonRedisUtil; import com.dragon.vehicle.company.server.mapper.FirmMapper; import com.dragon.vehicle.company.server.service.FirmService; import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.io.Serializable; +import java.util.List; @Log4j2 @Service public class FirmServiceImpl extends ServiceImpl implements FirmService { + @Autowired + private SingleTonRedisUtil redisUtil; + @Override public boolean save(FirmInfo entity) { @@ -87,6 +94,12 @@ public class FirmServiceImpl extends ServiceImpl implement @Override public TableDataInfo selectFirmList(FirmQueryReq firmQueryReq) { + + String firm = redisUtil.hget("firm", "0"); + if (firm!=null){ + log.info("get firm from redis"); + List firmInfos= JsonUtils.jsonToList(firm, FirmInfo.class); + } LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotEmpty(firmQueryReq.getFirmName())){ queryWrapper.like(FirmInfo::getFirmName, firmQueryReq.getFirmName()); @@ -122,9 +135,15 @@ public class FirmServiceImpl extends ServiceImpl implement Page page = this.page(firmQueryReq.buildPage(), queryWrapper); + log.info("get frim from db"); + String s = JsonUtils.objectToJson(page); + + redisUtil.hest("firm","0",s); + log.info("set data to redis"); return TableDataInfo.builder() .rows(page.getRecords()) .total(page.getTotal()) .build(); + } }