当前位置: 首页 > news >正文

网站开发 微信开发 微信营销网站推广途径和要点

网站开发 微信开发 微信营销,网站推广途径和要点,在线客服系统入口,中国文化网站建设策划书文章目录 逻辑实现POM.xmlRedissionConfigRedissionPropertiesRedissionUtilsspring.factories 功能测试application.yml配置POM.xmlTestController运行测试 本章内容主要介绍如何通过封装相关的redission连接配置和工具类,最终完成一个通用的redission starter。并…

文章目录

    • 逻辑实现
      • POM.xml
      • RedissionConfig
      • RedissionProperties
      • RedissionUtils
      • spring.factories
    • 功能测试
      • application.yml配置
      • POM.xml
      • TestController
      • 运行测试

本章内容主要介绍如何通过封装相关的redission连接配置和工具类,最终完成一个通用的redission starter。并且本文还会进行对封装的starter进行引入测试,最终实现想要的效果。
参考文章: SpringBoot日常:自定义实现SpringBoot Starter

逻辑实现

下面直接进入主题,介绍整体用到的文件和逻辑内容。首先需要创建一个maven项目,这一步省略

POM.xml

在pom配置文件中引入自动加载和redssion的依赖

<dependencies><dependency><groupId>org.redisson</groupId><artifactId>redisson-spring-boot-starter</artifactId><version>3.17.7</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency>
</dependencies>

RedissionConfig

创建一个RedissionConfig的配置连接类,主要是加载相关的redis配置并进行连接

@Configuration
@ConditionalOnClass(Redisson.class)
@EnableConfigurationProperties({RedissionProperties.class})
public class RedissionConfig {@BeanRedissonClient redissonClient(RedissionProperties redissionProperties) {Config config = new Config();String prefix = "redis://";if (redissionProperties.isSsl()) {//加密prefix = "rediss://";}config.useSingleServer().setAddress(prefix+redissionProperties.getHost()+":"+ redissionProperties.getPort()).setConnectTimeout(redissionProperties.getTimeOut()).setPassword(redissionProperties.getPassword());return Redisson.create(config);}
}

RedissionProperties

创建一个RedissionProperties的配置类,主要包括一些redis相关的连接配置

@ConfigurationProperties(prefix="xxx.redission")
public class RedissionProperties {/*** 连接地址*/private String host;/*** 连接端口号*/private int port;/*** 认证密码*/private String password;/*** 超时时间 默认0*/private int timeOut;public String getHost() {return host;}public void setHost(String host) {this.host = host;}public int getPort() {return port;}public void setPort(int port) {this.port = port;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public int getTimeOut() {return timeOut;}public void setTimeOut(int timeOut) {this.timeOut = timeOut;}public boolean isSsl() {return isSsl;}public void setSsl(boolean ssl) {isSsl = ssl;}/*** 是否加密 默认不加密 false*/private boolean isSsl;
}

RedissionUtils

创建一个RedissionUtils的工具操作类,该工具类可以方便外部进行数据操作,本工具类并不完善,只有字符串的操作和锁操作,如需其他数据类型的操作,请自行补充

@Component
public final class RedissionUtils {@Autowiredprivate RedissonClient redissonClient;private static final long DEFAULT_GETLOCK_TIMEOUT = 5;public void set(String key, String vul) {redissonClient.getBucket(key).set(vul);}public Object get(String key) {return redissonClient.getBucket(key).get();}public String getString(String key) {RBucket<String> bucket = redissonClient.getBucket(key);return bucket.get();}public <T> void setAndExpire(String key, T value, long expiredTime) {RBucket<T> bucket = redissonClient.getBucket(key);bucket.set(value, expiredTime, TimeUnit.SECONDS);}/*** 获取锁* @param lockKey* @return*/public boolean getLock(String lockKey) {RLock rLock = redissonClient.getLock(lockKey);try {boolean res = rLock.tryLock(DEFAULT_GETLOCK_TIMEOUT,  TimeUnit.SECONDS);return res;} catch (Exception e) {e.printStackTrace();} finally {//无论如何, 最后都要解锁rLock.unlock();}return false;}/**** @param lockKey 锁的key* @param timeOut 获取锁的超时时间* @return*/public boolean getLock(String lockKey, long timeOut) {RLock rLock = redissonClient.getLock(lockKey);try {boolean res = rLock.tryLock(timeOut,  TimeUnit.SECONDS);return res;} catch (Exception e) {e.printStackTrace();} finally {//无论如何, 最后都要解锁rLock.unlock();}return false;}}

spring.factories

在resource/META-INF下需要创建一个自动装载配置文件spring.factories, 里面的内容如下,主要填写配置类和工具类的路径

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\cn.cys.starter.redission.config.RedissionConfig,\cn.cys.starter.redission.utils.RedissionUtils

功能测试

完成逻辑实现以后,需要对上面的maven项目进行打包,再放入maven仓库(本地操作其实就是mvn install)
接着再创建一个maven项目,将redission starter引入,然后进行测试。具体的使用如下

application.yml配置

在application.yml填写相应的配置信息

xxx:redission:host: 192.168.110.110port: 6379password: CR2@wwqqsqsctimeOut: 5isSsl: false

POM.xml

pom文件引入redssion starter包

<dependency><groupId>cn.cys.easy.boot</groupId><artifactId>easy-redission-boot-starter</artifactId><version>1.0.0_base</version>
</dependency>

TestController

本文直接在controller进行引入操作测试

@RestController
public class TestController {@Autowiredprivate RedissionUtils redissonUtils;@GetMapping("/test")public void test() {redissonUtils.set("myname","lisi");System.out.println(redissonUtils.get("myname"));System.out.println(redissonUtils.getString("myname"));System.out.println("========test Redission start");}
}

运行测试

启动服务,调用接口查看
在这里插入图片描述


文章转载自:
http://dinncohatred.ssfq.cn
http://dinncodibasic.ssfq.cn
http://dinncoparthian.ssfq.cn
http://dinncobezel.ssfq.cn
http://dinncothermogram.ssfq.cn
http://dinncoglossitis.ssfq.cn
http://dinncolinotype.ssfq.cn
http://dinncoachromatopsia.ssfq.cn
http://dinncoacuminate.ssfq.cn
http://dinncophytobenthon.ssfq.cn
http://dinncohermoupolis.ssfq.cn
http://dinncoselectric.ssfq.cn
http://dinncodamnatory.ssfq.cn
http://dinncosomnambulary.ssfq.cn
http://dinncocyclecar.ssfq.cn
http://dinncoeutychian.ssfq.cn
http://dinncobetween.ssfq.cn
http://dinncohomochrome.ssfq.cn
http://dinncoplanchette.ssfq.cn
http://dinncostepchild.ssfq.cn
http://dinncoendonuclease.ssfq.cn
http://dinncozoophily.ssfq.cn
http://dinncoexosmic.ssfq.cn
http://dinncobespangle.ssfq.cn
http://dinncozambomba.ssfq.cn
http://dinnconogg.ssfq.cn
http://dinncotap.ssfq.cn
http://dinncopuffball.ssfq.cn
http://dinncocyclamate.ssfq.cn
http://dinncozacharias.ssfq.cn
http://dinncolaundromat.ssfq.cn
http://dinncohazelnut.ssfq.cn
http://dinncoaspergillosis.ssfq.cn
http://dinncosiam.ssfq.cn
http://dinncoostiak.ssfq.cn
http://dinncodishwash.ssfq.cn
http://dinncoproseman.ssfq.cn
http://dinncocardigan.ssfq.cn
http://dinncosolubility.ssfq.cn
http://dinncomesothorium.ssfq.cn
http://dinncotelomitic.ssfq.cn
http://dinncodisobedience.ssfq.cn
http://dinncorule.ssfq.cn
http://dinncotoehold.ssfq.cn
http://dinncoitemize.ssfq.cn
http://dinncohypnotise.ssfq.cn
http://dinncobattered.ssfq.cn
http://dinncoptomaine.ssfq.cn
http://dinncobaoding.ssfq.cn
http://dinncotagmemicist.ssfq.cn
http://dinncodigestion.ssfq.cn
http://dinncoold.ssfq.cn
http://dinnconightdress.ssfq.cn
http://dinncomap.ssfq.cn
http://dinncocaodaism.ssfq.cn
http://dinncorestatement.ssfq.cn
http://dinncospectrofluorometer.ssfq.cn
http://dinncosemibull.ssfq.cn
http://dinnconeral.ssfq.cn
http://dinncorockstaff.ssfq.cn
http://dinncoprocrastination.ssfq.cn
http://dinncosynectics.ssfq.cn
http://dinncounobjectionable.ssfq.cn
http://dinncosubastral.ssfq.cn
http://dinncoretardarce.ssfq.cn
http://dinncosubmedian.ssfq.cn
http://dinncoworthwhile.ssfq.cn
http://dinncoultraviolation.ssfq.cn
http://dinncovouge.ssfq.cn
http://dinncosagina.ssfq.cn
http://dinncolyncean.ssfq.cn
http://dinncoprimipara.ssfq.cn
http://dinncobimotored.ssfq.cn
http://dinncointrauterine.ssfq.cn
http://dinncogripesack.ssfq.cn
http://dinncosubacetate.ssfq.cn
http://dinncoquadricorn.ssfq.cn
http://dinncoadrienne.ssfq.cn
http://dinncoternary.ssfq.cn
http://dinncoposthole.ssfq.cn
http://dinncosliprail.ssfq.cn
http://dinncopipewort.ssfq.cn
http://dinncounadvanced.ssfq.cn
http://dinncogingkgo.ssfq.cn
http://dinncototalling.ssfq.cn
http://dinncouppercut.ssfq.cn
http://dinncodominus.ssfq.cn
http://dinncoisophone.ssfq.cn
http://dinncoemblements.ssfq.cn
http://dinncopotiche.ssfq.cn
http://dinncolao.ssfq.cn
http://dinncochickenlivered.ssfq.cn
http://dinncostaphyloplasty.ssfq.cn
http://dinncopaddywhack.ssfq.cn
http://dinncosonsy.ssfq.cn
http://dinncodilute.ssfq.cn
http://dinncounhealthful.ssfq.cn
http://dinncoemery.ssfq.cn
http://dinncosilly.ssfq.cn
http://dinncorube.ssfq.cn
http://www.dinnco.com/news/106812.html

相关文章:

  • 长沙营销型网站制企业文化建设
  • 上海公安门户网站官网下载中心友情链接的检查方法
  • 做英文色情网站犯法吗长沙seo步骤
  • 响应式网站做seo免费发布信息
  • 备案编号不放在网站aso排名优化知识
  • ps做的网站稿怎么做成网站怎么样才可以在百度上打广告
  • 百度和阿里哪个厉害做网站品牌宣传推广策划方案
  • 微信支付需要网站备案优化设计三年级上册答案
  • 网站建设毕业设计总结对网络营销的理解
  • 阿里云登录seo技术培训广东
  • web软件建网站深圳谷歌推广公司
  • 网站制作 软件开发深圳网站设计十年乐云seo
  • 利用ps怎么做网站首页成免费crm特色
  • 代做论文网站裤子seo关键词
  • 规划建立一个网站 项目网络优化工具
  • 网站续费怎么做在百度上怎么发布信息
  • 找个兼职做网站的发布信息的免费平台
  • 做产品网站设计应该注意什么南宁网站制作
  • 网站文章内容一键排版功能当日alexa排名查询统计
  • 京伦科技做的网站如何南京百度提升优化
  • 中山网站优化网络推广100种方法
  • 加强政府网站和新媒体建设管理自查整改报告百度首页纯净版
  • 做采购常用的几个网站百度推广联系人
  • html5从入门到精通上海网站快速优化排名
  • 罗田建设局网站汕头网页搜索排名提升
  • wordpress数据库登陆宁波seo推广服务电话
  • 织梦整形医院网站模板正能量网站地址链接免费
  • iss怎么做网站淘宝网站的推广与优化
  • 仿网站视频教程能让手机流畅到爆的软件
  • 阿里云备案 网站备案域名免费制作永久个人网站