- 博客(40)
- 资源 (21)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 ABP框架 - 验证数据传输对象
本节内容:简介 使用数据注解 自定义验证 禁用验证 正常化简介一个应用的输入应当先要验证,这个输入可能来自用户或另一个应用,在一个web应用里,验证通常实现两次:在客户端和在服务端,客户端验证是为了用户体验,最好是先检查一个表单并向用户显示无效的输入,但是服务端的验证更具有决定性意义和必要性。服务端验证通常实现在应用服务或控制器(通常,所有服务从展现层获取数据)。一个应用服务应该先检查(验证)输入然后再使用它。ABP提供了一个基础构造,自动验证一个应用的如下三个的所有输入:所.
2020-06-22 11:11:26
451
原创 ABP 软删除ISoftDelete
一、简介 ABP 的软删除是为了,在删除的时候,不是真正的删除数据,是为了保护数据。二、具体实现 在 Core 层,我们需要这个实体去实现这个 ISoftDelete 接口。实现它的public virtual bool IsDeleted { get; set; } 方法即可。namespace xxx.xxx.xxxxx{ using Abp.Domain.Entities; /// <summary> /// 餐馆招聘 (Mg58I..
2020-06-22 11:10:40
1766
原创 WebApi安全性 使用TOKEN+签名验证
首先问大家一个问题,你在写开放的API接口时是如何保证数据的安全性的?先来看看有哪些安全性问题在开放的api接口中,我们通过http Post或者Get方式请求服务器的时候,会面临着许多的安全性问题,例如:请求来源(身份)是否合法? 请求参数被篡改? 请求的唯一性(不可复制),防止请求被恶意攻击为了保证数据在通信时的安全性,我们可以采用TOKEN+参数签名的方式来进行相关验证。比如说我们客户端需要查询产品信息这个操作来进行分析,客户端点击查询按钮==》调用服务器端api进行查询==..
2020-06-18 12:16:39
718
原创 数据库分库分表思路
一. 数据切分关系型数据库本身比较容易成为系统瓶颈,单机存储容量、连接数、处理能力都有限。当单表的数据量达到1000W或100G以后,由于查询维度较多,即使添加从库、优化索引,做很多操作时性能仍下降严重。此时就要考虑对其进行切分了,切分的目的就在于减少数据库的负担,缩短查询时间。数据库分布式核心内容无非就是数据切分(Sharding),以及切分后对数据的定位、整合。数据切分就是将数据分散存储到多个数据库中,使得单一数据库中的数据量变小,通过扩充主机的数量缓解单一数据库的性能问题,从而达到提升数据库操
2020-06-17 14:59:04
278
原创 高性能web系统的架构和系统优化
软件公司需求相对稳定,能够按照计划按部就班的去实施,互联网公司需求相对来说不稳定,上线比较着急,大部分都是小迭代更新,且更新频繁,感觉有点乱。所以项目管理在软件公司比较好执行,一开始可能有点混乱,但是只要是走上一两个迭代,就可以稳定的往前走,在互联网公司应用比较困难。美其名曰敏捷开发,就是为了给自己找一个不稳定的借口。 目前的公司是一家电商公司,在互联网如火如荼的双11也能体验一把,在增加订单量的同时,也给软件带来了更大的挑战,软件架构就像一个人的心脏,汽车的发动机,如果系统的架构出了问题,这...
2020-06-16 20:32:21
319
原创 使用插件bootstrap-table实现表格记录的查询、分页、排序等处理
在业务系统开发中,对表格记录的查询、分页、排序等处理是非常常见的,在Web开发中,可以采用很多功能强大的插件来满足要求,且能极大的提高开发效率,本随笔介绍这个bootstrap-table是一款非常有名的开源表格插件,在很多项目中广泛的应用。Bootstrap-table插件提供了非常丰富的属性设置,可以实现查询、分页、排序、复选框、设置显示列、Card view视图、主从表显示、合并列、国际化处理等处理功能,而且该插件同时也提供了一些不错的扩展功能,如移动行、移动列位置等一些特殊的功能,插件可以用基于HT
2020-06-16 16:32:53
795
原创 CSS之浮动布局
css之浮动布局(float,浮动原理,清除/闭合浮动方法)1.什么是浮动: 在我们布局的时候用到的一种技术,能够方便我们进行布局,通过让元素浮动,我们可以使元素在水平上左右移动,再通过margin属性调整位置。2.浮动的原理; 使当前元素脱离普通流,相当于浮动起来一样,浮动的框可以左右移动,直至它的外边缘遇到包含框或者另一个浮动的边缘3、浮动的生成: 使用css属性 float:left/right/none左浮动/右浮动/不浮动(默认)4、浮动的影...
2020-06-15 16:15:12
141
原创 Flex 布局语法教程
网页布局(layout)是CSS的一个重点应用。布局的传统解决方案,基于盒状模型,依赖display属性 +position属性 +float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。2009年,W3C提出了一种新的方案—-Flex布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。Flex布局将成为未来布局的首选方案。本文介绍Flex布局的语法。以下内容主要参考了下面两篇文章:A...
2020-06-15 16:02:04
181
原创 sql语句优化之SQL Server(优化方案大全)
MS SQL Server查询优化方法查询速度慢的原因很多,常见如下几种1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)2、I/O吞吐量小,形成了瓶颈效应。3、没有创建计算列导致查询不优化。4、内存不足5、网络速度慢6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源。9、返回了不必要的行和列10、查询语句不好,没有优化可以
2020-06-12 13:25:58
1691
原创 SQL Server数据库字段类型说明及区别
目前Sql Server数据库一共有X个字段类型,大体分为9类,分别是字符串类型、二进制码字符串数据类型、Unincode字符串数据、整数类型、精确数据类型、近似值浮点数值数据类型、日期时间数据类型、货币数据类型、特殊数据类型。当然Sql Server还提供用户自定义的数据类型,但在我这篇不做讨论。字符串类型Charchar数据类型用来存储指定长度的定长非统一编码型的数据。当定义一列为此类型时,你必须指定列长。当你总能知道要存储的数据的长度时,此数据类型很有用。例如,当你按邮政编码加4个..
2020-06-12 13:24:33
1356
原创 SQL Server 数据库性能优化
对一个数据库来说,只能做到更优,不可能最优,并且根据实际需要,优化方案也是有所差异的,大概需要我们关心的有它的读取速度、存储空间、可维护性以及可扩展性等,而这些方面往往又是相互矛盾的,那么本文就着重讲Sqlserver的性能调优~ 小编相信不少的朋友,无论是做开发、架构的,还是DBA等,都经常听说“调优”这个词。说起“调优”,可能会让很多技术人员心头激情澎湃,也可能会让很多人感觉苦恼。当然,也有很多人对此不屑一顾,因为并不是每个人接触到的项目都很大,也不是每个人做的项目都对性能要求很高。 ...
2020-06-12 13:22:34
1237
转载 计算机CPU工作原理及汇编语言简介
计算机CPU工作原理及汇编语言简介(链接)从微信公众号把原文直接复制过来,发现图片、表格经常丢失,只有纯文字,所以建议直接点击上述链接阅读。复制过来的纯文字内容如下(图片、表格丢失,格式错乱):在之前的文章中, 基于“冯诺依曼结构”,我们制作了一台简易计算机,如下图所示:其中有CPU的影子:a. U3加法器对应CPU运算器。b. U1计数器、U4触发器、时钟信号、U5非门,这四个部件对应CPU控制器。...
2020-06-10 16:45:24
1789
1
原创 2020初写点感想
已经将近半年没有写过独立的博客了,今年新冠肺炎,大多数人闭门不出,各个行业也是勒紧裤腰,众志成城克疫情,最近中国已经处于稳定期,对于我们IT工作者,软件开发者,我谈一下我的感受。 从年前1月20号左右放假,到现在已经两个多月了,在这期间总结一下自己都干了啥,虽然感觉没有写很多代码,但是在知识的海洋里逛荡了很多时间,这一段时间年前与领导商量的一个项目学生公寓缴费管理系统算是开发完了,...
2020-03-31 14:24:50
133
转载 程序员的11个阶段
程序员的职业生涯是一段充满起伏的有趣经历。考虑到其陡峭的学习曲线,完全可以预见你将经历挫折、启蒙、骄傲自大这几个时期,以及穿插其间的各种心路历程。在这篇文章中让我们轻松一下,在作者诙谐的语言中来回顾这11个阶段:阶段1-菜鸟初入职场的日子,我们都充满激情。在此期间,你毫无头绪,根本不知道该做什么。就像鱼儿离开了水,每一行代码对你来说都是个迷。Doctype?哈?见鬼,这
2018-01-09 14:14:58
391
原创 列表页面中处理下拉框
列表页面中处理下拉框2018年1月7日23:13在表单中,我们实现了动态的下拉框。而在列表页面中,我们现在也可以实现出下面的效果: 列表的model和表单的工作模式是不太一样的,而且下拉框中的数据何时下到客户端也略有不同。 与表单一样,打开表单和列表时会发送ajax请求到服务端获取数据。在列表中,第一次请求的时候就可以提供下拉列表的数据,而每一次重新
2018-01-09 11:25:30
818
转载 ASP.NET MVC与ASP.NET Web API的区别
MVC主要用来构建网站,既关心数据也关心页面展示,而Web API只关注数据Web API支持格式协商,客户端可以通过Accept header通知服务器期望的格式Web API支持Self Host,MVC目前不支持Web API通过不同的http verb表达不同的动作(CRUD),MVC则通过Action名字表达动作Web API内建于ASP.NET System.Web.H
2017-11-14 14:42:03
1249
转载 2017开发语言排行(本人是搞C#+javascript的)
就在前两天,GitHub 举办了年度盛会 GitHub Universe,公布了 GitHub 这一年的数据变化与主要动作,GitHub 主页做了次更新,紧接着,发布了 GitHub Octoverse 2017 年度报告,今天就带大家解读下这份报告。GitHub 自 2007 年成立,如今已经十年了,我在中国算是资深老 GitHub 粉了,这些年一直见证着 GitHub 的壮大,毫无疑问,G
2017-10-14 19:52:07
6154
原创 Owin+web api 整合开发+配置中心心得体会
近日在某公司参加了一个项目,虽然用的仍然是微软的框架,但是有种清新的感觉,web 服务器用的不是IIS 而是 owin ,web service 用的是web api ,数据库访问框架也摒弃了微软的ado.net ,entityframe 等orm框架,数据库也不是本地的,而是阿里云云端数据库+数据库访问中间件的方式进行整合开发,数据从源头到展示层,基本是jsondata完成。没有对象,没有关系型
2016-11-09 14:46:45
1904
2
原创 我所认知的软件开发
回想起来自己学习计算机专业也有5年之久,开发也有两年之久。期间学过个种技术,遇到过各种问题,每次都在转变思路。但是总是被新的技术拍在沙滩上。然后又被带进了海里。 上大学的时候,算是学过好几门语言,C,C++,C#,Java这几门主流语言算是学遍了,其中有两门语言算是学的比较长的,一个是C#,一个是java。有一段时间非常纠结于学习C#还是Java。 2010年的时候算
2015-08-19 14:58:39
684
原创 几种数据库的拙见
关系型数据库:Oracle 数据库:强大,支持的数据源种类多,权限明确,事务可靠,大量数据存储效率高,各个平台对其支持比较好,java,C#,php,python 等等。都对其支持的比较好Sql Server :一枝独秀,在windows平台上,光芒四射,优秀的数据库管理工具,支持sql比较规范。没有比oracle强大,也没mysql轻便。access:办公数据库,类似于excel,各
2015-08-19 10:40:44
1173
原创 本人参与的项目
2010年,高分辨率卫星对地观测系统原形系统,主要在项目组里面打酱油,开发了一两个界面,用的技术是当时比较火的siliverlight技术。2013年,国际强震救援处置系统,主要在项目中参与地震信息多元分类系统,和研判数据管理系统。用的技术是asp.net webform2014年,跨断层流动形变数据分析处理系统,主要负责可视化分析部分,对曲线的可视化分析.用的技术是windows for
2015-08-18 11:40:13
487
原创 ASP.NET MVC 的开发体验
最近,在搜房公司开发一套系统,用的技术是asp.net mvc,此技术相比微软之前的webForm 真是好用多了。首先,支持原生的html5开发技术,渲染引擎razor.基于mvc的开发模式,使得开发过程控制力高,项目管理难度低,扩展程度好,而且新的路由机制也是一大亮点。完全让外界访问者不知其后台技术是基于.net 的。其次,该技术完全可以运用到linux系统之上,实现了跨平台,而且效
2015-08-18 11:29:50
408
1
转载 分析Java类加载全过程
一个java文件从被加载到被卸载这个生命过程,总共要经历4个阶段:加载->链接(验证+准备+解析)->初始化(使用前的准备)->使用->卸载其中加载(除了自定义加载)+链接的过程是完全由jvm负责的,什么时候要对类进行初始化工作(加载+链接在此之前已经完成了),jvm有严格的规定(四种情况):1.遇到new,getstatic,putstatic,invokestatic这
2013-10-31 23:09:08
414
转载 《深入理解Java虚拟机》笔记
在C里面我们想执行一段自己编写的机器指令的方法大概如下:?typedefvoid(*FUNC)(int);char* str ="your code";FUNC f = (FUNC)str;(*f)(0); 也就是说,我们完全可以做一个工具,从一个文件中读入指令,然后将这些指令运行起来。上面代码中“编
2013-10-31 23:03:26
389
转载 深入Java虚拟机:JVM中的Stack和Heap
在JVM中,内存分为两个部分,Stack(栈)和Heap(堆),这里,我们从JVM的内存管理原理的角度来认识Stack和Heap,并通过这些原理认清Java中静态方法和静态属性的问题。一般,JVM的内存分为两部分:Stack和Heap。Stack(栈)是JVM的内存指令区。Stack管理很简单,push一定长度字节的数据或者指令,Stack指针压栈相应的字节位移;pop一定字节长度
2013-10-31 22:46:35
371
转载 Oracle逻辑结构
Oracle的逻辑结构是一种层次结构。主要由:表空间、段、区和数据块等概念组成。逻辑结构是面向用户的,用户使用Oracle开发应用程序使用的就是逻辑结构。数据库存储层次结构及其构成关系,结构对象也从数据块到表空间形成了不同层次的粒度关系,如图2-3和图2-4所示。图2-3 Oracle 10g数据库层次结构图图2-4 段、区和数据块之间的关系 1、数据块 Oracle
2013-10-31 22:43:16
534
转载 异步编程
1、什么是异步编程,为什么会需要异步编程 2、.NET下的异步编程及其发展 3、.NET线程同步机制及线程间数据封送 4、异步模式 5、线程安全及异常处理 6、线程取消 什么是异步编程,为什么会需要异步编程 这个世界上资源是受限的。但资源限制和懒惰一样促进了工业和科技的发展。在计算机方面举个例子,计算机非得是二进制吗?对计算机来说二进制最好吗?不是,这是由
2013-10-31 22:37:30
530
原创 见到C++primer作者Stanley B.Lippman,内心小激动。
昨日,C++primer 作者 Stanley B.Lippman到北航进行了讲座,近距离的接近了大师的风范,甚是激动。最后买了本 C++ primer 第五版,大师亲笔签名,并和大师拍照留念。大师大概讲了一下几个问题:C++的发展。C++的应用范围。(高效率,高实时)C++的对象模型的发展。C++的新的特性。大师回答了在场的同学的提问:有一下几
2013-10-29 15:42:50
1352
原创 C#反射详解
摘要单纯的反射带来灵活性的同时,也大大降低了应用程序的效率。本文将利用C#的各种技术,就如何实现动态的方法调用或属性访问做一些初步的研究。希望可以给同样需要提高反射性能的朋友一些帮助。问题的抽象反射可以用在很多的情景中,但是抽象来看就是用来访问编译时无法确定的成员。这成员可以是方法,也可以是属性。为了简化问题,我们把问题限定在属性的访问上。那么反射这个功能就可以抽象成下面这
2013-10-28 16:37:14
545
原创 写技术博客的心得.
现在发现写技术博客是一个很好的习惯了耶.1.总结技术知识点.2.方便以后遇到同样的问题,方便查阅.3.利于他人学习.4.积累财富,积累积分.5.提高自己的人气,是件不错的事情.
2013-10-28 14:44:19
365
转载 C#获取项目程序路径的方法
C#获取项目程序路径的方法 //获取当前进程的完整路径,包含文件名(进程名)。string str = this.GetType().Assembly.Location;result: X:/xxx/xxx/xxx.exe (.exe文件所在的目录+.exe文件名)//获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名)。
2013-10-28 14:40:17
480
转载 Web相关概念
Web简介:Web是WWW(World Wide Web)的简称,又称为万维网,是建立在客户机/服务器上的,以HTML语言和HTML协议为基础,提供面向Internet服务的,有一致用户界面的一种信息服务系统。Web Service简介:其实就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API,也就是说,能用编程的方式通过Web来调用这个程序,我们把调用这个W
2013-10-28 12:13:08
548
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人