Fork me on GitHub

2013年3月28日

摘要: 左连接造成的一些问题今天有同事告诉我,有个SQL执行了好久好久执行不出来,我说好就是多久?她说一天左右了。真是令人咋舌的SQL。于是我要来了SQL看了看执行计划,确实让人咋舌。 下图中就是执行计划的截图: 25G的COST和75T的Bytes确实是无法承受之重。这个SQL是这样子的: select部分做了很多sum运算,还有distinct等运算,总之很麻烦,group by部分就是上面的维度。其中最大的表是TABLE3和TABLE4,这两个表所需要查询的数据量都在3G以上,各自差不多3000万数据。 最开始我以为是因为数据量大的原因导致的这个执行计划不可实现,但是在我将T... 阅读全文
posted @ 2013-03-28 21:35 HackerVirus 阅读(330) 评论(0) 推荐(0)
摘要: 在IT信息化中,数据安全是必须考虑的问题,小到门户网站,大到企业级平台应用,甚至企业云,公有云,数据安全都是一个核心问题。我从事ERP软件开发多年,在ERP的认证,授权方面相对有一个比较系统的了解,本着讨论交流的精神与大家一起共勉。 首先我们要搞清楚一个问题,什么是认证,什么是授权。 认证——你是谁(Who)? 认证:认证(authentication):即对不同的用户进行识别,检查用户是否有权限对那些受限制的界面进行访问,这种称为认证。比如登录。 授权——谁(Who),在那个系统(Where),可以做什么(What)? 授权(authorization):决定用户可以对哪些功能按钮... 阅读全文
posted @ 2013-03-28 09:19 HackerVirus 阅读(343) 评论(0) 推荐(0)
摘要: IoC容器Autofac(4) - Autofact + Asp.net MVC + EF Code First(附源码)本篇文章,讲解如何使用Auotfac, Asp.net MVC和EF Code First,搭建一个松散的架构。 例子代码主要完成的功能是:列出数据库中Student表中的所有学生信息。阅读目录:一、 使用Entity Framework Code First, 写代码创建Student表二、使用Migrations, 生成数据库和初始化数据三、创建Controller方法和View四、正式项目开发中的困境五、解耦合,脱离数据层六、实例化,可恶的实例化七、使用Autofac 阅读全文
posted @ 2013-03-28 09:09 HackerVirus 阅读(293) 评论(0) 推荐(0)
摘要: 说明:这个Objective-C专题,是学习iOS开发的前奏,也为了让有面向对象语言开发经验的程序员,能够快速上手Objective-C。如果你还没有编程经验,或者对Objective-C、iOS开发不感兴趣,请忽略。学习本专题之前,建议先学习C语言专题。前言目前来说,Objective-C(简称OC)是iOS开发的核心语言,在开发过程中也会配合着使用C语言、C++,OC主要负责UI界面,C语言、C++可用于图形处理。近来,流传Ruby、C#也可以开发iOS应用程序了,甚至还说Ruby比OC更适合写iOS程序。这让不少学习iOS开发的朋友感到很困扰,究竟学哪门语言好呢?OC会不会被Ruby、C 阅读全文
posted @ 2013-03-28 09:08 HackerVirus 阅读(180) 评论(0) 推荐(0)
摘要: 关系型数据库设计目录一 Codd的RDBMS12法则——RDBMS的起源二 关系型数据库设计阶段三 设计原则四 命名规则 数据库设计,一个软件项目成功的基石。很多从业人员都认为,数据库设计其实不那么重要。现实中的情景也相当雷同,开发人员的数量是数据库设计人员的数倍。多数人使用数据库中的一部分,所以也会把数据库设计想的如此简单。其实不然,数据库设计也是门学问。 从笔者的经历看来,笔者更赞成在项目早期由开发者进行数据库设计(后期调优需要DBA)。根据笔者的项目经验,一个精通OOP和ORM的开发者,设计的数据库往往更为合理,更能适应需求的变化,如果追其原因,笔者个人猜测是因为数据库的规范化,与O.. 阅读全文
posted @ 2013-03-28 09:05 HackerVirus 阅读(209) 评论(0) 推荐(0)
摘要: 程序员远离你的细节思维本人也是程序员的实现,一枚。所以继承了程序员这个抽象的概念,同时也实现了其中的某些方法,如:少言寡语、喜欢看书、喜欢写代码等等,以下文章纯属对日常工作的人生感悟,如有雷同,纯属缘分。本人很少写软文,觉得比较浪费时间,这往篇文章写了不到2个小时,到家后复查了一遍,其中难免有些表述不清的地方,请大家多多见谅~同时也希望能够帮助和我一样走在门槛边上的人能够顺利的迈出那关键的一步二、目录1.写代码的思维2.Word的编制思维3.PPT的编制思维1.写代码的思维好吧,我们是程序员,编码是我们的工作任务,不知道你属于以下思考问题方式的哪种?场景一:初遇WCF..某A在某软件公司工作, 阅读全文
posted @ 2013-03-28 09:04 HackerVirus 阅读(153) 评论(0) 推荐(0)

2013年3月27日

摘要: C语言中static的作用总结一:首先我们先看下C程序的部分组成及存储位置:1)正文段——CPU执行的机器指令部分;一个程序只有一个副本;只读,防止程序由于意外事故而修改自身指令;2)初始化数据段(数据段)——在程序中所有赋了初值的全局变量,存放在这里。3)非初始化数据段(bss段)——在程序中没有初始化的全局变量;内核将此段初始化为0。4)栈——增长方向:自顶向下增长;自动变量以及每次函数调用时所需要保存的信息(返回地址;环境信息)。5)堆——动态存储分。二:下面我们分别从static修饰于全局变量、局部变量、函数的作用。1.全局静态变量在全局变量之前加上关键字static,全局变量就被定义 阅读全文
posted @ 2013-03-27 22:24 HackerVirus 阅读(412) 评论(0) 推荐(0)
摘要: 视图、索引、存储过程 、触发器、游标及事务1.视图不占物理存储空间,它只是一种逻辑对象。可将其看成一个"虚表" 视图是一个由select 语句指定,用以检索数据库表中某些行或列数据的语句存储定义注:创建视图语句中,不能包括order by、compute或者compute by 子句,也不能出现into关键字2.创建水平视图 视图的常见用法是限制用户只能够存取表中的某些数据行,用这种方法产生的视图称为水平视图,即表中行的子集create view student_view1asselect * from studentwhere (class_id='0903 阅读全文
posted @ 2013-03-27 22:23 HackerVirus 阅读(183) 评论(0) 推荐(0)
摘要: dojo + jersey 上传图片到数据库很气愤的一件事,我刚刚写好的一篇博客,点击提交时,博客园的程序报错!白写了!现在大家看到这篇是减缩版,代码是可以使用的,只是有些解释型语言,我不想在重复一遍了,希望博客园的管理者好好管理,不要再出现类似问题了。使用jersey发布上传图片服务需要依赖两个jar包:jersey-multiart.jar,mimepull.jar前端html:<form id="messageform" class="messagetable" enctype="multipart/form-data" 阅读全文
posted @ 2013-03-27 22:06 HackerVirus 阅读(322) 评论(0) 推荐(0)
摘要: 软件性能的可伸缩性软件或多或少的承载着人们这样那样的需求,如何去衡量软件的质量属性应该是软件人员一直都在思考的内容。McCall质量属性模型将软件的质量属性划分为产品修正、产品运行、产品转移三个部分,其实更简单的划分,可以将其分为开发态质量属性与运行态质量属性。1、正确性是软件质量的基础,但仅能够满足正确的代码,不过是程序世界中的一堆垃圾克劳士比说过:“质量是一组特性满足要求的程度”,满足“客户要求”、即正确性是所有软件质量的基础。但是,往往并不是所有的要求都是明确的。没有客户有耐心详细的提出有哪些质量要求,往往只是提出“需要什么样的功能”,至于怎么实现,用什么实现从来是不关心的。所以,一个仅 阅读全文
posted @ 2013-03-27 21:56 HackerVirus 阅读(1104) 评论(0) 推荐(0)