天高地厚

随笔 - 268, 文章 - 0, 评论 - 13, 阅读 - 18万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年4月 >
30 31 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 1 2 3
4 5 6 7 8 9 10

05 2013 档案

摘要:前言 最近几年在.net方面的工作经历,让我长久以来(有几年了)想写关于大型asp.net应用系统架构文章的念头。之前和同事们聊天的时候说的都是一些思维片段,其中的想法不尽完善,聊完天再仔细想想,一些主意就逐渐清晰了。现在终于付诸行动了,将一些想到的主意与大家一起探讨,也算是对过去几年在ASP.NET方面的一个总结。这对我来说也是一个学习过程。 博客园有不少同仁在写系统架构或者企业应用架构方面的文章,我看过其中一些。就我看过的这些文章,我发现他们当中相当多的人写的是分层架构。从我的看法来说,分层是不错。但是如果是我自己写的话,我会从架构的选择来说起。那么应用程序的架构就有可能不选择分层的架.. 阅读全文

posted @ 2013-05-28 13:56 天高地厚-GNU 阅读(132) 评论(0) 推荐(0)

摘要:Windows 8 RT是Windows runtime的简称,要理解WinRT先要了解一个问题,Windows NT开发时,实际上是支持很多CPU类型的,事实上他的确量产了某些CPU(例如安腾)的版本,只不过他的使用群体太少,很多人不知道而已。 所以Windows 8支持多种ARM CPU其实是不难的事情,编写一堆的驱动就可以了。 真的那么简单吗? 当然不是,如果你的程序是本地应用程序,即那些程序直接使用特定CPU指令的程序,是不可以在各种CPU版本的Windows上运行的,很不幸,众多的C、C++编写的程序基本上都是这种。所以你现在玩的魔兽是不可以运行在ARM版的Windows 8上的.. 阅读全文

posted @ 2013-05-28 10:49 天高地厚-GNU 阅读(112) 评论(1) 推荐(0)

摘要:本文主要学习是类之间的关联是如何映射到数据库中形成表与表间的关系的。这种关系包括 一对多,多对多,一对一。多重关系Code First在处理多重性关系时应用了一系列规则。规则使用导航属性确定多重性关系。即可以是一对导航属性互相指定(双向关系),也可以是单个导航属性(单向关系)。1、如果你的类中包含一个引用和一个集合导航属性,Code First视为一对多关系;2、如果你的类中仅在单边包含导航属性(即要么是集合要么是引用,只有一种),Code First也将其视为一对多关系;3、如果你的类包含两个集合属性,Code First默认会使用多对多关系;4、如果你的类包含两个引用属性,Code Fir 阅读全文

posted @ 2013-05-28 09:53 天高地厚-GNU 阅读(214) 评论(0) 推荐(0)

摘要:1、使用javascript函数:<ItemTemplate> <asp:HyperLink ID="EditLink" Runat=server NavigateUrl='<%# "javascript:edit(escape(\"" + DataBinder.Eval(Container.DataItem, "subcid") + "\"))" %>' ImageUrl="image/edit.gif" text=" 阅读全文

posted @ 2013-05-25 09:55 天高地厚-GNU 阅读(216) 评论(0) 推荐(0)

摘要:Page,我想每个ASP.NET开发人员对它应该都是比较熟悉的。这次的博客我就打算专门谈谈它。不过呢,我不打算说 在Page中使用控件的一些话题,也不会说Page的生命周期的相关话题,因为我认为这些话题被人谈论的次数实在是太多了,尤其是市面上的ASP.NET的书籍,都会比较喜欢这些话题。 我不喜欢重复,因此今天我只想谈些人家不谈的那点事,但我认为它们仍然很重要。 回到顶部一些重要的Page指令虽然Page公开了很多属性,让我们可以在运行时调整它的状态与行为,但是,还有些重要的参数却是以“指令”方式提供的,需要在设计时就指定。下面是我整理的一些我认为 比较重要并且经常需要使用 的指令: @ Pa 阅读全文

posted @ 2013-05-25 09:06 天高地厚-GNU 阅读(150) 评论(0) 推荐(0)

摘要:在WebBrowser下对网页进行操作其实是一件挺轻松的事情,他可以很方便实现自定义的网站访问习惯。而WebBrowser毕竟 是对MS原生控件的封装,当我们使用C#下的WebBrowser尤其是这样,虽然他可以更方便大家去调用,但是他的方便却是牺牲了灵活性为代价的。有一天我想使用WebBrowser获取一个网站的COOKIE,在调用Document.Cookie时,发现无法完整获取其COOKIE,百思 不得其解,这么简单的功能,WebBrowser也会秀逗。经过抓包分析,发现原来该网站对写入到用户端关键的Cookie,加入httponlyHttpOnly,其实是一个提高WEB网站应用程序安全 阅读全文

posted @ 2013-05-24 11:55 天高地厚-GNU 阅读(335) 评论(0) 推荐(0)

摘要:目 录1.Repeater的嵌套使用2.Repeater里的按钮单击事件3.获取子Repeater里的控件4.Repeater里单选按钮互斥问题5.Repeater中记录单选按钮选择状态并显示1.Repeater的嵌套使用:参考代码:前台:<asp:Repeater ID="questionTable" runat="server" onitemdatabound="questionTable_ItemDataBound"><itemtemplate> <%#DataBinder.Eval (Contai 阅读全文

posted @ 2013-05-24 11:47 天高地厚-GNU 阅读(422) 评论(0) 推荐(0)

摘要:最近几天,在做项目的过程中,写了一些存储过程用来处理一些业务逻辑,发现在数据库中只有很少几个存储过程,而我这边就一个很小的模块都要涉及到几张表的操作,写存储过程是最方便的,而且效率也是最高的。于是,我问了一下这边的负责人,他们之前开发的那些模块,怎么没有写几个存储过程?而负责人的给我的回答是,以后别人来维护,出现问题时,跟踪调试写存储过程不好调试。我不敢苟同这种说法。 既然项目负责人不让用存储过程,那只能用代码实现这些业务逻辑了,我选择用ADO.NET中的事务。 我要实现的功能是上传附件的功能,需要涉及到3张表,分别是附件表Appendix,报告基础表Report和零件表Part。另外还有.. 阅读全文

posted @ 2013-05-23 13:17 天高地厚-GNU 阅读(169) 评论(0) 推荐(0)

摘要:第二章:Udev硬件设备管理机制2.00本章内容简介:·理解Linux中的Udev是如何管理硬件设备;·学习如何为自定义设备名编写udev规则;2.01Udev的功能:在Linux系统中,内核的主要功能可以分为5大部分:文件系统、内存调度、进程调度、协议管理、硬件管理。其中的硬件管理就是由Udev提供的。系统中的/dev目录是一个包含了大量设备条目的目录,通过Udev来对设备进行管理,给设备提供对应的名称空间,为设备命名,应用程序可以查询设备是否存在以及设备的名称等。它同时也是用来接替devfs及hotplug的功能,这意味着它要在添加/删除硬件时处理/dev目录以及所有用 阅读全文

posted @ 2013-05-22 13:10 天高地厚-GNU 阅读(328) 评论(0) 推荐(0)

摘要:数据是一个企业的命根子,尤其是在当今绝大部分的行业都实现了信息化的管理的时代,企业所有运营的数据、财务信息等都会存放到数据库中,在用户量和数据量不断变大的情况下,如何保障这些信息的安全、保证随时随地的能被用户访问,同时还需要在用户不间断访问的情况下调整、修改这些数据和结构,用以满足业务的需求变更,这本身一门很艺术的事了。 这篇文章主要总结了SQLServer数据库运维时,在保证数据安全和DBA操作数据库时保证不影响用户访问方面的一些技巧,之所以将之形容为“虎口夺食”,是因为DBA是个风险相当高的行业,在高并发、大数据量的系统中,很多小的失误或者操作不当,都将造成严重的后果,不仅影响系统的正常. 阅读全文

posted @ 2013-05-18 10:30 天高地厚-GNU 阅读(293) 评论(0) 推荐(0)

摘要:假设有一个张表Student,有100万条数据,其中有三行: Name Age 张三 -11 李四 -13 王五 14 程序员A发现数据有错误,有一些学生的年龄有负数,他连接数据库,打算把所有的负数变成正数,并且希望在修改的时候,别人不可以读取数据。此时他对两行数据加了X排他锁。 程序员B发现有几个的姓名写错了,要修改,这时他打算给整张表加上S锁,也就是,别人可以读取数据,但是不能修改。这时数据库需要判断,这张表是否可以加S锁?如何判断呢:要看这张表中的100万行数据中有没有X锁,如果被加锁的这两行数据刚好在最后,那么要判断100万次才能得出结论:有一行加了X锁,该表不能加S锁,请等待该锁释放 阅读全文

posted @ 2013-05-16 15:14 天高地厚-GNU 阅读(346) 评论(0) 推荐(0)

摘要:学习编程语言,掌握面向对象的编程思想尤为重要,一旦理解了面向对象的这种概念,那么好些地方拿到生活中去理解,就容易的多了。书本上的枯燥干涩的语言,对于好多人来说,即难懂,更难长时间牢牢记得。但是编程语言是为生活服务,也是来源于生活。我们的生活是丰富多彩的,那么,使用生活中的实例来理解编程,一切就容易的多了。下面,我们就用生活中打电话的例子来理解ASP.NET运行时的内部过程:当请求到达IIS后,IIS通过Aspnet_isapi.dll的作用将请求转交给ASP.NET运行时环境,在Asp.net运行时环境中进行一定处理,最终处理结果会返回给IIS,发送到客户端。Asp.net运行时中处理请求是通 阅读全文

posted @ 2013-05-16 13:06 天高地厚-GNU 阅读(120) 评论(0) 推荐(0)

摘要:为了更好的说明,我们先来看看一个页面的加载的过程。1.当用户在浏览器地址输入一个地址,然后enter。2.此时浏览器首先会去进行域名解析,要么读取本地的DNS缓存,或者去远程网络上面解析,最后的结果就是把域名对应的IP地址得到。3.得到了IP地址之后,浏览器就开始发送请求,建立TCP连接,经过三次握手之后,连接就建立了。4.TCP连接建立之后,浏览器就把请求发送过去。5.服务端接收到请求之后,就开始处理,例如,如果请求的是一个页面(不管是动态的还是静态的),最后的结果就是:服务端把响应发送发送给客户端。6.在响应中,先发送的是响应头,之后就开始传递html内容。7.Html内容经过网络传输到了 阅读全文

posted @ 2013-05-11 13:57 天高地厚-GNU 阅读(2391) 评论(0) 推荐(0)

摘要:SQL> desc dba_data_files Name Null? Type ----------------------------------------- -------- ---------------------------- FILE_NAME VARCHAR2(257) FILE_ID NUMBER TABLESPACE_NAME ... 阅读全文

posted @ 2013-05-09 16:32 天高地厚-GNU 阅读(180) 评论(0) 推荐(0)

摘要:Clustrix Sierra Clustrix Sierra是一款分布式数据库系统,它既支持最简单的Key-Value格式,又兼容MySQL的功能,同时能非常简单通过添加新的节点来存储数十亿条数据。它的功能主要体现在下面这四个方面: 扩展和高可用性方面:只要添加一个节点,就能在吞吐量等性能指标上实现线性提升,最多能扩展到几百个节点。 速度方面:其解决传统数据库写数据慢的情况,并保证了读数据的速度。 兼容MySQL:其支持MySQL所有功能,并支持ACID(Atomicity, Consistency, Isolation, Durability),而且在迁移现有MySQL方面非常方便。 在线 阅读全文

posted @ 2013-05-09 09:26 天高地厚-GNU 阅读(813) 评论(0) 推荐(0)

摘要:打个通俗易懂的比方,文件在磁盘上的存储就像是一个链表,表头是文件的起始地址,整个文件并不一定是连续的,而是一个节点一个节点的连接起来的。要访问某个文件时,只要找到表头就行了。删除文件时,其实只是把表头删除了,后面的数据并没有删除,直到下一次进行写磁盘操作需要占用节点所在位置时,才会把相应的数据覆盖掉。数据恢复软件正是利用了这一点。所以,就算你误删了文件之后又进行了其他写磁盘操作,只要没有覆盖掉那些数据,都是可以恢复的。 文件之所以能被恢复,须从文件在硬盘上的数据结构和文件的储存原理谈起。新买回的硬盘需分区、格式化后才能安装系统使用。一般要将硬盘分成主引导扇区、操作系统引导扇区、文件分配表... 阅读全文

posted @ 2013-05-08 11:45 天高地厚-GNU 阅读(608) 评论(0) 推荐(0)

摘要:本来想写个文件系统的专题,结果发现对硬盘的内部架构和存储原理还是比较模糊,因为不了解“一点”硬盘的存储原理对文件系统的认识老是感觉镜花水月,不踏实。经过搜集整理资料就由了本文的问世。借用Bean_lee兄一句话:成果和荣耀归于前辈。首先,让我们看一下硬盘的发展史:1956年9月13日,IBM的IBM 350 RAMAC(Random Access Method of Accounting and Control)是现代硬盘的雏形,整个硬盘需要50个直径为24英寸表面涂有磁浆的盘片,它相当于两个冰箱的体积,不过其存储容量只有5MB。1971年,IBM开始采用一种名叫Merlin的技术生产硬盘.. 阅读全文

posted @ 2013-05-07 17:33 天高地厚-GNU 阅读(180) 评论(0) 推荐(0)

摘要:我们都知道在Oracle中每条SQL语句在执行之前都需要经过解析,这里面又分为软解析和硬解析。在Oracle中存在两种类型的SQL语句,一类为 DDL语句(数据定义语言),他们是从来不会共享使用的,也就是每次执行都需要进行硬解析。还有一类就是DML语句(数据操纵语言),他们会根据情况选择要么进行硬解析,要么进行软解析。DML:INSERT,UPDATE,DELETE,SELECTDDL:CREATE,DROP,ALTER一. SQL 解析过程Oracle对此SQL将进行几个步骤的处理过程: 1、语法检查(syntax check): 检查此sql的拼写是否语法。 2、语义检查(semantic 阅读全文

posted @ 2013-05-06 17:03 天高地厚-GNU 阅读(228) 评论(0) 推荐(0)

摘要:一,简单演示hash算法....二、详解oracle中是如何使用hash算法的....三、名词解释:....四、生动的例子:什么叫哈希表(Hash Table)一,简单演示hash算法 在介绍library cache的内部管理机制前,先简单介绍一下所谓的hash算法。 oracle内部在实现管理的过程中大量用到了hash算法。hash算法是为了能够进行快速查找定位所使用一种技术。哈希表是一个以空间换取时间的数据结构 。所谓hash算法,就是根据要查找的值,对该值进行一定的hash算法后得出该值所在的索引号,然后进入到该值应该存在的一列数值列表(可以理解为一个二维数组)里,通过该索引号去找.. 阅读全文

posted @ 2013-05-06 17:00 天高地厚-GNU 阅读(632) 评论(0) 推荐(0)

摘要:每次当浏览器向Web服务器发起一个请求的时,都会伴随着一些HTTP头的发送.而这些HTTP头是用于给Web服务器提供一些额外信息以便于处理请求。比如说吧。如果浏览器支持压缩功能,则浏览器会发送Accept-EncodingHTTP头,这样一来服务器便知道浏览器可以使用哪种压缩算法。还有任何在上一次传输中服务端设置的cookies也会通过CookiesHTTP头来回传到服务器,浏览器还会发送用于让服务端知道客户使用的是何种浏览器(IE,火狐,Safari等),浏览器版本,操作系统以及其他相关信息的User-AgentHTTP头。 同样,Web服务器也会在发送回客户端时伴随着一些HTTP头,这些. 阅读全文

posted @ 2013-05-03 09:48 天高地厚-GNU 阅读(247) 评论(0) 推荐(0)

点击右上角即可分享
微信分享提示