代码改变世界

RestEasy 用户指南----第7章 @HeaderParam

2011-10-13 16:12 by Shawn.Cheng, 351 阅读, 0 推荐, 收藏, 编辑
摘要:@HeaderParam的声明允许你将request http header映射到你所调用的方法中GET/books?num=5 @GET public String getBooks(@HeaderParam("From") String from) { ... }就像PathParam一样,你的参数类型可以是一个String primitive或者是一个有一个String构造方法的类再或者一个静态的valueOf()方法。例如MediaType有个valueOf()的静态方法,你就可以 @PUT public void put(@HeaderParam("Co 阅读全文

RestEasy用户指南---第6章.@QueryParam

2011-10-13 16:10 by Shawn.Cheng, 346 阅读, 0 推荐, 收藏, 编辑
摘要:@QueryParam的声明允许将一个uri的查询字符串参数,或者url编码形式的参数映射到你的方法调用中。GET/books?num=5View Code @GET public String getBooks(@QueryParam("num") int num) { ... } (意思大概是说你通过查询字符串传递的参数可以通过@QueryParam来传递获取)目前,resteasy实在Servlet的基础之上运行的,它并不区分URI查询字符串和Uri编码形式的参数。就像PathParam一样,你的参数类型可以是一个String primitive或者是一个有一个Str 阅读全文

RestEasy+用户指南----第5章.@PathParam

2011-10-13 16:08 by Shawn.Cheng, 323 阅读, 0 推荐, 收藏, 编辑
摘要:@PathParam 的声明允许你在URI路径中去映射你的方法将使用的参数。@Path("/library")public class Library { @GET @Path("/book/{isbn}") public String getBook(@PathParam("isbn") String id) { // search my database and get a string representation and return it }}(很简单,当你发出get请求 /book/152-963参数152-963就在is 阅读全文

RestEasy 用户指南----第4章.使用@Path @GET @POST 等

2011-10-13 15:59 by Shawn.Cheng, 473 阅读, 0 推荐, 收藏, 编辑
摘要:View Code @Path("/library")public class Library { @GET @Path("/books") public String getBooks() {...} @GET @Path("/book/{isbn}") public String getBook(@PathParam("isbn") String id) { // search my database and get a string representation and return it } @PUT @P 阅读全文

RestEasy+用户指南+翻译索引

2011-10-13 15:52 by Shawn.Cheng, 351 阅读, 0 推荐, 收藏, 编辑
摘要:最近的项目开发要用到RestEasy,在网上没有找到中文版帮助文档。看了看原版英文的,不是很复杂,就翻译一下,水平有限,如有错误,敬请指出。原文地址http://docs.jboss.org/resteasy/docs/2.2.1.GA/userguide/html/index.html我先翻译那些项目中用到的地方。下边是RestEasy 用户指南 翻译的索引RestEasy 用户指南----第4章.使用@Path @GET @POST 等RestEasy 用户指南----第5章.@PathParamRestEasy用户指南---第 6章. @QueryParamRestEasy 用户指南-- 阅读全文

C#中的转换操作符

2011-10-12 17:49 by Shawn.Cheng, 268 阅读, 0 推荐, 收藏, 编辑
摘要:今天看到一个话题,说的是C#中的转换操作符,也就是说,我们可以通过编程,实现C#中的括号形式的显示和隐士转换。就像是 我 可以一个 int 然后隐式转换为的decimal,或者显示转换一下 Byte b= 5; int value = b; decimal de = a;可以通过关键字implicit operator 和 explicit operator 进行相应类例构造 来实现。可以查看.NET中有关decimal中的相关实现。等回头用了,再详细写出。 阅读全文

从设计意图看OUT参数和REF参数的区别与联系

2011-10-12 17:37 by Shawn.Cheng, 257 阅读, 1 推荐, 收藏, 编辑
摘要:学习并使用C#已经好久了,最近在看.NET框架程序设计,又对这些基础概念进行了一次回顾与加深。高手毕竟是高手,同样一个问题,虽然答案差不多,但是回答问题所站的角度却不同。下边是我对两者区别与联系的体会。Out参数和ref参数的基本用法这里不再详谈。要说他们的区别与联系,我们就必须说明二者的设计意图分别是什么。前者out,顾名思义,是为了输出,而后者ref是引用,是为了传入参数,二者设计意图不同那么使用的时候,就需要按照原本的意图去使用。由于意图不同,那么使用的时候也就有所差别,前者为了输出,那么就不必要保证在传入参数之前进行初始化,而后者由于目地是为了出入参数后使用,那么就必须保证传入参数之前 阅读全文

IL汇编语言介绍(译)

2011-10-10 16:22 by Shawn.Cheng, 216 阅读, 0 推荐, 收藏, 编辑
摘要:原文地址http://www.cnblogs.com/xiaoxiangfeizi/archive/2011/08/08/2130768.html原文作者潇湘妃子IL汇编语言介绍(译)最近在学习IL,在CodeProject上看到一篇老外的文章,介绍IL的,写的比较好,就翻译了一下,供大家参考。水平有限,请大家包涵,如果你想认真学习,推荐你最好去看原文,原文是Introduction to IL Assembly Language。介绍这篇文章介绍了基本的IL汇编语言知识,你可以用它从底层来分析你的.NET代码(任何.NET平台下的高级语言写的)。从底层,我说的底层是你的高级语言在编译器中完成 阅读全文

http 的Get和 Post请求深入分析

2011-10-10 15:14 by Shawn.Cheng, 418 阅读, 0 推荐, 收藏, 编辑
摘要:http Form表单的Get和 Post请求深入分析个人博客地址http://blog.csdn.net/nndtdx这个话提已经开始了好久,一直没有写。今天提出来,就把这个问题给深入的分析一下。这里,我使用Fiddler跟踪表单的提交过程。探究一下Get方式提交和Post方式提交的差别究竟在哪里。首先建立一个页面,该页面实现表单的基本提交。在测试中使用GET方式提交。该页面编码如下<body><form method="get"action="target.html" name="form"> <in 阅读全文

使用主机ip地址绑定GooglAppEngine站点

2011-10-10 08:30 by Shawn.Cheng, 239 阅读, 0 推荐, 收藏, 编辑
摘要:使用主机ip地址绑定GooglAppEngine站点自主配置GoogleAppEngine站点的绑定信息 使用过GoogleAppEngine的同学大概都知道,在Eclipse环境下,如果运行Google Web Project,那么他将自动绑定到LoalHost:8888 然后,我们可以通过本机浏览器输入该地址访问。可是,如果我们要进行测试,比如以Android为客户端,去访问该站点,如果不是公网ip:端口的形式,在Android客户端上无法访问的。另外,在绑定到localhost:8888的情况下,通过本机ip:8888也无发访问,无论是在本机还是在他人机器。那么我们如何是其绑定到 本.. 阅读全文

Android配置 常规单元测试

2011-10-08 23:38 by Shawn.Cheng, 306 阅读, 0 推荐, 收藏, 编辑
摘要:Android单元测试分为两个部分, 一部分是与Android本身无关的测试,也就是业务逻辑测试,该部分测试不涉及Activity这一层,我们暂且成为常规的单元测试。另外的一种测试就是于Activity相关的单元测试这里,我们先谈一下于Activity无关的常规单元测试。在通常情况下,我们会选择在需要添加测试用例的类上边点击右键,选择new/JUnitTestCase然后,Eclipse会跳出一个让你选择添加测试用例的基本信息。比如类名,包名什么的。添加完毕后,然后在自动产生的方法上点击右键 run as /Junit Test.这时候,会出现一个错误Internal Error (class 阅读全文

方法论之 如何解决一个问题

2011-10-08 22:16 by Shawn.Cheng, 226 阅读, 0 推荐, 收藏, 编辑
摘要:首先,这篇文章是一篇枯燥的方法论,或许你会不喜欢,但是我还是建议你看下去。因为这些方法论不是由哪个家哪个家研究出来的长篇大论,而是一个软件开发者的切心体会。这里的“问题”,你可以理解是一个恼人的bug,或者其他难以解决的东西。好吧,不说那么多,直入主题。确定问题域首先确定问题域。最开始我以为这个词是我凭空想象的,写这段话的时候,顺便问了一下百度。百度上这么解释:问题域”指提问的范围、问题之间的内在的关系和逻辑可能性空间。 软件工程:在软件工程中,问题域是指被开发系统的应用领域,即在客观世界中由该系统处理的业务范围。在这里,我想表达的是这么一个意思:一个bug的出现,必定是在某一个地方,确定问题 阅读全文

Name与x:Name的关系

2011-09-21 11:13 by Shawn.Cheng, 267 阅读, 0 推荐, 收藏, 编辑
摘要:=============本文转自水之真谛http://blog.csdn.net/fantasiax/article/details/3499767作者很多文章都写地很好。在此表示感谢。============杂七杂八——Name与x:Name的关系小序:如果想用Google搜包含冒号的内容怎么办?比如我想搜x:Name这个字符串……原来,应该是这样——x::Name这世道,连搜索也要加转义,全民程序员,要不要人活了?正文:从第一天学习XAML语言开始,我就一直没分清为什么对于一个XAML标签既可以设置它的Name又可以设置它的x:Name。问过一些同事,大家好像对这种比较孔乙己的问题不太感 阅读全文

由StreamWriter.WriteLine 引发对C#多线程的深入思考(一)

2011-09-19 14:09 by Shawn.Cheng, 3051 阅读, 2 推荐, 收藏, 编辑
摘要:首先,StreamWriter线程安全么?答:StreamWriter 的构造以及StreamWriter.WriteLine(string)都是非线程安全的我们封装两个写日志的方法。底层都是由StreamWriter.writeline来实现.一个加锁,一个不加锁。将加锁的那个命名为safewritelog,另一个命名为unsafeWritelog.然后利用两个循环。不停的分别创建个线程,去写日志。测试看哪个会出现写异常。代码如下:namespace ThreadWriteLog{ class Program { private static object ob =... 阅读全文

RestEasy Web服务客户端调用

2011-09-18 01:03 by Shawn.Cheng, 583 阅读, 0 推荐, 收藏, 编辑
摘要:RestEasy Web服务客户端调用 个人博客 http://blog.csdn.net/nndtdx背景在前几篇文章中,我介绍了用RestEasy 框架搭建的Rest风格的java web服务。这几天事情比较多,一直没有写客户端的调用方法。现在就谈一下客户端的调用方法。 首先,如果你还不知道如何利用RestEasy 构建Rest风格的Web服务。请查看与web服务相关的概念以及如何利用RestEasy搭建webservice的文章。编码测试本来想用Android做个客户端,然后将测试代码写在android应用程序中。结果发现我将搭载有webservice的gae运行起来之后,利用http: 阅读全文

GAE + RESTEasy搭建Web Service---服务端编码与发布

2011-09-11 23:57 by Shawn.Cheng, 528 阅读, 0 推荐, 收藏, 编辑
摘要:利用GAE构建第一个REST风格的java webservice利用GAE + RESTEasy搭建REST架构风格的Java Web Service-------前言http://blog.csdn.net/nndtdx/article/details/6768224配置好你的Eclipse GAE开发环境测试一下你的GAE环境的配置是否正确。写个HeloWord发布一下试试。记得翻Q。不翻Q你是发布不了的。让我们开始利用GAE建一个gaeRest项目.记得把use google web toolkit勾去 项目如下 注意,droidinvokeRest是客户端调用的例子,现在先不管。下载R 阅读全文

GAE + RESTEasy搭建Web Service------前言

2011-09-11 23:32 by Shawn.Cheng, 371 阅读, 0 推荐, 收藏, 编辑
摘要:前言: 什么是GAEGAE全称是GoogleAppEngine。我个人的理解是google提供的web服务。就像是windows里边的IIS,可供你发布网站。现在有很多人基于他做了应用。比如说论坛,博客,web服务等等。同时,它还提供了其他的服务,比如数据存储,等等附带产品。基本上是免费得,无论是从流量上,还是存储空间上,都能够满足一般用户。具体数据,你可以参考google 官方介绍。这里就不多说了。先支持 java 和physon两种开发语言。Google在2011年全球最具价值品牌排行榜中排行第一,其次依次为苹果和微软,服务是相当有保障的。这里是官方中文文档http://code.goog 阅读全文

GoolgeAppEngine Web开发之单元测试环境的搭建

2011-09-11 13:50 by Shawn.Cheng, 161 阅读, 0 推荐, 收藏, 编辑
摘要:原文 http://hddev.blog.51cto.com/3365350/662374一个好的编写程序的习惯,每写一小段代码(比如一个方法或者更小)就测试一下的他的正确性。倘若等到所有代码都写完了再去测试的话,那么等待你的将是无尽的烦恼与纠结。在GAE项目之中,按照以往的习惯引入Junitjar文件,新建test源码目录,新建测试用例,执行。可是预想之中的结果却没有出现,出现的反而是一个令人郁闷的异常。java.lang.NullPointerException: No API environment is registered for this thread.虽然本人也不喜欢看异常,但还 阅读全文

世上最伟大的十个公式

2011-09-10 08:23 by Shawn.Cheng, 286 阅读, 0 推荐, 收藏, 编辑
摘要:原文博客园http://news.cnblogs.com/n/114549/英国科学期刊《物理世界》曾让读者投票评选了“最伟大的公式”,最终榜上有名的十个公式既有无人不知的1+1=2,又有著名的E=mc2;既有简单的-圆周公式,又有复杂的欧拉公式……从什么时候起我们开始厌恶数学?这些东西原本如此美丽,如此精妙。这个地球上有多少伟大的智慧曾耗尽一生,才最终写下一个等号。每当你解不开方程的时候,不妨换一个角度想,暂且放下对理科的厌恶和对考试的痛恨。因为你正在见证的,是科学的美丽与人类的尊严。No.10圆的周长公式(The Length of the Circumference of a Circl 阅读全文

令我崩溃欲死的tomact版本问题

2011-09-10 01:38 by Shawn.Cheng, 601 阅读, 0 推荐, 收藏, 编辑
摘要:最近做一个项目,里边要用到javawebservice,最终决定采用Rest 架构风格的web 服务。由于本人对java 这一套工具不是很熟悉。以前只写过控制台的helloword,然后,就直接到 rest 框架选择 + web .中间的曲折让我d疼不已。既然今天的题目是tomact的版本,我就先把中间的曲折放一放,等些rest 的时候再说做rest的一个入门示例的时候,我在eclipse上部署了tomact7.0 用的eclipse是helios的。然后,建立 动态web项目,在网上找到 rest的入门代码之后,开始运行,就爆出Error configuring application li 阅读全文