- 博客(188)
- 资源 (2)
- 收藏
- 关注
原创 利用SQL生成模型实体类
declare @TableName sysname = '[Platform_Winit_WarehouseStorage]'declare @Result varchar(max) = '/// <summary>/// ' + @TableName + ' /// </summary>public class ' + @TableName + '{'select @Result = @Result + ' /// <summar...
2020-12-04 09:05:38
1012
原创 C#流总结
一、文件流FileStream类主要用于读写磁盘文件。常用于向磁盘存储数据或读取配置文件。读取文件://文件流:读取FileStream fileStream = File.Open(@"D:\test.txt", FileMode.Open);//初始化文件流byte[] array = new byte[fileStream.Length];//初始化字节数组,用来暂存读取到的字节fileStream.Read(array, 0, array.Length);//读取流中数据,写入到
2020-05-15 10:40:26
492
转载 C#枚举高级战术
文章开头先给大家出一道面试题:在设计某小型项目的数据库(假设用的是 MySQL)时,如果给用户表(User)添加一个字段(Roles)用来存储用户的角色,你会给这个字段设置什么类型?提示:要考虑到角色在后端开发时需要用枚举表示,且一个用户可能会拥有多个角色。映入你脑海的第一个答案可能是:varchar 类型,用分隔符的方式来存储多个角色,比如用1|2|3或1,2,3来表示用户拥有多个角色。当然如果角色数量可能超过个位数,考虑到数据库的查询方便(比如用 INSTR 或 POSIT...
2020-05-15 10:06:28
448
原创 Python 爬取网易云音乐
import requestsfrom bs4 import BeautifulSoupimport urllib.requestimport reimport osheaders = { 'Referer': 'http://music.163.com/', 'Host': 'music.163.com', 'User-Agent': 'Mozilla/5....
2020-03-19 14:28:05
1014
原创 Python 爬取Bilibili 视频
import requestsfrom lxml import htmlimport osimport pprintimport timeimport randomfrom requests.packages.urllib3.exceptions import InsecureRequestWarningrequests.packages.urllib3.disable_warn...
2020-03-19 14:27:26
1163
1
原创 2020 零基础 Vue快速入门 Vue指令 本地应用篇【整理】
文章目录 1、引言 2、内容绑定,事件绑定 2.1 简单计数器应用 3、显示切换,属性绑定 4、列表循环,表单元素绑定 1、引言本地应用:通过Vue实现常见的网页效果 学习Vue指令,以案例巩固知识点 Vue指令指的是,以v-开头的一组特殊语法2、内容绑定,事件绑...
2020-03-04 17:03:03
180
原创 2020 零基础 Vue快速入门 Vue基础篇 【详细】
文章目录 1、引言 2、Vue简介 3、什么是Dom? 4、第一个Vue程序(Hello Vue) 5、el挂载点相关问题 6、data:数据对象 1、引言2、Vue简介① JavaScript框架 ② 简化Dom操作 ③ 响应式数据驱动3、什么是Dom?document文档 o...
2020-03-04 16:56:18
451
原创 Git
Gitgit installgit clonegit initgit add filenamegit add .git commit -m '提交说明'创建分支 git checkout -b fenzhi合并分支 只有在 master 才能合并 git checkout master git merge fenzhigitHub: ...
2020-02-19 11:49:49
135
转载 控制反转和依赖注入理解
一、控制反转(IoC)(一) IoC是什么Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想,用来减低计算机代码之间的耦合度。基本思想是:借助于“第三方”容器来降低具有依赖关系的对象之间的耦合。Ioc意味着将你设计好的对象交给容器控制(由容器管理对依赖对象进行创建/监控/释放),而不是传统的在你的对象内部直接控制(通过是直接new一个依赖对...
2020-01-21 10:11:36
301
转载 Nlog日志组件简介
NLog简介NLog是一个简单灵活的.NET日志记录类库,NLog的API非常类似于log4net,配置方式非常简单。支持多种形式输出日志:文本文件、系统日志、数据库、控制台、邮箱等1.NLog简介在nuget控制台输入安装nlog命令: Install-Package NLog.ConfigNlog配置的方式常用的有两种 1.直接在使用应用程序配置文件或者web的配置文件(...
2020-01-21 09:50:51
488
转载 Log4net(三)——RollingFileAppender配置
RollingFileAppender配置log4net的记录介质很多,这里只总结最常用的方式之一:RollingFileAppender。1.日志文件名是以文件大小进行变换的如果日志文件大小到100KB时,就会变换文件名为log.txt.1,log.txt.2,log.txt.3...,后边的数字越大,记录越早,一直到10为止,最新的文件名为一直log.txt。<appe...
2020-01-21 09:31:41
1638
转载 Log4net(二)-——关联配置文件的方式总结
关联配置文件的方式总结 以控制台应用程序为例,在.net mvc项目中默认的配置位置为Web.config,其他的配置都一样1.配置在AppConfig中 在控制台应用程序中,如果我们把Log4net的配置放在App.config(App.config和Web.config是默认的位置)下,配置文件如下<?xml version="1.0" encoding="utf-8"...
2020-01-21 09:26:21
235
转载 Log4net(一)-——配置文件
一.Log4Net框架介绍Log4net 是 Apache 下一个开放源码的项目,它是Log4j 的一个克隆版。Log4net中定义了多种日志信息输出模式。它可以根据需要将日志输出到控制台,文本文件,数据库,邮件等等位置,以便我们快速跟踪程序bug。二、Log4net的基本结构2.1 Log4Net核心组件Log4net主要分为5个核心组件:Logger, Appender...
2020-01-21 09:17:55
837
转载 微信公众号开发C#系列-1、微信公众平台注册
微信公众号简介微信公众号分为服务号、订阅号、企业号,订阅号可以个人申请,服务号和企业号要有企业资质才可以。微信公众号分为服务号、订阅号、企业号,订阅号可以个人申请,服务号和企业号要有企业资质才可以。我们所说的微信公众号开发主要指的是公众号的账号类型,公众号的账号类型分为订阅号、服务号、企业微信、小程序四种。关于他们之间的具体区别,官方是这样解释的服务号:主要偏向于服务交互(功能类似...
2020-01-14 10:58:24
250
转载 微信公众号开发系列-玩转微信开发-目录汇总
引言在现在这个无处不在的互联网背景下,各种应用已不再仅仅局限于网页或桌面应用了,IOS、Android、平板、智能家居等平台正如火如荼的迅速发展,移动应用的需求也空前旺盛。所有的互联网公司都不想错过这一次移动浪潮,布局移动市场分一份移动红利。的确,智能手机作为我们日常生活已必不可少的一部分,通过手机app能够获得更好的体验,比如社交、购物、娱乐、生活。但这也引入了一个问题,如果布局移动市场...
2020-01-14 09:34:48
203
原创 史上最全面的SignalR系列教程-6、SignalR 实现聊天室
1、概述通过前面几篇文章对SignalR的详细介绍。我们知道Asp.net SignalR是微软为实现实时通信的一个类库。一般情况下,SignalR会使用JavaScript的长轮询(long polling)的方式来实现客户端和服务器通信,随着Html5中WebSockets出现,SignalR也支持WebSockets通信。另外SignalR开发的程序不仅仅限制于宿主在IIS中,也可以宿主...
2020-01-13 16:20:04
707
原创 史上最全面的SignalR系列教程-4、SignalR 自托管全解(使用Self-Host)-附各终端详细实例
1、概述我们对SignalR的概念以及SignalR的最主要的两类通信模型(Persistent Connections与Hubs)进行了详细的对比讲解,也做了案例展示。本篇将为大家介绍.NET特有的Self-Host自托管的应用,即以Self-Host自托管为宿主加载SignalR服务。宿主一词我们不会陌生,它可以看作是一个基础设施,它为一些服务和功能提供最底层的支持,如你的web应用程...
2020-01-13 15:41:38
783
原创 史上最全面的SignalR系列教程-5、SignalR 实现一对一聊天
1、概述我们对SignalR算入门了,知道如何把SignalR合理应用到实际的项目中。前面的文章主要讲解的是SignalR的概念,托管方式,以及推送的功能。本篇主要讲解通过SignalR实现一对一、点对点的聊天。2、SignalR一对一聊天实现2.1、 创建ASP.NET Mvc项目新建一个空的ASP.NET Mvc项目,取名为:SignalROneToOne,如下图所示。为了整个...
2020-01-13 14:42:13
1101
原创 史上最全面的SignalR系列教程-3、SignalR 实现推送功能-集线器类实现方式
1、概述通过上面的几篇文章对SignalR的介绍,我们对SignalR已经有了全面的认识。SignalR API 客户端和服务器端持久连接的通信方式,一次连接代表一个发送单个、分组或者广播消息的简单终端。持久连接的API(表现在.NET的PersistentConnection 类上)给了开发人员低价访问SignalR所暴露的通信协议的条件。使用这种连接方式,就像开发人员使用WCF一样。本...
2020-01-13 14:32:59
918
原创 史上最全面的SignalR系列教程-2、SignalR 实现推送功能-永久连接类实现方式
1、概述通过上篇史上最全面的SignalR系列教程-1、认识SignalR文章的介绍,我们对SignalR技术已经有了一个全面的了解。本篇开始就通过SignalR的典型应用的实现方式做介绍,例子虽然简单,但麻雀虽小五脏俱全。可以以此为基础,扩展到实际应用中。SignalR 的实现机制与.NET WCF 或 Remoting 是相似的,都是使用远程代理来实现。在具体使用上,有两种不同通信模型...
2020-01-13 13:57:16
743
原创 史上最全面的SignalR系列教程-1、认识SignalR
SignalR 是什么?SignalR 是一个面向 ASP.NET 开发人员的库,可简化将实时 web 功能添加到应用程序的过程。 实时 web 功能是让服务器代码将内容推送到连接的客户端立即可用,而不是让服务器等待客户端请求新数据的能力。SignalR 是一个集成的客户端与服务器库,基于浏览器的客户端和基于 ASP.NET 的服务器组件可以借助它来进行双向多步对话。 换句话说,该对话可不...
2020-01-13 13:44:28
929
原创 史上最全面的SignalR系列教程-目录汇总
1、引言最遗憾的不是把理想丢在路上,而是理想从未上路。每一个将想法变成现实的人,都值得称赞和学习。致正在奔跑的您!2、SignalR介绍SignalR实现服务器与客户端的实时通信 ,她是一个面向 ASP.NET 开发人员的库,可简化将实时 web 功能添加到应用程序的过程。 实时 web 功能是让服务器代码将内容推送到连接的客户端立即可用,而不是让服务器等待客户端请求新数据的能...
2020-01-13 13:30:50
258
原创 《MSSQL2008技术内幕:T-SQL语言基础》读书笔记
一、SQL Server体系结构1.1 数据库的物理布局数据库在物理上由数据文件和事务日志文件组成,每个数据库必须至少有一个数据文件和一个日志文件。(1)数据文件用于保存数据库对象数据。数据库必须至少有一个主文件组(Primary),而用户定义的文件组则是可选的。Primary文件组包括 主数据文件(.mdf),以及数据库的系统目录(catalog)。可以选择性地为Primary增...
2020-01-09 16:28:16
503
原创 SQL Server之:SQL 查询之分组查询 GROUP BY
1、GROUP BY 与聚合函数GROUP BY 是一种能将查询结果划分为多个行组的查询语句的子句,其目的通常是为了在每个组上执行一个或多个聚合运算,所以 GROUP BY 通常会与聚合函数一块儿出现在查询语句中。GROUP BY 的标准分组方式是按所有分组字段的值依次来分组。假如字段 A 的值有 3 种,字段 B 的值有 2 种;如果是GROUP BY A,那么就会被分为 3 组;而如果...
2020-01-09 11:11:17
1605
原创 SQL Server之:SQL 查询之集合运算 & 聚合函数
1、集合运算在数学中,不仅可以对指定的数字个体做四则运算,还可以对指定的集合整体做交并补运算。类似的,在数据库中也是不仅可以对具体的数据行进行增删改查,还可以对查询结果集进行集合运算。SQL Server 中的集合运算有并集运算、差集运算和交集运算三种,本节将逐一讲述。1.1、并集运算 UNION并集运算符 UNION 的作用是将两个或多个查询的结果集合并为单个结果集。在 UNION ...
2020-01-09 10:57:39
862
原创 SQL Server之:SQL 子查询 & 公用表表达式 CTE
1、子查询 Subqueries子查询是一个嵌套在 SELECT、INSERT、UPDATE 或 DELETE 语句或其他子查询中的查询。通俗来讲,子查询就是嵌套在大“查询”中的小查询。子查询也称为内部查询或内部选择,而包含子查询的语句也称为外部查询或外部选择。从概念上说,子查询结果会代入外部查询(尽管这不一定是 SQL Server 实际处理带有子查询的 T-SQL 语句的方式)。所以子...
2020-01-09 10:39:59
596
原创 SQL Server之:SQL 数据操作 CRUD 之简单查询
1、查询语句 SELECT顾名思义,SELECT 语句的作用就是从表中查询数据。查询语句一次可以从一个或多个表中检索一个或多个字段的一行或多行。SELECT 是 SQL 中最常用的一个语句,完整的 SELECT 语法是非常复杂的,本文将先对简单查询做个回顾,更高级的用法将会在本系列的后续博文中陆续介绍。基本语法如下:SELECT TOP(top-expressions) column-e...
2020-01-09 10:24:08
213
转载 SQL Server系列之:SQL 数据操作 CRUD 之增删改合
毋庸置疑,开发者最常用的数据库技术就是 SQL 了,即便是 ORM 大行其道的今天也常常需要写 SQL 语句。而 SQL 语句中最常用的就是增删改查了,本系列就先对增删改查语句来个系统的回顾吧!1、插入语句 INSERT INTO1.1、用 INSERT 插入单行数据INSERT INTO 的作用是向表中添加新行,语法如下:INSERT INTO table-name(colum...
2020-01-09 10:03:42
170
转载 NoSQL初探之人人都爱Redis:(4)Redis主从复制架构初步探索
一、主从复制架构简介通过前面几篇的介绍中,我们都是在单机上使用Redis进行相关的实践操作,从本篇起,我们将初步探索一下Redis的集群,而集群中最经典的架构便是主从复制架构。那么,我们首先来了解一下神马是主从复制架构?1.1 源于关系数据库的读写分离随着网站业务的不断发展,用户量的不断增加,数据量也成倍的增长,数据库的访问量也呈线性地增长。特别是在用户访问高峰期间,并发访问量突然...
2020-01-03 17:16:26
822
原创 NoSQL初探之人人都爱Redis:(3)使用Redis作为消息队列服务场景应用案例
一、消息队列场景简介“消息”是在两台计算机间传送的数据单位。消息可以非常简单,例如只包含文本字符串;也可以更复杂,可能包含嵌入对象。消息被发送到队列中,“消息队列”是在消息的传输过程中保存消息的容器。 在目前广泛的Web应用中,都会出现一种场景:在某一个时刻,网站会迎来一个用户请求的高峰期(比如:淘宝的双十一购物狂欢节,12306的春运抢票节等),一般的设计中,用户的请求都会被直接写入...
2020-01-03 16:47:16
224
原创 NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介
一、Redis API For .Net首先,不得不说Redis官方提供了众多的API开发包,但是目前Redis官方版本不支持.Net直接进行连接,需要使用一些第三方的开源类库。目前最流行的就是ServiceStack.Redis这个开源项目,其在GitHub上的下载地址为:https://github.com/ServiceStack/ServiceStack.Redis进入下载页面...
2020-01-03 16:15:20
128
原创 SQLServer找出执行慢的SQL语句
SELECT(total_elapsed_time / execution_count)/1000 N'平均时间ms',total_elapsed_time/1000 N'总花费时间ms',total_worker_time/1000 N'所用的CPU总时间ms',total_physical_reads N'物理读取总次数',total_logical_reads/execution...
2020-01-02 17:20:29
711
转载 NoSQL初探之人人都爱Redis:(1)Redis简介与简单安装
一、NoSQL的风生水起1.1 后Web2.0时代的发展要求 随着互联网Web2.0网站的兴起,传统的关系数据库在应付Web2.0网站,特别是超大规模和高并发的SNS类型的Web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题: (1)对数据库高并发读写的需求 网站要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,...
2019-12-31 11:13:41
115
转载 一些常用的正则表达式大全
一、校验数字的表达式1数字:^[0-9]*$2n位的数字:^\d{n}$3至少n位的数字:^\d{n,}$4m-n位的数字:^\d{m,n}$5零和非零开头的数字:^(0|[1-9][0-9]*)$6非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2...
2019-12-27 15:37:50
136
转载 第十二节: 总结Quartz.Net几种部署模式(IIS、Exe、服务部署【借助TopSelf、服务类】)
一.IIS部署 比如在MVC框架中集成了Quartz.Net定时调度,此时该调度系统会随着MVC框架被挂在IIS下,IIS会进程回收,所以大部分开发都会遇到Quartz挂在IIS下一段时间不好用。 补充:IIS可以设置定时自动回收,默认回收是1740分钟,也就是29小时。IIS自动回收相当于服务器IIS重启,应用程序池内存清空,所有数据被清除,相当于IIS重启,在度量快速开发平台服务器端...
2019-12-27 11:23:59
441
转载 第十节: 利用SQLServer实现Quartz的持久化和双机热备的集群模式
背景:默认情况下,Quartz.Net作业是持久化在内存中的,即 quartz.jobStore.type = "Quartz.Simpl.RAMJobStore, Quartz",这种模式有以下弊端:① 想在A服务器上控制B服务器上已经发布了的job和trigger不方便;② 很难实现Web端(寄宿在IIS上)管理作业,客户端(发布成服务)的这种模式。③ 最大弊端就是一旦服务器宕机...
2019-12-27 10:26:00
304
转载 第九节: 利用RemoteScheduler实现Sheduler的远程控制
一. RemoteScheduler远程控制1. 背景: 在A服务器上部署了一个Scheduler,我们想在B服务器上控制这个Scheduler。2. 猜想: A服务器上的Scheduler需要有地址、需要有端口、需要有名称(实际上也是如此)。3. 需求: 一个控制台程序作为服务端运行A服务器上(也可以部署成服务),用另一个B服务器上的Web端控制来控制这个Scheduler的暂停、继...
2019-12-27 10:07:31
223
转载 第八节: Quartz.Net五大构件之SimpleThreadPool及其四种配置方案
一. 简介揭秘:SimpleThreadPool是Quartz.Net中自带的线程池,默认个数为10个,代表一个Scheduler同一时刻并发的最多只能执行10个job,超过10个的job需要排队等待。二. 四种配置方案1.NameValueCollection的方式 需要利用StdSchedulerFactory的构造函数进行传进去,向哪个Sheduler中传,即配置哪个S...
2019-12-27 09:58:29
615
转载 第七节:Trigger(SimpleTrigger、CronTrigger)哑火(MisFire)策略
一. 简介1. 什么是哑火 由于某些原因导致触发器(trigger)在该触发的时候没有得到触发,后续对应的解决策略即为哑火策略。(个人理解)2. 哑火触发的条件 ①:所有的工作线程都在忙碌,导致某些trigger得不到触发.(如:simplethreadpool 默认是10个工作线程,但我有15个trigger同时触发,恰巧这10个trigger关联的job耗时都很长,剩下的...
2019-12-26 15:32:34
762
转载 第六节: 六类Calander处理六种不同的时间场景
背景介绍及其使用 该章节主要补充介绍,在前一章四类触发器的基础上配合六大Canlander来动态删减某些时间,来满足更多的应用场景。1. DailyCalendar:动态排除某天的某些字段.(需求:每天8-23点执行,每隔1s执行一次,但是21-22点这个区间不执行)2. WeeklyCalendar:适合在星期几的维度上做“减法操作”(需求:每天8-23点执行,每隔1s执...
2019-12-26 15:26:40
540
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人