`
pcajax
  • 浏览: 2200808 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
文章列表
ASP.NET MVC采用Model绑定为目标Action生成了相应的参数列表,但是在真正执行目标Action方法之前,还需要对绑定的参数实施验证以确保其有效性,我们将针对参数的验证成为Model绑定。总地来说,我们可以采用4种不同的编程模式来进行针对绑定参数的验证。 一、手工验证绑定的参数 在定义具体Action方法的时候,对已经成功绑定的参数实施手工验证无疑是一种最为直接的编程方式,接下来我们通过一个简单的实例来演示如何将参数验证逻辑实现在对应的Action方法中,并在没有通过验证的情况下将错误信息响应给客户端。我们在一个ASP.NET MVC应用中定义了如下一个Person类作为被验证 ...
最近公司要招聘有经验的VC++程序员,让我来技术面。 我设计了一套题来问面试者。 有关于VC编译的、有C++基础的、有STL、有DLL、有多线程、有Win32/MFC的、还有OOP以及实际操作的。 感觉涉及的面还是比较全的,有基础,有进阶,甚至有的有些高深。 如果这些题能够回复得个七七八八,我认为有三到四年的工作经验的平均水平。 如果不仅回答得很好,还能讲出背后的原理,我认为五年以上的工作经验的平均水平。 如果OOP也回答得非常好,那么就是非常优秀的程序员。 我找公司员工看了下,有人说偏难,真的是这样吗? 不知道大家如何看待呢? 下面贴上我的面试题。 extern &qu ...
     对于内容型,不易变动的东西我们都希望给它来个静态化,还有种情况就是比如新浪云不支持.net,为了能跑起我们的网站, 只能放些静态页面上面,外加jsonp来实现交互,我们知道.net中有很多模板引擎,但都不是原装的,所以基本都没有代码提示, 用起来比较不爽,自razor出来后,私活中也抛弃了原先使用的NVelocity,而采用原装的razor。      好了,我们先看看怎么玩,首先我们去codeplex上下两个dll。http://razorengine.codeplex.com/ 
服务器性能上不去,是哪里出了问题?IO还是CPU?只有找到瓶颈点,才能对症下药; 如何寻找Linux单机负载瓶颈,遵循的原则是不要推测,我们要通过测量的数据说话; 负载分两类: 1.CPU负载; 2.IO负载; 排查流程 1.查看平均负载(top/uptime命令) 2.确认CPU、IO有无瓶颈;(使用 sar vmstat) 3.CPU负载过高时寻找流程: 4.IO负载过高时寻找流程; 查看平均负载 先通过top命令查看服务器是否出现负载过重的状况,之后,再具体使用工具来分析出是CPU负载过高还是IO负载过高; 比如,使用sar工具查看CPU使用率和IO等待率(sar的具体使用教程参 ...
 2.1 什么是策略模式 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。   2.2  策略模式包含角色 —抽象策略角色(strategy): 策略类,通常由一个接口或者抽象类实现。 —具体策略角色(ConcreteStrategy):包装了相关的算法和行为。 —环境角色(Context):持有一个策略类的引用,最终给客户端调用     2.3 策略模式UML图  Strategy为抽象类或接口 定义算法方法,然后由ConcreteStategyA来实现具体的算法,而Context维护着Strateg ...
  最近在工作中,要做定时任务的更能,最开始的时候,想到的是 JavaSE 中,自带 Timer 及 TimerTask 联合使用,完成定时任务。最后发现,随着业务的复杂,JDK 中的 Timer 和 TimerTask 并不能简单、灵活的完成定时任务的操作。于是,便学习了任务调度框架-- Quartz。在最初的学习中,网上的例子大多数是基于 quartz-2.0.0 之前的版本,但是发现,2.0.0之前的版本和 2.0.0之后的变化还是比较大的,网上给出的例子及方法,都不适用了。最后,在学习了 quartz-2.1.7 之后,大致了解了下相关的方法。现分享出来,以供学习。   首 ...
1.初始架构 2.应用服务与数据分离 3.使用缓存改善网站性能 4.应用服务器集群化
1.初始架构 2.应用服务与数据分离 3.使用缓存改善网站性能 4.应用服务器集群化
一  前言   在设计模式中有简单工厂,工厂方法,抽象工厂,这三种工厂方法,各自有各自的特点,但有都有共同的特点 工厂(Factory)都是围绕着工厂类转,这篇只写 "抽象工厂"相关的内容 上一篇的地址在这里 设 ...
一、基础 1、说明:创建数据库
一、基础 1、说明:创建数据库
  maven是一个比较流行的项目管理工具,在最近参与的项目中,也使用了maven,本文主要对在项目中的使用做一个总结,主要涉及maven的安装于配置、maven创建多模块项目。 1、maven安装与配置 maven的安装与配置非常简单,具体步骤如下:   1、首先到http://maven.apache.org/download.cgi下载maven的包,可以选择下载:apache-maven-3.2.1-bin.zip。   2、解压下载的文件到电脑硬盘的某个目录,比如D:\Program Files\   3、然后在环境变量中配置MAVEN_HOME=D:\Program Fi ...
简介Apworks是一款基于Microsoft .NET的面向领域驱动的企业级应用程序开发框架,它适用于以领域模型为核心的企业级系统的开发和集成。Apworks不仅能够很好地支持经典的分层架构,而且还能支持基于事件驱动的命令查询职责分离( ...
ArrayList和Vector使用了数组的实现,可以认为ArrayList或者Vector封装了对内部数组的操作,比如向数组中添加,删除,插入新的元素或者数据的扩展和重定向。 LinkedList使用了循环双向链表数据结构。与基于数组ArrayList相比,这是两种截然不同的实现技术,这也决定了它们将适用于完全不同的工作场景。 LinkedList链表由一系列表项连接而成。一个表项总是包含3个部分:元素内容,前驱表和后驱表,如图所示:   在下图展示了一个包含3个元素的LinkedList的各个表项间的连接关系。在JDK的实现中,无论LikedList是否为空,链表内部都有一个head ...
  在项目正式上线后,如果出现错误,异常,崩溃等情况 我们往往第一想到的事就是查看日志 所以日志对于一个系统的维护是非常重要的 贯穿所有的日志系统日志系统,往往是贯穿一个程序的所有代码的; 试想一下,如果你的日志完全是由第三方组件提供的; 那么就意味着,你的所有项目都必须引用这个dll; 也许你会说自己可以2次封装,那么依然需要所有项目都引用你的这个封装后的log项目 另一方面 一些log组件需要实例化后才可以使用,比如log4net,这又意味着你得有一个全局的静态变量,或者你自己二次封装   但其实微软已经为我们提供了2个十分方便的静态类,用于日志的记录 System. ...
Global site tag (gtag.js) - Google Analytics