??xml version="1.0" encoding="utf-8" standalone="yes"?>九色在线播放,蜜臀av性久久久久蜜臀aⅴ流畅,av在线播放免费http://www.aygfsteel.com/lsbwahaha/zh-cnSat, 17 May 2025 01:07:04 GMTSat, 17 May 2025 01:07:04 GMT60Eclipse启动无响?停留在Loading workbench状?/title><link>http://www.aygfsteel.com/lsbwahaha/archive/2012/11/11/391162.html</link><dc:creator>胡鹏</dc:creator><author>胡鹏</author><pubDate>Sun, 11 Nov 2012 06:15:00 GMT</pubDate><guid>http://www.aygfsteel.com/lsbwahaha/archive/2012/11/11/391162.html</guid><wfw:comment>http://www.aygfsteel.com/lsbwahaha/comments/391162.html</wfw:comment><comments>http://www.aygfsteel.com/lsbwahaha/archive/2012/11/11/391162.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.aygfsteel.com/lsbwahaha/comments/commentRss/391162.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/lsbwahaha/services/trackbacks/391162.html</trackback:ping><description><![CDATA[前两天休眠后机器非正常关机,重新启动后运行eclipse。悲催的发现eclipse 无法启动了。每ơ双d动后Q确定完workspace后,昄启动画面Q没q一会就q入灰色无响应状态。启动画面始l停留在Loading workbench状态。反复重启,状态依旧。尝试解冟?br /><br />搜烦了一下,应该是非正常xDeclipse工作区的文g状态错误导致。在工作区目录中Q有一?metadata目录Q里面是工作区及各插件的信息Q删除此目录可以解决问题? <br /> <br /> Z险v见,?metadata改名Ud?tmp目录Q再重启eclipseQ果然可以正常启动eclipse了,但原来工作区的配|和目信息也都消失Q直接显C的是欢q界面? <br /> <br /> 如何恢复原来的project配置呢?试Ҏ了当前的.metadata和之前备份的那个目录Q发现缺了很多配置文g。试着一点点恢复一些目录,但效 果不理想。因Z知道哪些文g(目录)可以恢复Q哪些恢复会带来问题。将备䆾的整个目录恢复试试?Eclipse又回C无法启动的状态了? <br /> <br /> 怎么办?q时惛_启动停止时显C的状?"Loading workbench"Q看来和q个workbench插g有关。查看原来的.metadata/.plugins目录Q在众多文g夹中 <br /> com.collabnet.subversion.merge          org.eclipse.search <br /> org.eclipse.compare                           org.eclipse.team.core <br /> org.eclipse.core.resources                  org.eclipse.team.cvs.core <br /> org.eclipse.core.runtime               org.eclipse.team.ui <br /> org.eclipse.debug.core                 org.eclipse.ui.ide <br /> org.eclipse.debug.ui                   org.eclipse.ui.intro <br /> org.eclipse.dltk.core                    org.eclipse.ui.views.log <br /> org.eclipse.dltk.core.index.sql.h2     org.eclipse.ui.workbench <br /> org.eclipse.dltk.ui                           org.eclipse.ui.workbench.texteditor <br /> org.eclipse.epp.usagedata.recording    org.eclipse.wb.discovery.core <br /> org.eclipse.jdt.core                             org.eclipse.wst.internet.cache <br /> org.eclipse.jdt.ui                                 org.eclipse.wst.jsdt.core <br /> org.eclipse.ltk.core.refactoring          org.eclipse.wst.jsdt.ui <br /> org.eclipse.ltk.ui.refactoring            org.eclipse.wst.jsdt.web.core <br /> org.eclipse.m2e.core                    org.eclipse.wst.sse.ui <br /> org.eclipse.m2e.logback.configuration  org.eclipse.wst.validation <br /> org.eclipse.mylyn.bugzilla.core        org.eclipse.wst.xml.core <br /> org.eclipse.mylyn.tasks.ui             org.tigris.subversion.subclipse.core <br /> org.eclipse.php.core                   org.tigris.subversion.subclipse.graph <br /> org.eclipse.php.ui                     org.tigris.subversion.subclipse.ui <br /> <br /> 发现了两个: <span style="color:#003399;font-weight:bold;">org.eclipse.ui.workbench</span> ? <span style="font-weight:bold;color:#003399;">org.eclipse.ui.workbench.texteditor</span>? <br /> <br /> 不管三七二十一Q删了这两个目录Q重新启动eclipse。正常启动且原项目信息正加载? <img src ="http://www.aygfsteel.com/lsbwahaha/aggbug/391162.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/lsbwahaha/" target="_blank">胡鹏</a> 2012-11-11 14:15 <a href="http://www.aygfsteel.com/lsbwahaha/archive/2012/11/11/391162.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Z么我们在l节上做不好?(转蝲)http://www.aygfsteel.com/lsbwahaha/archive/2012/10/28/390361.html胡鹏胡鹏Sun, 28 Oct 2012 08:31:00 GMThttp://www.aygfsteel.com/lsbwahaha/archive/2012/10/28/390361.htmlhttp://www.aygfsteel.com/lsbwahaha/comments/390361.htmlhttp://www.aygfsteel.com/lsbwahaha/archive/2012/10/28/390361.html#Feedback0http://www.aygfsteel.com/lsbwahaha/comments/commentRss/390361.htmlhttp://www.aygfsteel.com/lsbwahaha/services/trackbacks/390361.html
转自Q作? Fenng | 可以转蝲, 但必M链接Ş式标明文章原始出处和作者信息及版权声明
|址:

最q团队遇C个案例。看似很的事情Q但仔细研究hQ彻底分析,每一个环节都没做好,l节部分p糕得一塌糊涂,最后导致一件事情的l果Q完全失败?/p>

l常有h在聊起公司的时候问我,你现在最担心的事情有哪些? 我当然会重点提到团队。不q在谈及团队的时候,我又最担心在「细节」问题上做不好?/p>

l节是竞争力,其是对团队来_团队更应该注重l节问题。大一点的公司可以q究责Q人,靠流E、靠制度Q靠各评审{等一pd的「成本」来提升l节能力。小一点的公司或者团队怎么? 恐怕只有依赖每个h的能力和责Q心了?/p>

l节也是ȝ人的能力的地方,搞清楚每一个细节,每一个细节涉及到的背景知识和技能掌握好Q能力自然也׃得到提升。而,着手做更大的事情也? 会手忙脚乱。相反,做不好细节和事的hQ如果d着要做「重要」的事情Q做更有「挑战」的事情Q这L事情真的C面前Q真的能接住?

Z么我们在l节上做不好?

对细节问题不够重?/strong> 一件事情到了自p里,头脑中先入ؓ主认为只是一件小事,是一件简单的事情。这P当然׃会给予够的重视。小事不一定不重要Q小事不一定意味着做v来就单?/p>

对事情复杂度~Z认知 不就是给客户写一电子邮件么? 不就是用 HTML 写一个页面么? 不就是做一则横q广告么? 那么Q这些事情真的简单么? Z么别Zؓ客户写的邮g打开率更? Z么别人写的页面更Ҏ被搜索引擎收? Z么别人做的广告{化率更好? 背后涉及到哪些知? 不想研究一下么? 不能研究一下么?

对细节缺乏耐心 草草了事Q应付了事,遇到问题马马虎虎Q轻易得放过了很多可以让自己得到成长的机会。「这问题我没惌」「这事情我没遇到q」「设计稿都改q两ơ了?.. q类借口在Q何一个团队都很常见?/p>

~少责Q?/strong> 常常觉得自己q里做不好,q有别h会把兛_。担心什? 可如果所有h都这么想? 「文案是产品l理的事情,x甚么?」如果你能对文案也有改进意见Q谁说以后你׃能做产品l理做的事情?

主观上不认可自己的工?/strong> q我这么一炚wQ要我做q么多工? 问题是我们如果不多做一点工作,不提升一下自己,又怎么能多一炚w?

Z么细节上做不? 不同Z同的角度q会有不同的看法。不q有一Ҏ能肯定,l节不会军_成|Q但做不好细节,一定会p|?/p>

做好l节Q百事可作?/p>



胡鹏 2012-10-28 16:31 发表评论
]]>
mac os x如何在eclipse中阅读jdk源代?/title><link>http://www.aygfsteel.com/lsbwahaha/archive/2012/10/16/389692.html</link><dc:creator>胡鹏</dc:creator><author>胡鹏</author><pubDate>Tue, 16 Oct 2012 13:48:00 GMT</pubDate><guid>http://www.aygfsteel.com/lsbwahaha/archive/2012/10/16/389692.html</guid><wfw:comment>http://www.aygfsteel.com/lsbwahaha/comments/389692.html</wfw:comment><comments>http://www.aygfsteel.com/lsbwahaha/archive/2012/10/16/389692.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/lsbwahaha/comments/commentRss/389692.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/lsbwahaha/services/trackbacks/389692.html</trackback:ping><description><![CDATA[<span style="font-size: 12px; "><span style="font-family: 'Courier New'; ">mac中自带的jdkq不包含源代码,所以在eclipse中无法查? 需要到apple上去下蝲Q?br />https://developer.apple.com/downloads/index.action<br />Documentation and developer runtime of "Java for OS X 2012-005". Contains JavaDoc, tools documentation, and native framework headers.<br />目前的版本是QJava for OS X 2012-005 Developer Package<br />下蝲下来后,直接安装Q默认设|就可以了,然后可以ZlinkQ方侉K择?br /></span></span><ol><li style="color: #333333; line-height: 25px; font-family: Arial, Helvetica, simsun, u5b8bu4f53; font-size: 14px; "><span style="font-size: 12px; "><span style="font-family: 'Courier New'; ">sudo -s</span></span></li><li style="color: #333333; line-height: 25px; font-family: Arial, Helvetica, simsun, u5b8bu4f53; font-size: 14px; "><span style="font-size: 12px; "><span style="font-family: 'Courier New'; ">cd /System/Library/Frameworks/JavaVM.framework/Home</span></span></li><li style="color: #333333; line-height: 25px; font-family: Arial, Helvetica, simsun, u5b8bu4f53; font-size: 14px; "><span style="font-size: 12px; "><span style="font-family: 'Courier New'; ">ln -s /Library/Java/JavaVirtualMachines/1.6.0_35-b10-428.jdk/Contents/Home/docs.jar</span></span></li><li style="color: #333333; line-height: 25px; font-family: Arial, Helvetica, simsun, u5b8bu4f53; font-size: 14px; "><span style="font-size: 12px; "><span style="font-family: 'Courier New'; ">ln -s  /Library/Java/JavaVirtualMachines/1.6.0_35-b10-428.jdk/Contents/Home/src.jar</span></span></li><li style="color: #333333; line-height: 25px; font-family: Arial, Helvetica, simsun, u5b8bu4f53; font-size: 14px; "><span style="font-size: 12px; "><span style="font-family: 'Courier New'; ">最后跟windowscMQ?span style="font-size: 12px; "><span style="font-family: 'Courier New'; "><span id="wmqeeuq" class="Apple-style-span" style="color: #333333; line-height: 25px; background-color: #ffffff; ">在eclipse中用command + click点击查看一个类的源码。然后?#8220;add source"Q选中上面?src.jar 文g卛_</span></span></span></span></span></li></ol><img src ="http://www.aygfsteel.com/lsbwahaha/aggbug/389692.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/lsbwahaha/" target="_blank">胡鹏</a> 2012-10-16 21:48 <a href="http://www.aygfsteel.com/lsbwahaha/archive/2012/10/16/389692.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在eclipse中查看android源码http://www.aygfsteel.com/lsbwahaha/archive/2012/09/16/387802.html胡鹏胡鹏Sun, 16 Sep 2012 02:15:00 GMThttp://www.aygfsteel.com/lsbwahaha/archive/2012/09/16/387802.htmlhttp://www.aygfsteel.com/lsbwahaha/comments/387802.htmlhttp://www.aygfsteel.com/lsbwahaha/archive/2012/09/16/387802.html#Feedback0http://www.aygfsteel.com/lsbwahaha/comments/commentRss/387802.htmlhttp://www.aygfsteel.com/lsbwahaha/services/trackbacks/387802.html    我^常学习android用的2.2版本,从网上下载了2.2的源?从官方git库下载太ȝ,是从|友׃n的源码位|下载的).按照|上的说?我把 解压后的那一堆文档放在了android-sdk-root\platforms\android-8\sources目录?不过q没有重? eclipse.而是通过q种Ҏ来做?----在eclipse?鼠标攑֜一个android提供的类?按下ctrl?会打开一个新面,提示 找不到对应的cȝclass或者源文g,但这个新面上有个导入源码的按钮,点击之后选择下蝲好的source位置,定后就可以?
    Z说下我下载android源码的位|?
        http://tech.cncms.com/UploadFiles/20101025/androidsdk2.2_sources.zip

下蝲源码到maven仓库: http://search.maven.org/#search|gav|1|g%3A%22com.google.android%22%20AND%20a%3A%22android%22



胡鹏 2012-09-16 10:15 发表评论
]]>
微博q营学习http://www.aygfsteel.com/lsbwahaha/archive/2012/03/28/372920.html胡鹏胡鹏Wed, 28 Mar 2012 10:28:00 GMThttp://www.aygfsteel.com/lsbwahaha/archive/2012/03/28/372920.htmlhttp://www.aygfsteel.com/lsbwahaha/comments/372920.htmlhttp://www.aygfsteel.com/lsbwahaha/archive/2012/03/28/372920.html#Feedback0http://www.aygfsteel.com/lsbwahaha/comments/commentRss/372920.htmlhttp://www.aygfsteel.com/lsbwahaha/services/trackbacks/372920.html

1. 使用工具Q微博第三方插g已经提供了很多功能,适合自己的都用v来,q个我觉得最节省我的旉Q其他网上提供的软g都可以用,重要是适合自己Q安全第一?/span>

2. 写工P有很多个性化需求的时候,如果变相的不能实玎ͼZؓ处理太慢太花旉Q我们现在是创业团队,很多事情都需要自己做Q数据增长慢Q在有限的资源下Q写工具是非常好的方式,作ؓ技术h员就直接动手写,当然也需要看看性h比?/span>


3.微博定位Q?/span>
扑֥本微博的主题Q内容一般遵循原则:定制+非定制。定制是指针对你的目标群体来选择内容Q要让这部分人感兴趣Q非定制Q是指那U适合M_丝的内宏V?

 

例如Q我的目标群体是x,我的定制内容有容、护肤、服饰搭配、星座、爱情等x关注的话题Q非定制的有W话、经典语录、旅游等大众cd。根据内Ҏ 建立话题Q如#容护肤# #开心一W?#XX语录#{等Q我׃ؓ自己建立?0个左双题,每天的内Ҏ照话题来制作?/div>

 

4.主要工作程Q(q个图是转的Q?/p>


5.常用的微博话题(q个囄也是转的Q?/p>



6. x目Q微博和d@Q评论,U信Q群Q邀P勋章Q策划品活动,参与微活?/div>

 

 7.微博q营最重要的是Q一D|间需要ȝ挑选合适的Ҏ执行Q没有效果的去除?/strong>

?微博发布旉/数量

我(转,不是我)曑֜_丝过一万之后就开始研I的我的微博改什么时候发布,每天发布多少。我现在_丝中做了一个投:你们一般什么时候织微博。最后有200多h参加Q?我大概划分了5个时D,9-12点,12-17?17-19?19-22?22-24?0-3点,做多选择3个答案,l果出来之后有个大概了。接下来我用一周的旉??#8212;24点之间每1时发布一条信息。d16条信息,我就分析每条?息的转发、回复数量,一周之后我可以摸清粉丝的上网旉规律。然后我选择哪几个时间段重点l护Qƈ在那几个旉D进一步研I发布数量规律,我又分ؓ?时Q每0.5时两个因素来研I发布数量?/span>



      

胡鹏 2012-03-28 18:28 发表评论
]]>JMock的基本用方?/title><link>http://www.aygfsteel.com/lsbwahaha/archive/2012/02/23/370620.html</link><dc:creator>胡鹏</dc:creator><author>胡鹏</author><pubDate>Thu, 23 Feb 2012 13:52:00 GMT</pubDate><guid>http://www.aygfsteel.com/lsbwahaha/archive/2012/02/23/370620.html</guid><wfw:comment>http://www.aygfsteel.com/lsbwahaha/comments/370620.html</wfw:comment><comments>http://www.aygfsteel.com/lsbwahaha/archive/2012/02/23/370620.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/lsbwahaha/comments/commentRss/370620.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/lsbwahaha/services/trackbacks/370620.html</trackback:ping><description><![CDATA[<div><p style="margin-top: 0px; margin-right: 8px; margin-bottom: 0px; margin-left: 8px; padding-top: 15px; line-height: 21px; font-size: 14px; color: #333333; font-family: 宋体; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: #f2f8ff; ">JMock是帮助创建mock对象的工P它基于Java开发,在Java试与开发环境中有不可比拟的优势Q更重要的是Q它大大化了虚拟对象的用。本文中Q通过一个简单的试用例来说明JMock如何帮助我们实现q种孤立试?br style="font-size: 12px; " />    我们在测试某cLQ由于它要与其他cd生联p,因此往往在测试此cȝ代码中也与之联pȝcM一h试了。这U测试,被测试的cȝ接依赖于其他c,一旦其他类发生改变Q被试cM随之被迫改变。更重要的是Q这些其他类可能未l过试Q因此必d试q些c,才能试被测试类。这U情况下Q测试驱动开发成为空谈。而如果其他类中也引用了被试c,我们到底先测试哪一个类Q因此,在测试中Q如果我们能被试cd立v来,使其完全不依赖于其他cȝ具体实现Q这P我们p做到试先行Q先试哪个c,先实现哪个c,而不与之联pȝcL否已l实现?/p><p style="margin-top: 0px; margin-right: 8px; margin-bottom: 0px; margin-left: 8px; padding-top: 15px; line-height: 21px; font-size: 14px; color: #333333; font-family: 宋体; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: #f2f8ff; ">    虚拟对象(mock object)是为此需要而诞生的。它通过JDK中的反射机制Q在q行时动态地创徏虚拟对象。在试代码中,我们可以验证q些虚拟对象是否被正地调用了,也可以在明确的情况下Q让其返回特定的假想倹{而一旦有了这些虚拟对象提供的服务Q被试cd可以虚拟对象作为其他与之联pȝ真实对象的替w,从而轻村֜搭徏起一个很完美的测试环境?/p><p style="margin-top: 0px; margin-right: 8px; margin-bottom: 0px; margin-left: 8px; padding-top: 15px; line-height: 21px; font-size: 14px; color: #333333; font-family: 宋体; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: #f2f8ff; ">    JMock是帮助创建mock对象的工P它基于Java开发,在Java试与开发环境中有不可比拟的优势Q更重要的是Q它大大化了虚拟对象的用?/p><p style="margin-top: 0px; margin-right: 8px; margin-bottom: 0px; margin-left: 8px; padding-top: 15px; line-height: 21px; font-size: 14px; color: #333333; font-family: 宋体; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: #f2f8ff; ">    本文中,通过一个简单的试用例来说明JMock如何帮助我们实现q种孤立试。有三个主要的类QUserQUserDAOQ及UserService。本文中Q我们只需试UserServiceQ准备虚拟UserDAO。对于UserQ由于本w仅是一个过于简单的POJOQ可以不用测试。但如果你是一个完主义者,也可以用JMock的虚拟它。在q领域,JMock几乎无所不能?br /><br />q里我用到的是:(我用的是maven依赖)<br /></p><div>            <dependency></div><div><span style="white-space:pre"> </span>    <groupId>org.jmock</groupId></div><div><span style="white-space:pre"> </span>    <artifactId>jmock</artifactId></div><div><span style="white-space:pre"> </span>    <version>2.5.1</version></div><div><span style="white-space:pre"> </span></dependency></div><div><span style="white-space:pre"> </span>  </div><div><span style="white-space:pre"> </span><dependency></div><div><span style="white-space:pre"> </span>    <groupId>org.jmock</groupId></div><div><span style="white-space:pre"> </span>    <artifactId>jmock-junit3</artifactId></div><div><span style="white-space:pre"> </span>    <version>2.5.1</version></div><div><span style="white-space:pre"> </span></dependency><br /><br />在官方的|站上也有的下蝲?  地址Q? http://jmock.org/dist/jmock-2.5.1-jars.zip</div><p> </p></div><br /><div style="background-color: #eeeeee; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: #cccccc; border-right-color: #cccccc; border-bottom-color: #cccccc; border-left-color: #cccccc; border-image: initial; padding-top: 4px; padding-right: 5px; padding-bottom: 4px; padding-left: 4px; width: 98%; "><div>public class User {</div><div><span style="white-space:pre"> </span></div><div><span style="white-space:pre"> </span>private String name;</div><div></div><div><span style="white-space:pre"> </span>public User() {</div><div><span style="white-space:pre"> </span>}</div><div></div><div><span style="white-space:pre"> </span>public User(String name) {</div><div><span style="white-space:pre"> </span>this.name = name;</div><div><span style="white-space:pre"> </span>}</div><div></div><div><span style="white-space:pre"> </span>public String getName() {</div><div><span style="white-space:pre"> </span>return name;</div><div><span style="white-space:pre"> </span>}</div><div></div><div><span style="white-space:pre"> </span>public void setName(String name) {</div><div><span style="white-space:pre"> </span>this.name = name;</div><div><span style="white-space:pre"> </span>}</div><div>}</div><div style="font-size: 13px; "></div></div><br /><div><span style="color: #333333; font-family: 宋体; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 21px; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: #f2f8ff; display: inline !important; float: none; "> UserDAO负责与数据库打交道,通过数据库保存、获取User的信息。尽我们可以不用知道JMock如何通过JDK 的反机制来实现孤立试Q但臛_应知道,JDK的反机制要求这些在q行时创建的动态类必须定义接口。在使用JMock的环境中Q由于我们要虚拟 UserDAOQ意味着UserDAO必须定义接口</span></div><br /><div style="background-color: #eeeeee; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: #cccccc; border-right-color: #cccccc; border-bottom-color: #cccccc; border-left-color: #cccccc; border-image: initial; padding-right: 5px; padding-bottom: 4px; padding-left: 4px; padding-top: 4px; width: 98%; word-break: break-all; "><div>public interface UserDAO {</div><div></div><div><span style="white-space:pre"> </span>public User getUser(Long id);</div><div>}</div><div style="font-size: 13px; "></div><span style="font-size: 13px; color: #000000; "></span></div><br /><div style="background-color: #eeeeee; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: #cccccc; border-right-color: #cccccc; border-bottom-color: #cccccc; border-left-color: #cccccc; border-image: initial; padding-top: 4px; padding-right: 5px; padding-bottom: 4px; padding-left: 4px; width: 98%; "><div>public interface UserService {</div><div><span style="white-space:pre"> </span></div><div><span style="white-space:pre"> </span>public void setUserDAO(UserDAO userDAO);</div><div></div><div><span style="white-space:pre"> </span>public User getUser(Long id);</div><div>}</div><br /><span style="font-size: 13px; color: #000000; "></span></div><br /><br /><div style="background-color: #eeeeee; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: #cccccc; border-right-color: #cccccc; border-bottom-color: #cccccc; border-left-color: #cccccc; border-image: initial; padding-right: 5px; padding-bottom: 4px; padding-left: 4px; padding-top: 4px; width: 98%; word-break: break-all; "><div>public class UserServiceImpl implements UserService {</div><div><span style="white-space:pre"> </span></div><div><span style="white-space:pre"> </span>private UserDAO userDAO;</div><div></div><div><span style="white-space:pre"> </span>public UserServiceImpl() {</div><div><span style="white-space:pre"> </span>}</div><div></div><div><span style="white-space:pre"> </span>public void setUserDAO(UserDAO userDAO) {</div><div><span style="white-space:pre"> </span>this.userDAO = userDAO;</div><div><span style="white-space:pre"> </span>}</div><div></div><div><span style="white-space:pre"> </span>public User getUser(Long id) {</div><div><span style="white-space:pre"> </span>return userDAO.getUser(id);</div><div><span style="white-space:pre"> </span>}</div><div>}</div></div><br /><br /><div style="background-color: #eeeeee; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: #cccccc; border-right-color: #cccccc; border-bottom-color: #cccccc; border-left-color: #cccccc; border-image: initial; padding-right: 5px; padding-bottom: 4px; padding-left: 4px; padding-top: 4px; width: 98%; word-break: break-all; "><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><font size="2"> </font><div style="display: inline-block; "><div style="color: #000000; font-size: 13px; ">import org.jmock.Expectations;</div><div style="color: #000000; font-size: 13px; ">import org.jmock.integration.junit3.MockObjectTestCase;</div><div><br /><div>public class UserServiceTest extends MockObjectTestCase {</div><div><span style="white-space:pre"> </span></div><div><span style="white-space:pre"> </span>private UserService userService = new UserServiceImpl();</div><div><span style="white-space:pre"> </span>private UserDAO userDAO = null;</div><div></div><div><span style="white-space:pre"> </span>public UserServiceTest(String testName) {</div><div><span style="white-space:pre"> </span>super(testName);</div><div><span style="white-space:pre"> </span>}</div><div><span style="white-space:pre"> </span></div><div><span style="white-space:pre"> </span>protected void setUp() throws Exception {</div><div><span style="white-space:pre"> </span>userDAO = mock(UserDAO.class);</div><div><span style="white-space:pre"> </span>userService.setUserDAO(userDAO);</div><div><span style="white-space:pre"> </span>}</div><div><span style="white-space:pre"> </span></div><div><span style="white-space:pre"> </span>public void testGetUser() {</div><div><span style="white-space:pre"> </span>String name = "lsb";</div><div><span style="white-space:pre"> </span>final User fakeUser = new User(name);</div><div><span style="white-space:pre"> </span></div><div><span style="white-space:pre"> </span>checking(new Expectations(){{</div><div>            oneOf(userDAO).getUser(1L);</div><div>            will(returnValue(fakeUser));</div><div>        }});</div><div><span style="white-space:pre"> </span></div><div><span style="white-space:pre"> </span>User user = userService.getUser(1L);</div><div><span style="white-space:pre"> </span>assertNotNull(user);</div><div><span style="white-space:pre"> </span>assertEquals(name, user.getName());</div><div><span style="white-space:pre"> </span>}</div><div><span style="white-space:pre"> </span></div><div><span style="white-space:pre"> </span></div><div><span style="white-space:pre"> </span>protected void tearDown() throws Exception {</div><div><span style="white-space:pre"> </span>}</div><div><span style="white-space:pre"> </span></div><div>}</div></div></div></div><br /><img src ="http://www.aygfsteel.com/lsbwahaha/aggbug/370620.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/lsbwahaha/" target="_blank">胡鹏</a> 2012-02-23 21:52 <a href="http://www.aygfsteel.com/lsbwahaha/archive/2012/02/23/370620.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>android推送学习——google的C2DMhttp://www.aygfsteel.com/lsbwahaha/archive/2011/12/29/367515.html胡鹏胡鹏Thu, 29 Dec 2011 09:57:00 GMThttp://www.aygfsteel.com/lsbwahaha/archive/2011/12/29/367515.htmlhttp://www.aygfsteel.com/lsbwahaha/comments/367515.htmlhttp://www.aygfsteel.com/lsbwahaha/archive/2011/12/29/367515.html#Feedback0http://www.aygfsteel.com/lsbwahaha/comments/commentRss/367515.htmlhttp://www.aygfsteel.com/lsbwahaha/services/trackbacks/367515.html在开发Android和iPhone应用E序Ӟ我们往往需要从服务器不定的向手 机客Lx推送各U通知消息QiPhone上已l有了比较简单的和完的推送通知解决ҎQ可是Androidq_上实现v来却相对比较ȝQ最q利?几天的时间对Android的推送通知服务q行初步的研I?/span>
在Android手机q_上,Google提供了C2DMQCloudto Device MessagingQ服务?br />
Android Cloud to Device Messaging (C2DM)是一个用来帮助开发者从服务器向Android应用E序发送数据的服务。该服务提供了一个简单的、轻量的机Ӟ允许服务器可以通知Ud应用E序直接与服务器q行通信Q以便于从服务器获取应用E序更新和用h据。C2DM服务负责处理诸如消息排队{事务ƈ向运行于目标讑֤上的应用E序分发q些消息?br />
使用C2DM框架的要?/em>
1. 需要Android2.2及以上的pȝ版本
2. 使用C2DM功能的Android讑֤上需要设|好Google的̎戗?br />3.  C2DM需要依赖于Google官方提供的C2DM服务器,׃国内的网l环境,q个服务l常不可用,如果惌很好的用,我们的App Server必须也在国外Q这个恐怕不是每个开发者都能够实现?/div>

要用C2DM来进行Push操作Q基本上要用以?个步?br />

Q?Q注册:Android讑֤把用C2DM功能的用戯̎P比如android.c2dm.demo@gmail.comQ和App名称发送给C2DM服务器?br />
Q?QC2DM服务器会q回一个registration_id值给Android讑֤Q设备需要保存这个registration_id倹{?br />
Q?QAndroid讑֤把获得的registration_id和C2DM功能的用戯̎Pandroid.c2dm.demo@gmail.comQ发送给自己的服务器Q不q一般用戯̎户信息因为和服务器确定好的,所以不必发送?br />
q样Android讑֤完成了C2DM功能的注册过E,接下来就可以接收C2DM服务器Pushq来的消息了?br />
Q?Q服务器获得数据。这里图中的例子Chrome To PhoneQ服务器接收到Chrome览器发送的数据。数据也可以是服务器本地产生的。这里的服务器是Google AppEngineQ很好的一Ҏ务,可惜在国内被屏了Q,要换成自q服务器。服务器q要获取注册使用C2DM功能的用戯̎Pandroid.c2dm.demo@gmail.comQ的ClientLogin权限Auth?br />
Q?Q服务器把要发送的数据和registration_id一Pq且头部带上获取的AuthQ用POST的方式发送给C2DM服务器?br />
Q?QC2DM服务器会以Push的方式把数据发送给对应的Android讑֤QAndroid讑֤只要在程序中按之前和服务器商量好的格式从对应的key中获取数据即可?br />
转自Q?


胡鹏 2011-12-29 17:57 发表评论
]]>图解 MongoDB 地理位置索引的实现原??http://www.aygfsteel.com/lsbwahaha/archive/2011/11/25/364839.html胡鹏胡鹏Fri, 25 Nov 2011 09:19:00 GMThttp://www.aygfsteel.com/lsbwahaha/archive/2011/11/25/364839.htmlhttp://www.aygfsteel.com/lsbwahaha/comments/364839.htmlhttp://www.aygfsteel.com/lsbwahaha/archive/2011/11/25/364839.html#Feedback0http://www.aygfsteel.com/lsbwahaha/comments/commentRss/364839.htmlhttp://www.aygfsteel.com/lsbwahaha/services/trackbacks/364839.html地理位置索引支持是MongoDB的一大亮点,q也是全球最行的LBS服务foursquare 选择MongoDB的原因之一。我们知道,通常的数据库索引l构是B+ TreeQ如何将地理位置转化为可建立B+Tree的Ş式,下文ؓ你描q?/p>

首先假设我们需要烦引的整个地图分成16×16的方|如下图(左下角ؓ坐标0,0 右上角ؓ坐标16,16Q:

 

单纯的ExQyQ的数据是无法徏立烦引的Q所以MongoDB在徏立烦引的时候,会根据相应字D늚坐标计算一个可以用来做索引的hash|q个值叫做geohashQ下面我们以地图上坐标ؓQ?Q?Q的点(图中U叉位置Qؓ例?/p>

我们W一步将整个地图分成{大的四块Q如下图Q?/p>



划分成四块后我们可以定义q四块的|如下Q左下ؓ00Q左上ؓ01Q右下ؓ10Q右上ؓ11Q:

01 11
00 10

q样Q?Q?Q点的geohash值目前ؓ 00

然后再将四个块每一块进行切Ԍ如下Q?/p>



q时Q?Q?Q点位于右上区域Q右上的gؓ11Q这PE4Q?Q点的geohash值变为:0011

l箋往下做两次切分Q?/p>




最l得刎E4Q?Q点的geohashgؓQ?0110100

q样我们用这个值来做烦引,则地图上点相q的点就可以转化成有相同前缀的geohashg?/p>

我们可以看到Q这个geohash值的_度是与划分地囄ơ数成正比的Q上例对地图划分了四ơ。而MongoDB默认是进?6ơ划分,q个值在建立索引时是可控的。具体徏立二l地理位|烦引的命o如下Q?/p>

db.map.ensureIndex({point : "2d"}, {min : 0, max : 16, bits : 4})

其中的bits参数是划分几次Q默认ؓ26ơ?/p>










 



胡鹏 2011-11-25 17:19 发表评论
]]>
java?UReference探讨http://www.aygfsteel.com/lsbwahaha/archive/2011/10/30/362314.html胡鹏胡鹏Sun, 30 Oct 2011 03:59:00 GMThttp://www.aygfsteel.com/lsbwahaha/archive/2011/10/30/362314.htmlhttp://www.aygfsteel.com/lsbwahaha/comments/362314.htmlhttp://www.aygfsteel.com/lsbwahaha/archive/2011/10/30/362314.html#Feedback0http://www.aygfsteel.com/lsbwahaha/comments/commentRss/362314.htmlhttp://www.aygfsteel.com/lsbwahaha/services/trackbacks/362314.html阅读全文

胡鹏 2011-10-30 11:59 发表评论
]]>
理解java中的ThreadLocalhttp://www.aygfsteel.com/lsbwahaha/archive/2011/10/29/362282.html胡鹏胡鹏Sat, 29 Oct 2011 09:39:00 GMThttp://www.aygfsteel.com/lsbwahaha/archive/2011/10/29/362282.htmlhttp://www.aygfsteel.com/lsbwahaha/comments/362282.htmlhttp://www.aygfsteel.com/lsbwahaha/archive/2011/10/29/362282.html#Feedback0http://www.aygfsteel.com/lsbwahaha/comments/commentRss/362282.htmlhttp://www.aygfsteel.com/lsbwahaha/services/trackbacks/362282.html阅读全文

胡鹏 2011-10-29 17:39 发表评论
]]>
վ֩ģ壺 | н| | SHOW| | Ϫ| ӽ| | | ̷| | | | | | | | | ױ| | | ξ| ī񹤿| | Ҧ| | | ̩| ߺ| ݸ| | ˮ| | ̫| | ̩| | | | ̨| |