自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Lullaby's Blog

知而不行,不知也

原创 Java ExecutorService 多线程实践(一)

需要实现一个多线程并发的业务场景,启动若干子线程,最后要所有子线程运行结束才结束。(类似 .NET 里的 Task WaitAll )Java 中的 ExecutorService 多线程编程模型提供这样一个机制,通过代码来介绍一下。

2015-01-01 22:45:47 4614

原创 java spi

java spi 是一种灵活的扩展机制

2014-10-12 18:15:30 2780

原创 WebService 设计总结

接触过很多电商的WebService,有种一看就蛋疼的设计,今天要从这个反例说一说 WebService 的设计。[WebMethod]public string QueryOrderDetail(string xml){ ...}如上代码输入是一个XML,输出也是一个XML,方法内部自己在做序列化和反序列化。放着成熟的SOAP标准不用,自己再实现一套数据标准。反而XML成为一个黑盒,

2014-05-26 00:45:42 7975 6

原创 各大电商的缓存策略

各大页面不为人知的“秘密”——管中窥豹看看各大电商如何做架构,如何做缓存的。    @原数据淘宝  首页缓存1小时,用Tengine Web服务亚马逊   居然...不缓存??京东  首页缓存2分钟,产品页缓存5分钟。JDWS 自己的服务中间件?还是只是...改个名...首页产品详情页苏宁 首页缓存1个小时  真是和京东好基友,自定义“SNWS”? 产品页看样子还没去IBM...channel页面

2014-03-28 23:57:13 5400

原创 ASP.NET WebApi 实现多附件上传

前几天调查 ASP.NET WebApi 实现 multipart/form-data 文件上传功能时,遇到一个问题正好记录下来。multipart/form-data 经常用于多附件上传,其中数据是以 boundary 进行分割,形如:紧接着 boundary 的是该部分数据的描述。形如:咳咳,有点跑题了。因为要用 java 实现客户端上传,先看看 java 实现:

2014-02-10 01:15:14 8935 3

原创 maven 压缩、合并 js, css

我们知道在 Web 应用开发中为了提高客户端响应速度,需要将页面使用的资源最小化,yuicompressor-maven-plugin 能够很好的实现js, css的压缩、合并处理。先来看看工程结构:project└─main    ├─java    └─webapp        ├─app        │  │  index.html        │  │          │  ├─c

2013-12-28 22:43:59 6333

原创 [SOA] Mule ESB 3.x 入门(三)—— 消息路由

在前面两篇博文基础上,继续来看看如何利用 Mule 来实现简单的消息路由。消息路由是ESB平台上最基本最重要的功能,它是指通过一定的规则将消息从一个端点发送到另一端点。通常ESB平台上会统一管理很多服务,为了便于使用和管理通常会对外暴露一个唯一入口,通过请求携带的路由信息来进行分发。如下图所示:ESB平台将维护一套路由表,根据请求中的路由信息来做处理。

2013-10-23 01:41:58 5425

原创 [SOA] Mule ESB 3.x 入门(二)—— 配置(spring, properties, log4j)

Mule 中很好的结合了spring, 在 Mule 3.x 中使用了 spring 3.x 作为核心组件的依赖,基本上就是开箱即用了。下面介绍一下如何

2013-08-12 01:15:27 5203 3

原创 [SOA] Mule ESB 3.x 入门(一)—— 消息流

关于Mule ESB,简单来说Mule接受一个消息,按照某种顺序处理这个消息,这样的处理可导致多种结果。有时,Mule改变或变换消息返回到原来的消息来源(request-response)。或者,在其原有的基础上改变形式发送到一个或多个第三方(router, transfer)。而在其他一些情况下,如果消息没有达到的具体要求,Mule可以拒绝处理的消息(validation, throttling

2013-08-11 23:26:49 4763 2

原创 [SOA] Mule ESB Linux 部署

本文介绍如何在 Linux 上部署 Mule ESB。Mule 是一个以Java为核心的轻量级的消息框架和整合平台,基于EIP(Enterprise Integeration Patterns,由Hohpe和Woolf编写的一本书)而实现的。Mule的核心组件是UMO(Universal Message Objects,从Mule2.0开始UMO这一概念已经被组件Componse所代替),UMO实

2013-04-12 00:16:28 6451 8

原创 ASP.NET Web API & Backbone (2) —— CRUD

本章主要介绍使用Backbone 对 WebAPI 进行CRUD,我们将会操作一个数据集(比如:留言簿里的留言一览)。对于数据集合,Backbone 里有专门的类型—— Backbone.Collection。对于集合的管理,Backbone.Collection 在创建后有 add, remove 事件,子元素的 update 需要自己在 model 上监听 "change" 事件。根据初始化的

2013-02-27 18:23:00 2805

原创 ASP.NET Web API & Backbone (1) —— Web API & Simple Get

这个系列主要介绍如何使用Backbone搭建基于 ASP.NET Web API 的客户端(重点在于Backbone的使用) .NET 4.5 中的 ASP.NET Web API 使得我们可以快速搭建基于REST风格的服务应用,利用强大的客户端框架 Backbone 我们可以采用MVC的设计思路,组织客户端Javascript模块(功能) 从而实现快速灵活的应用开发。关于 ASP.NET Web

2013-02-21 02:07:24 3649 1

原创 Reactive Extensions (Rx) 拖拽实例

Rx 最大的特点就是可以对事件进行组合形成一个新的事件。比如下面的这个拖拽。我们对于拖拽的定义是:当鼠标按下时开始DragDrop,当鼠标移动时移动图形,最后当鼠标放开时停止DragDrop。我定义了一些图形放在ToolBar里,点击ToolBar里的图形将在Canvas里创建新的图形,在Canvas里可以拖拽它们移动。using System;using System.Reactive.Lin

2013-02-03 11:40:01 3683 1

原创 新浪微博开放平台SDK for WinRT

【前言】现在各大网站纷纷推出各自的 Web Api,比如:新浪,腾讯,人人,街旁等。这些Web Api大多遵循 REST 架构风格,通过json格式的数据进行交互。网站上对接口进行说明时也有示例的json数据。我们知道在开发静态语言客户端的时候,因为你没有这些实体的定义,你需要自己一行一行码这些代码。于是 @韦恩卑鄙  和我(@原数据)开发了这套框架利用网站上这些示例 json,自动生成这些定义(

2013-01-11 23:16:32 3105

原创 NuGet 发布 Snippet

就像 Java 的 Maven,.Net 有 NuGet。NuGet 的便利性,这里就不赘述了。而 NuGet 的发布过程也没有想象中的那么复杂,所以希望看到本文的开发者也能贡献更多好用的 Package。1. 注册一个用户NuGet 的官方地址: http://nuget.org/2. 使用 NuGet Packager    你完全可以参考 NuGet 的文档,一步步创建你的 Package。

2012-12-07 01:28:33 2681

原创 【WPF】MVVM模式下的输入校验(IDataErrorInfo + DataAnnotations)

【前言】Windows Presentation Foundation (WPF) 具有一个丰富数据绑定系统。除了作为通过 Model-View-ViewModel (MVVM) 模式从支持逻辑和数据对 UI 定义进行松散耦合的关键推动力之外,数据绑定系统还为业务数据验证方案提供强大而灵活的支持。WPF 中的数据绑定机制包括多个选项,可用于在创建可编辑视图时校验输入数据的有效性。.mytable

2012-11-17 23:45:40 13965 7

原创 (开源)RazorSourceGenerator 代码生成工具

项目介绍 这是一个基于Razor Engine的代码生成器,在强大的Razor语法支持下通过编写模板针对数据库的Schema或者一段SQL的查询结果生成代码。(模板使用Razor C# 语法)地址:http://razorsourcegenerator.codeplex.com/ 运行前提: 安装 .net 4.0 client profile 特性: 1. 支持多种主流数据库(因为使用OleD

2012-10-18 22:47:58 5808 16

原创 dojox.grid.DataGrid 编程篇(3) -- DataGrid的一些Bug

dojox.grid.DataGrid 里存在一些  Bug,本篇将介绍如何解决它们:1. layout定义为%时,滚动条的问题:如下图,当列宽用"%"定义时,无论如何调整比例(就算不满100%) 也会出现横向滚动条。(IE, chrome 都有这个bug)<table dojoType='dojox.grid.DataGrid' id='grid1' jsid='js_grid1' styl

2012-09-18 00:26:55 3542

原创 dojox.grid.DataGrid 编程篇(2) -- 方法与事件

dojox.grid.DataGrid 组件还提供了一些方法,使用者利用这些方法可以进一步丰富表格的表现体验。1. 获取、修改任一单元格的数据:取得第3行,字段"f3"的值var grid = dijit.byId("grid1");var row = grid.getItem(3);// 获取值var value = grid.store.getValue(row, "f3");// 修

2012-09-14 01:42:23 7907 3

原创 dojox.grid.DataGrid 编程篇(1) -- Layout设计

最近使用了dojo组件,其中使用了 dojox.grid.DataGrid 进行一览表示的核心组件,这里总结一些实际使用中遇到的问题和解决方法。官方Guide: http://dojotoolkit.org/reference-guide/1.8/dojox/grid/DataGrid.html【准备】引用 DataGrid 的 CSS,dojo js,导入要使用的组件: dojo

2012-09-10 00:57:55 9699 6

原创 【dojo】dojo.ready(dojo.addOnLoad) “前传”

最近的项目中使用了dojo框架,每个页面中大量使用了 dojo.ready 来完成页面初始化的工作。但因为某种原因,需要在所有的 dojo.ready 之前做一些事。对于 dojo 1.6 以前(包括1.6) 来说,这稍微有点麻烦。看源码:dojo.ready = dojo.addOnLoad = function(/*Object*/obj, /*String|Function?*/functi

2012-08-20 01:14:12 4762

翻译 Reactive Extensions (Rx) 入门(5) —— Rx的事件编程③

原文:http://www.atmarkit.co.jp/fdotnet/introrx/introrx_02/introrx_02_03.html作者:河合 宜文合成用的方法本章将介绍一些Rx代表性的方法。○ SelectMany 方法SelectMany 方法是 Rx 中最常用的方法之一。例如将鼠标移动事件插入鼠标按下事件中,甚至对于序列自身的修改替换。另外,从第一个异步结果中启动第2个异步处

2012-07-18 23:19:29 7178

翻译 Reactive Extensions (Rx) 入门(4) —— Rx的事件编程②

原文:http://www.atmarkit.co.jp/fdotnet/introrx/introrx_01/introrx_02_02.html作者:河合 宜文事件是什么?用Rx来处理事件的优势让我们来看看如何用Rx特有的事件Obserable转换事件处理的。在这之前,让我们考虑一下事件在.NET中的应用场景。最具有代表性的应该是GUI的事件了。比如:按钮点击,鼠标移动等,这些全是通过事件来处

2012-06-23 23:33:32 7052

原创 ADO.NET Entity Framework CodeFirst 如何输出日志(EF4.3)

[示例代码下载]之前写过一篇如何利用 EFProviderWrappers 在EF中增加日志的blog,那篇文章是基于 ModelFirst 来写的,这里在 EF 4.3 CodeFirst 上再次实现。1. 事前准备下载 EFProviderWrappers 程序集(点击此处下载),添加:EFProviderWrapperToolkit.dll,EFTracingProvider.dll 引用。

2012-06-15 01:01:10 6837 11

翻译 Reactive Extensions (Rx) 入门(3) —— Rx的事件编程①

原文:http://www.atmarkit.co.jp/fdotnet/introrx/introrx_01/introrx_01_02.html作者:河合 宜文前面两章介绍了Rx的概要和安装方法,本章开始重点介绍Rx的具体的使用方法。首先会介绍一下使用Rx的基本操作,然后会重点介绍Rx所代表的2大特性:事件处理和异步处理中的事件处理。基本方法首先来看看最简单的Rx (Observable对象)

2012-06-09 00:39:31 9726 6

原创 【WCF】VSTO Host WCF Web Api

最近突发奇想,在PPT运行发布一个WebApi,这样通过手机或者浏览器就能控制此PPT播放。于是尝试了下用 WCF 里的 WebServiceHost 寄宿在VSTO的对象上。因此有了下面这个类:SlideShowServiceHost.csusing System;using System.Collections.Generic;using System.Linq;using System

2012-06-03 16:03:29 6732 9

翻译 Reactive Extensions (Rx) 入门(2) —— 安装 Reactive Extensions

原文:http://www.atmarkit.co.jp/fdotnet/introrx/introrx_01/introrx_01_02.html作者:河合 宜文安装方法关于 Rx 的安装,可以通过 Reactive Extensions (Rx) 的主页 的直接下载安装,当然也可以利用 NuGet 导入 dll (http://nuget.org/packages/Rx-Main) [译注:

2012-05-22 01:49:29 11113 1

翻译 Reactive Extensions (Rx) 入门(1) —— Reactive Extensions 概要

原文:http://www.atmarkit.co.jp/fdotnet/introrx/introrx_01/introrx_01_01.html作者:河合 宜文众所周知,从 C# 3.0 开始 Linq 大大改变了以往的编程风格,尤其是大幅度简化了大量数据加工这样麻烦的操作。对于各种数据(比如:数组,XML,SQL数据库等)提供了一种统一的语法,也是 Linq 的一个特征。Reactive E

2012-04-15 16:14:12 14488 5

原创 【ASP.NET】 Web Api (.NET 4.5)

在刚刚发布的 ASP.NET MVC 4 中,有一个值得注意的新特性——Web Api,微软官方的介绍是:ASP.NET MVC 4 中包含了Web API 它能够构建HTTP服务以支撑更广泛的客户端,包括浏览器,手机和平板电脑的框架。ASP.NET Web API是非常棒的构建服务的框架,遵循REST架构风格,而且它支持的RPC模式。从 .NET 3.5 开始 WCF 已经支持用 WebHttp

2012-03-04 23:29:25 24391 16

原创 【WCF】自动加载WCF Library (IIS Host)

在之前这篇 Blog (【WCF】自动加载WCF Library) 中介绍了如何在一个desktop应用中自动加载 WCF Library 的简单实现。后来我就想到如果能部署到 IIS 上,用 IIS Host 实现不就更方便嘛。正好最近学习 ASP.NET MVC 碰到这个类:VirtualPathProvider 类 (它提供了一组方法,使 Web 应用程序可以从虚拟文件系统中检索资源。) ,

2012-02-21 01:38:24 5600 1

原创 【ASP.NET】 ASP.NET MVC 3 & MEF 2.0

前面一篇介绍了ASP.NET MVC3 和 Unity 结合使用的示例,Unity 通过 Register 方法或者配置注入实例,MEF 则是通过 [Import] [Export] 特性绑定依赖。在 MEF 2.0 中当前 dll 中如果在 *.Parts.* 命名空间下的类型会自动作为依赖源。CompositionProvider.AddPartsAssembly 亦可运行时添加依赖对象,非常

2012-01-29 02:27:52 3762

原创 【ASP.NET】ASP.NET MVC 3 & Unity.MVC3

最近学习了下 ASP.NET MVC,比较之前的 WebForm 没有了 IsPostBack 的判断,事件处理也被 Action 取代。MVC 中 WebForm中大量的事件处理中UI绑定,混杂的 js 注入, style 修改没有了;服务端控件不用了,结局是 View 被释放了,Controller可以被单元测试了,拿着 ViewModel 可以快速替换 View。(说句实话要不是有 Razo

2012-01-17 03:05:17 8742 6

原创 【WCF】自动加载 WCF Library

在论坛里遇到一个问题:如何做一个主程序,主程序里没有任何契约和配置文件能自动Host指定的外部的WCF Library Assembly。其实Visual Studio已经提供了类似的玩意,在你创建一个WCF Library工程之后在项目属性 -> WCF Options -> 会看到一个 "Start WCF Service Host When debugging anther project

2011-12-28 01:39:35 6028 19

原创 利用 RazorEngine 打造简单的泛用代码生成器

自从 ASP.NET MVC 3 推出来之后,其中最大的亮点当数 MVC 3 里的 Razor 页面引擎。用 @{ } 取代了以前的 ,简洁的语法让开发者赞不绝口。和 MVC 开源一样,Codeplex 上也开源了这个引擎:RazorEngine , 熟悉MVC开发的童鞋都知道这其中的奥秘,主要是使用了.NET 4.0 dynamic 动态对象。然后 RazorEngine 会将 template

2011-12-22 00:10:00 9925

原创 【jQuery】利用 jQuery Clone 复制行

最近客串了一把前端,有行复制的功能用 jQuery 来实现了。感觉比以前原生js用 CreateElement 要简单多了,但还是遇到了一些陷阱比如IE7的bug,这里记录下来。先看看 table 的样子:这里3行是一组,按下"Copy"连值复制,按下"Add"只增加行不复制值。calendar 使用的是 jQuery UI 里的 datepicker 下图只是一个简单的demo,没有复杂的样式表

2011-11-24 13:47:17 8675

原创 WCF4.0 —— Routing Service 自定义Filter控制访问权限

接着上一篇的实例,我们通过Routing Service使用了 filterType="EndpointName" 来转发客户端的请求,映射到内部多个服务上。但问题又来了,比如有2个内部服务A,B。有N个客户端,并不是所有的客户端同时都有对A,B的访问权限,有些客户端可以访问A,有些客户端可以访问B,如何控制客户端请求的权限呢?了解WCF认证机制的童鞋们大多数会想到通过服务A,B自身的认证功能去屏

2011-10-30 21:49:45 4922 2

原创 WCF4.0 —— Routing Service

现在WCF 4.0内置了路由服务——System.ServiceModel.Routing.RoutingService,可以在 System.ServiceModel.Routing.dll 中找到。比如下面的场景会使用到路由服务:只暴露一个外部公开的 Endpoint 映射到内部的多个的服务上。路由服务使用的消息筛选器提供常用消息选择功能,例如,终结点的名称、SOAP 操作或消息已发送到的地址

2011-10-17 01:32:19 6469 7

原创 WCF WebSocketsService (HTML5 WebSocket)

在Web应用中,HTTP协议决定了客户端和服务端连接是“短连接”,即客户端Request,服务端Response,连接断开。要想实现客户端和服务端实时通信,只能通过客户端轮询来实现。“服务端推送数据”也并不是字面上意思上的“直接推”,其实还是客户端“自己取”。在HTML5标准中新的Websocket协议可以在客户端和服务器之间无限制的连接,WebSocket 不仅更快,也更廉价,更简单。利用Web

2011-09-25 23:43:24 10662 18

原创 Ruby 1.8.x Rails 2.x 的 "uninitialized constant ActiveSupport::Dependencies::Mutex (NameError)" 错误

坑爹的异常。在 Ruby 安装目录下的 bin 目录下找到 rails 文件:比如:C:\Ruby187\bin修改 rails,在 require 'rubygems' 之后加上 require 'thread'#!C:/Ruby187/bin/ruby.exe## Thi

2011-09-13 15:18:00 3276

原创 WCF实例 —— Windows Service Host 开发,调试,制作安装包

本篇实例介绍如何使用Windows Service来寄宿 WCF服务:1. 添加 WCF Service Library 工程,这一步没什么好说的。    为了简单测试,只保留下面一个服务方法:public class Service1 : IService1{ pub

2011-09-09 15:27:46 11764 3

提示
确定要删除当前文章?
取消 删除