package com.ltkj.framework.config; import lombok.extern.slf4j.Slf4j; import org.redisson.Redisson; import org.redisson.api.RedissonClient; import org.redisson.config.Config; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import java.io.*; import java.util.Properties; @Slf4j @Configuration public class RedissionConfig { @Value("${config.properties}") private String url; @Value ("${config.path}") private String path; @Bean public RedissonClient redissonClient(){ Config config = new Config(); try { FileInputStream fis = null; Properties props = new Properties(); try { fis = new FileInputStream(url); } catch (FileNotFoundException e) { log.info("配置文件找不到 系统正在创建!"); File f = new File(path); if(!f.exists()){ f.mkdirs(); } File file = new File(url); try { FileWriter fileWriter = new FileWriter(file); fileWriter.write("ip = 你的主数据库连接ip地址\n"); fileWriter.write("prot = 你的主数据库连接端口\n"); fileWriter.write("name = 你的主数据库连接名称\n"); fileWriter.write("username = 你的主数据库连接用户名\n"); fileWriter.write("password = 你的主数据库连接密码\n"); fileWriter.write("redisIp = 你的redisIp地址"); fileWriter.write("redisProt = 你的redis端口"); fileWriter.write("redisIpDatabase = 你的redis链接库"); fileWriter.write("redisPassword = 你的redis密码"); fileWriter.write(""); fileWriter.close(); log.info("配置文件创建成功!"); } catch (IOException ioException) { log.info("配置文件创建失败 请联系管理员手动创建!"); ioException.printStackTrace(); } e.printStackTrace(); } props.load(fis); fis.close(); String redisPassword = props.getProperty("redisPassword"); int database = Integer.parseInt(props.getProperty("redisIpDatabase")); String address = "redis://"+props.getProperty("redisIp")+":"+props.getProperty("redisProt"); config.useSingleServer() .setAddress(address) .setPassword(redisPassword) .setDatabase(database); log.info("redisson连接成功!!!"); } catch (IOException e) { log.info("redisson连接失败 请联系管理员!"); e.printStackTrace(); } return Redisson.create(config); } }