自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 ------------委托 | 匿名方法 | 朗姆达表达式-------------【重要】

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace 委托{ public class MathOpt { public int Add(int argument1, int argument2) {

2020-07-10 17:37:47 1821

原创 Jquery获取子类,同级类 第几个元素

$('.test').parent();//父节点$('.test').parents();//全部父节点$('.test').parents('.test1');//含有类名.test1的父节点$('.test').children();//全部子节点$('.test').children('li');//元素为li的全部子节点$('.test').prev();//上一个兄弟节点$...

2020-02-28 00:51:01 678

原创 Windows10下安装Redis

第一步:下载windwos版本的redis 下载地址:https://github.com/microsoftarchive/redis/releases下载下来解压到C盘C:\Program Files\Redis-x64-3.2.100地址下第二步:Redis默认只允许本地访问,要使Redis可以远程访问需修改 redis.windows.conf和 redis.window...

2020-02-20 23:36:31 109

原创 .NET CORE基础

.NET CORE的亮点及特性234开始public class Program{ public static void Main(string[] args) { CreateHostBuilder(args).Build().Run(); } public static IHostBuilder Crea...

2019-12-29 13:21:17 105

原创 windows安装Mysql

第一步:下载mysql.zip 解压到C盘Program Files路面下C:\Program Files\mysql-8.0.18-winx64第二步:以管理员身份运行cmd命令 进入C:\Program Files\mysql-8.0.18-winx64\bin下cd C:\Windows\system32>cd C:\Program Files\mysql-8.0.18...

2019-12-08 13:01:20 126

原创 NetCore3.0使用HttpClient

不带参数的HttpClient第一步:在Startup的ConfigureServices方法中注入ICO容器public void ConfigureServices(IServiceCollection services){ services.AddHttpClient(); //将HttpClient注入IOC容器}第二步:在控制器中使用public clas...

2019-12-05 01:03:02 1111

原创 string类型扩展

string类型常用方法扩展using System.Security.Cryptography;using System.Text;using System.Text.RegularExpressions; public static class StringExtension{ // 移除前缀字符串 public static string RemovePref...

2019-11-29 09:22:00 44

原创 Git

Git安装第一步:去Git官网上去下载Githttps://git-scm.com/download/win第二步:

2019-11-07 10:49:49 38

原创 Ubuntu18.04下更改apt源为阿里云源

第一步:备份源文件,以防万一sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak第二步:编辑源文件列表sudo vim /etc/apt/sources.list

2019-11-03 19:51:04 200

原创 Config 生产环境和测试环境配置

在项目根目录下创建一个Configure.json{ //由它确认使用开发环境还是生产环境 :true表示开发环境 false表示生产环境 "IsTest": false, //开发环境 "Development": { "SsoUrl": "locahost:5001/idp/oauth2/authorize", "SsoClientId": "hc.mvc...

2019-10-16 16:09:24 293

原创 解决asp.net core 日期格式 datetime Json返回 带T的问题

Startup中,将services.AddMvc();改成如下services.AddMvc().AddJsonOptions(options =>{ options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss";});

2019-07-02 00:34:51 1711

原创 IdentityServer4 实现自定义 GrantType 授权模式

OAuth 2.0 默认四种授权模式(GrantType):授权码模式(authorization_code) 简化模式(implicit) 密码模式(password) 客户端模式(client_credentials)使用 IdentityServer4,我们可以自定义授权模式吗?答案是可以的,比如我们自定义实现一个 my_sms_auth_code授权模式public c...

2019-06-12 00:18:41 2093

原创 OAuth2.0协议 |IdentityServer4实现认证授权:客户端模式

OAuth2.0是一个开放的授权协议:第三方应用不需要接触到用户的账户信息(如用户名密码),通过用户的授权访问用户资源客户端模式的主要特点就是:客户端根据 客户端ID (client_id)与 秘钥(client_secret)向 认证中心发起访问 获取Tokenvar diso = DiscoveryClient.GetAsync("http://127.16.7.6003")....

2019-06-11 15:06:33 352

原创 乌班图:安装Consul

安装Consulsudo apt-get install consul查看Consul版本consul version启动Consul的三种方式 -dev | -server | clientconsul agent -dev #以dev模式运行,这种模式启动一个单节点的Consul环境,它不适用于生产环境。该参数配置下,不会有任何持久化操作,即不会有任何数据...

2019-05-29 10:35:13 406

原创 NetCore 基于Cookie的身份验证

ASP.NET Core 认证系统,包括Cookie, JwtBearer, OAuth, OpenIdConnect等下面我们要讲的就是基于Cookie的身份认证由于HTTP协议是无状态的,但对于认证来说,必然要通过一种机制来保存用户状态,而最常用,也最简单的就是Cookie了,它由浏览器自动保存并在发送请求时自动附加到请求头中。尽管在现代Web应用中,Cookie已略显笨重,但它...

2019-05-14 00:02:07 1596

原创 SQL 笔试题

例子1:现在有一个表 T_Order ID(varchar(256)), ID为GUID UserID(BigInt), Price decimal(32,12), OrderDate(Datetime) OrderDate为可重复的DateTimeCREATE TABLE T_Order( [Id] [varchar](256) NOT NULL,...

2019-04-30 17:52:04 596

原创 NetCore过滤器

.netcore过滤器有以下几种类型using Microsoft.AspNetCore.Http;using Microsoft.AspNetCore.Mvc;using Microsoft.AspNetCore.Mvc.Filters;using Microsoft.AspNetCore.Mvc.ModelBinding;using Microsoft.AspNetCore.Mv...

2019-04-24 14:50:53 1759 1

原创 Net Core基本结构

1using Microsoft.AspNetCore;using Microsoft.AspNetCore.Hosting;namespace NetCoreApp{ public class Program { public static void Main(string[] args) { CreateWe...

2019-04-22 19:08:17 286

原创 Net Core中使用Autofac

第一步:在Nuget中安装Autofac包第二步:在Nuget中安装Autofac.Extensions.DependencyInjection(MVC项目已经默认安装了,控制台应用程序需要安装)Startup类在Startup类中,将ConfigureServices方法的返回值修改成IServiceProvider,方式一然后在这个方法中添加我们自定义...

2019-04-22 19:06:43 1448

原创 NetCore 使用Log4Net

首先去Nuget中安装Log4Net包安装:log4net安装:Microsoft.Extensions.Logging.Console安装:Microsoft.Extensions.Logging.Log4Net.AspNetCore方式一Program.cs文件using Microsoft.AspNetCore;using Microsoft.AspNetCore...

2019-04-22 18:34:35 2794

原创 .NetCore 怎么部署到 IIS上

1>安装环境安装.NET Core Windows Server Hosting程序集安装.NET Core Windows Server Hosting程序集,让IIS具备反向代理功能。该程序集包含了.Net Core运行时(Runtime),.Net Core 类库(Library)和 Asp.Net Core Module。其中Asp.Net Core Module负责反向代理...

2019-04-22 15:41:25 4134 2

原创 Net中使用 RabbitMq | 消息的幂等性

出现非幂等性的情况1、生产者已把消息发送到mq,在mq给生产者返回ack的时候网络中断,故生产者未收到确定信息,生产者认为消息未发送成功,但实际情况是,mq已成功接收到了消息,在网络重连后,生产者会重新发送刚才的消息,造成mq接收了重复的消息2、消费者在消费mq中的消息时,mq已把消息发送给消费者,消费者在给mq返回ack时网络中断,故mq未收到确认信息,该条消息会重新发给其他的消费者,...

2019-04-19 23:24:12 101

原创 Net中使用 RabbitMq | 死信队列

11

2019-04-19 23:18:40 277

原创 Net中使用 RabbitMq | Return 消息不可达处理机制

生产者通过指定一个 exchange 和 routingkey 把消息送达到某个队列中去,然后消费者监听队列,进行消费处理。但是在某些情况下,如果我们在发送消息时,当前的 exchange 不存在或者指定的 routingkey 路由不到,这个时候如果要监听这种不可达的消息,就要使用 return项目建议先启动消费端,再启动生产端(因为我的交换机和队列都是在消费端创建的,交换机与队列绑定指定的...

2019-04-17 16:21:57 267

原创 Net中使用 RabbitMq | Confirm确认消息

RabbitMQ 消息确认机制 - 消费者确认由于生产者和消费者不直接通信,生产者只负责把消息发送到队列,消费者只负责从队列获取消息(不管是push还是pull).消息被"消费"后,是需要从队列中删除的.那怎么确认消息被"成功消费"了呢?是消费者从队列获取到消息后,MQ服务器 就从队列中删除该消息?那如果消费者收到消息后,还没来得及"消费"它,或者说还没来得及进行业务逻辑处理时,...

2019-04-17 15:30:10 431

原创 Net中使用 RabbitMq | Message 消息内容

Message:它是服务器和应用程序之间传送消息数据Message:本质上就是一段数据,由Properties和PayLoad(Boby)组成Message常用属性Delivery mode: 是否持久化,1 :Non-persistent(非持久化),2 :Persistent(持久化)Headers:自定义属性:自定义属性一般放到Headers中,进行发送content_...

2019-04-16 15:17:36 265

原创 Net中使用 RabbitMq | Fanout ExChange 广播模式(分发模式)

Fanout ExChange属于广播模式(分发模式),因为这种模式不走路由,所以它的性能是最高的RabbitMQ中的Exchange有四种类型,不同的类型有着不同的路由策略,RabbitMQ常用的Exchange Type有fanout、direct、topic、headers这四种。Exchange是按照什么逻辑将消息路由到Queue的?RabbitMQ中通过Binding将Excha...

2019-04-16 14:30:52 236

原创 Net中使用 RabbitMq | Topic ExChange 模糊路由模式(主题模式)

RabbitMQ提供了四种Exchange:direct, topic, fanout, headerheader模式在实际使用中较少,本文只对前三种模式进行比较。Topic ExChange属于模糊连接模式(主题模式),直连模式就是 Exchange 通过 指定的RoutingKey 将 消息转发到与之绑定的Queue中注:可以这样理解:生产者想发送一条消息到指定的Queue队列...

2019-04-15 21:27:52 168

原创 Net中使用 RabbitMq | Direct ExChange 直连模式(路由模式)

RabbitMQ提供了四种Exchange:direct, topic, fanout, headerheader模式在实际使用中较少,本文只对前三种模式进行比较。Direct ExChange属于直连模式,直连模式就是 Exchange 通过 指定的RoutingKey 将 消息转发到与之绑定的Queue中注:可以这样理解:生产者想发送一条消息到指定的Queue队列中,首先这条消息会...

2019-04-15 21:03:10 174

原创 Ubuntu 16.04 安装RabbitMQ

RabbitMq简介RabbitMQ 是一个开源的消息代理和队列服务器,用来通过普通协议在完全不同的应用之间共享数据(这句话的含义就是可以跨平台,跨语言的)RadditMQ 是使用Erlang语言来编写的并且RabbitMQ是基于AMQP协议的什么是AMQP高级消息队列协议?AMQP全称:Advanced Message Queuing Protocol(中文:高级消息队列协议)...

2019-04-14 01:58:06 444

原创 5分钟轻松应对 MySQL DBA 面试

作为DBA,今后可能都会遇到误删数据、服务器宕机,以及各种疑难故障问题,这些状况就跟家常便饭一样。这个时节,大家都在忙着找工作,我们就来总结一下MySQL DBA相关的技术面试题。01问题1:你之前处理过MySQL的哪些案例?解答思路:说到案例,逃离不了MySQL的五大知识模块:体系结构、数据的备份恢复、复制、高可用集群架构和优化。我们可以从这五个方向着手考虑,比如:①My...

2019-03-01 13:54:33 480

原创 vue-router 路由

vue-router的官方页面:https://router.vuejs.org/zh/installation.html一:安装vue-router直接去https://unpkg.com/vue-router/dist/vue-router.js网站进行下载vue-router.js文件然后将vue-router.js引入到项目中就可以了。(注意,vue-router.js是依赖v...

2019-03-01 11:48:44 103

原创 使用ref获取DOM元素 [可以用于父组件向子组件传值]

ref的两种用法1.ref 加在普通的元素上,用this.ref.name 获取到的是dom元素2.ref 加在子组件上,用this.ref.name 获取到的是组件实例,可以使用组件的所有方法。案例1:ref 加在普通的元素上<html><head> <script src="~/Scripts/vue.js"></scri...

2019-02-27 11:09:07 1696

原创 Vue注册登录实例

自己写的一个登陆注册实例<html><head> <meta name="viewport" content="width=device-width" /> <title>Index</title> <script src="~/Scripts/vue.js"&am

2019-01-17 14:50:20 5940 2

原创 Vue子组件与父组件的相互传值:第四天

父组件向子组件传值一般情况下我们将 vue看做是一个大的组件,俗称父组件,例如下面的vm我们就可以看做是一个父组件,而在vm里面定义了一个com1的子组件。var vm = new Vue({ el: "#app", data: { msg:"我是父组件data中的msg" }, components: { "com1": ...

2019-01-17 14:46:39 138

原创 Vue 组件:第三天

全局组件的第一种定义方式<html><head> <script src="~/Scripts/vue.js"></script></head><body> <div id="app"> <!--注意:如果组件的名称采

2019-01-04 14:35:12 101

原创 Vue自定义指令:第三天

前言Vue为我们提供了很多内置指令,如 v-bind, v-on,v-text等等。但是有时候我们需要自己定义一些我们自己的指令来实现我们自己的功能。下面我们就来看看如何自定义指令:自定义全局指令案例一:自定义全局v-focus指令自定义一个指令来实现让文本框获取焦点 ,同时元素赋給值<html><head> <script src...

2019-01-03 14:11:23 205

原创 Vue自定义按键修饰符:第二天

在很多时候,我们想要在键盘上按一个指定的键,实现,新增,删除的目的,比如按一下回车键,就要实现新增数据的目的这样我们就需要监听键盘事件。比如 keydown:按键按下,keyup:按键抬起,keypress:按键按下抬起在Vue中允许为 v-on 在监听键盘事件时添加按键修饰符:例如:keycode键盘码对照表<!-- 只有在 `keyCode` 是 13 时调用 `vm实...

2019-01-02 17:06:54 416

原创 Vue过滤器:第二天

Vue过滤器简介Vue.js 允许你自定义过滤器,可被用于一些常见的文本格式化。过滤器分为全局过滤器和私有过滤器。过滤器可以用在两个地方:双花括号插值和 v-bind 表达式 (后者从 2.1.0+ 开始支持)。过滤器应该被添加在 JavaScript 表达式的尾部,由管道 “|” 符号指示 ;定义全局过滤器:全局过滤器对所有的vue对象实例都是有效的<html>...

2019-01-02 10:16:43 105

原创 Vue基础:第一天

Vue.Js文件的引入:<head> <meta name="viewport" content="width=device-width" /> <title>Vue学习</title> <!-- 可以引入本地文件,也可以用CDN方式 --> <script src="

2018-12-23 10:46:27 176

提示
确定要删除当前文章?
取消 删除