我是靠谱客的博主 激动口红,最近开发中收集的这篇文章主要介绍Redise篇-记一次Redise的封装(基础篇),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Redise在项目中用了很多次,用一次写一次,每次在看前次写的代码时,总是感觉差强人意,刚好项目需要,现在特将Redise的封装过程分享给大家,写的不好,还希望大家提供宝贵意见。

 

  1. 封装Redise数据连接对象,RediseManage
    首先,Redise的数据库连接以及有关Redise的操作,我均使用了外部DLL文件,StackExchange.Redis.dll,该DLL很成熟稳定,且各大平台有关Redise的操作均在使用该dll文件。废话不多说,开始创建类文件RediseManage
    声明Redise数据库连接对象,先贴代码
#region ConnectionMultiplexer 单例
internal static ConnectionMultiplexer _rediseInstance
{
get
{
return NestedRedis.instance;//返回Nested类中的静态成员instance
}
}
class NestedRedis
{
static NestedRedis()
{
}
//将instance设为一个初始化的ConnectionMultiplexer新实例
internal static readonly ConnectionMultiplexer instance = GetManager();
}
#endregion

   针对Redise数据库连接对象,我们当然不希望重复声明,重复创建,所以此处使用单例模式创建ConnectionMultiplexer对象,故在此处声明了一个internal【仅允许程序集内访问】前缀的静态对象,当然有人肯定会问,如果只创建一个internal前缀的变量,如果别的项目中需要引用你封装好的Redise操作dll,岂不是无法访问,别急,我们还需暴露一个public的外部可访问的变量,代码如下:


/// <summary>
/// ConnectionMultiplexer
/// </summary>
public static ConnectionMultiplexer RediseConnectionManager
{
get { return _rediseInstance; }
}

    ok,这样做的意义何在呢?保护代码安全,没别的想法。

    继续,我们还需要定义一个外部可访问的数据库连接字符串变量


/// <summary>
/// 链接设置字符串
/// </summary>
public static string RediseConnectioneString { get; set; }

          如果用户没给该变量赋值怎么办,众所周知,Redise的默认访问端口是6379,而且如果redise的配置文件中未设置允许外部访问,则数据库连接为localhost,所以我们还需要配置默认的数据库连接字符串,代码如下:

/// <summary>
/// 默认连接字符串
/// </summary>
/// <returns></returns>
private static string GetDefaultConnectionString()
{
return "localhost";
}

好了,下面就是GetManager方法了,代码很简单,不再做更多赘述

private static ConnectionMultiplexer GetManager(string connectionString = null)
{
if (string.IsNullOrEmpty(connectionString))
{
if (RediseConnectioneString == null)
{
connectionString = GetDefaultConnectionString();
}
else
                {
                    connectionString = ConfigurationOption;
                }
}
            configueationOptions = ConfigurationOptions.Parse(connectionString);
            configueationOptions.AllowAdmin = true;
return ConnectionMultiplexer.Connect(connectionString);
}

ConfigurationOptions.Parse方法,即将数据库连接字符串,转换为ConfigurationOptions对象,有一个地方需要注意一下,那就是,如果需要用到ConnectionMultiplexer对象中的GetServer函数,需要在声明ConfigurationOptions对象时,设置属性AllowAdmin=true,代码如下:

configueationOptions = ConfigurationOptions.Parse(connectionString);
configueationOptions.AllowAdmin = true;

 

 

 

最后

以上就是激动口红为你收集整理的Redise篇-记一次Redise的封装(基础篇)的全部内容,希望文章能够帮你解决Redise篇-记一次Redise的封装(基础篇)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部