??xml version="1.0" encoding="utf-8" standalone="yes"?>中文字幕久久亚洲一区,亚洲爆乳无码专区,五月天网站亚洲小说http://www.tkk7.com/vcycyv/zh-cnSat, 10 May 2025 19:59:24 GMTSat, 10 May 2025 19:59:24 GMT60一个基于react redux typescript saga webpack springboot和jpa的示例程?/title><link>http://www.tkk7.com/vcycyv/archive/2018/02/03/433036.html</link><dc:creator>人在江湖</dc:creator><author>人在江湖</author><pubDate>Fri, 02 Feb 2018 21:59:00 GMT</pubDate><guid>http://www.tkk7.com/vcycyv/archive/2018/02/03/433036.html</guid><wfw:comment>http://www.tkk7.com/vcycyv/comments/433036.html</wfw:comment><comments>http://www.tkk7.com/vcycyv/archive/2018/02/03/433036.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/vcycyv/comments/commentRss/433036.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/vcycyv/services/trackbacks/433036.html</trackback:ping><description><![CDATA[<p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">分n自己做的一个小应用Q这是一个典型的web应用E序的技术栈Q可以在q个目的基上开发你惛_的应用。前端的开发有开发和产品两种模式Q开发模式主要是ZHot code reloading.</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">代码在这里:https://github.com/vcycyv/react-redux-typescript-saga-webpack-springboot-jpa-pomotodo </p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">使用ҎQ?/p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">1. clone/download the project</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">2. run "gradle wrapper"</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">3. run "gradle build" (It will download jar files and js modules dependency)</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">4. Before importing the project into IDE, comment out "http://include 'src:main:frontend" from settings.gradle</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">5. Import gradle project to IDE. (I use eclipse)</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">6. create a postgre db named "pomotodo"</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">7. Start the mid-tier by running Application.java</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">8. UI development </p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">   8.1 For projection, navigate to /src/main/frontend and run "npm run build", and go to localhost:8080/pomotodo </p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">   8.2 For development (hot reloading), navigate to /src/main/frontend and run "npm start", and go to localhost:9090 </p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;"><br style="box-sizing: border-box;" /></p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">使用redux-saga的好处是Zside-effect, 比如下面代码中,const tasks = yield call(ApiTasks.listTasks); 调用后端服务Q?nbsp;</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">export function* listTasks() {</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">    const tasks = yield call(ApiTasks.listTasks);</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">    yield put({</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">        type: LIST_TASK_SUCCESS,</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">        tasks</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">    })</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">}</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">再下面一行的yield put语句dispatch了LIST_TASK_SUCCESSq个actionQpayload是REST API q回的数据tasks.</p><p style="box-sizing: border-box; margin: 0px 0px 25px; color: #2f2f2f; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif; font-size: 16px; background-color: #ffffff; word-break: break-word !important;">计划l箋开发这个项目,最l做一个番茄时间管理的工具。感兴趣的朋友可以在github上star q个目Q下ơ可以随时在“your star”中找到它?/p><img src ="http://www.tkk7.com/vcycyv/aggbug/433036.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/vcycyv/" target="_blank">人在江湖</a> 2018-02-03 05:59 <a href="http://www.tkk7.com/vcycyv/archive/2018/02/03/433036.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Z么一U开发经理要量全栈http://www.tkk7.com/vcycyv/archive/2016/07/15/431199.html人在江湖人在江湖Thu, 14 Jul 2016 22:53:00 GMThttp://www.tkk7.com/vcycyv/archive/2016/07/15/431199.htmlhttp://www.tkk7.com/vcycyv/comments/431199.htmlhttp://www.tkk7.com/vcycyv/archive/2016/07/15/431199.html#Feedback0http://www.tkk7.com/vcycyv/comments/commentRss/431199.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/431199.html在外企工作十q_从程序员做到一U开发经理,再后来{到公司美国总部Q又做回E序员。工作角色的变化促自己思考,分别站在E序员和开发经理的角度看,怎样的程序员是出色的E序员,怎样的开发经理是好经理。经历团队发展过E里U种好的、坏的变q,再加上看到、听到其他团队的l验教训Q就来有感触Q掌握全栈技术对一U开发经理很重要?/p>


开发经理的职责?strong>保软g产品按时保质发布。流E也个目标服务, 但流E本w的作用很有限。Y件开发流E理论经历瀑布式,q代式(RUP, 又称l一软gq程Q以及现在的敏捷开发(敏捷在现实中几乎是scrumQ,理论来成熟完善,但落地执行又不简单?nbsp;大量文章都在分析Z么敏hE在很多开发团队不起作用。比如最q看?nbsp;Z么敏捷开发在亚洲实行不了 里说Q?“敏捷开发需要大家当面直a问题所在,而这有悖于亚z文化,因ؓ亚洲人特别注意对别h表示重、给别h留面子,q一点与西方文化特别不同Q而西Ҏ是敏h想的发源地?#8221; 从自q亲nl历看,q纯属扯淡。讲到留面子Q和E泥,打太极拳Q老美一点儿也不输给中国人。流E只是个工具Q能否因地制宜执行得好,开发经理v到决定性作用。没有普适的程Q针对一个特定的团队Q只有合适的程?nbsp;全栈型的l理比较Ҏ领导团队做正的事情q做得够?/strong>?nbsp; 能做到这一点,是不是scrum都不重要。他不必在各个方面都是专Ӟ但至需要能预见技术上重要的风险才能及旉取措施处理。一些技术决定对目成|有关键性的影响Q比如技术选型Q搭Y件应用的架构Q包括分? 模块化,secruity, transaction, exception, auditQ自动化试{等。开发经理不必把q些工作都承担了Q但臛_需要把养I保证q些核心的工作没有明昄漏。因为最lؓ产品发布负责的还是开发经理自己,而不是某个犯了错的程序员。不全栈Q把兌然就不全面?/p>


开发经理的各项工作中,我认为最重要的就是面试招聘。招对了人,工作中即佉K到棘手的问题Q技术好素质高的队员自己p决了?strong>团队不怕小但要_?/strong>Q队员必能独当一面。不论前台后端,l理臛_应该具备_好的技术品呌滤掉不合格的应聘者。乔布斯有个观点Q一旦招了庸才,两年后,׃轮到庸才做面试招聘,很可能再招进来的q是庸才。如果开发经理不全栈Q面试就要靠q气了。反q来_资历好而水q_的程序员Q也可以靠运气进好公司的?/p>


E序员ؓstory估时_story pointQ的时候,会不会虚报呢Q如果认为scrum的打牌可以避免虚报的话,可以看看上面关于留面子的讨论。即使把story的分配放在scrum打牌之后Q经常大家心里已l知道哪个h做哪个story, 比如feature enhancement的story自然是这个feature之前的owner来做。打牌的人很Ҏ?#8220;做好?#8221;們֐于多估时间。(再说一ơ,q不是中国特Ԍ是h性)心理学有个有的关于撒谎的讨论,撒谎的前提是1. 我知?nbsp;2.你不知道 3.我知道你不知道?/strong>如果l理在品某Ҏ术上是小白,容易出C旉虚报的问?#8212;—q样的事情我亲见q很多次了。全栈的l理自然不会被糊弄?/p>


E序员经怼在一个技术问题上产生不同的意见,q很正常Q技术上很多事情本来p做取舍。这时候经帔R要开发经理介入做军_。经理做合理的决定不但对目重要Q对队员的个人感受也重要。决定不能是随机的选A或选B, 需要有军_的依据。程序员往往都有点小骄傲Q经理技术上捉襟见肘的时候,E序员就Ҏ惻I“你还不如我呢Q凭什么做军_?#8221;


开发经理需要做coding的工作么Q我认ؓ是需要的?p里有句谚语, He that would command must serve。至也要做比较多code review的工作。评价队员工作效果是开发经理的重要职责之一。技术不全面的经理经怾靠听队员自我评hQ吹牛)Q数代码行数{这U不靠谱的方式评价工作。错误地认同或不认同严重影响团队氛围。n先士卒的l理Ҏ长期保持住团队良好的氛围。我没有能力定义什么样的氛围才是好的Qv码,我带团队Ӟ成员互相之间心存善意?/p>


澄清一下自p点:l理一定要全栈或技术精湛才能带好团队么Q不是,但是很多理的难题在全栈的经理眼里都不是问题Q?比如上面提到的评价队员工作。带不好团队无法好好职业发展么? 不是Q?我见q太多靠吹牛Qh事等各种非技术技巧成功哄骗二U三U经理的了。管理的路越往上走Q技术越不重要,而政治越重要。问题是Q作为程序员或开发经理,你的目标是把目做好q是获得上认可Q?/strong>我觉得这是职业hD最Ҏ的分歧, 但, 不想讨论?/p>






人在江湖 2016-07-15 06:53 发表评论
]]>
开发过E的p|http://www.tkk7.com/vcycyv/archive/2016/01/17/429082.html人在江湖人在江湖Sun, 17 Jan 2016 04:34:00 GMThttp://www.tkk7.com/vcycyv/archive/2016/01/17/429082.htmlhttp://www.tkk7.com/vcycyv/comments/429082.htmlhttp://www.tkk7.com/vcycyv/archive/2016/01/17/429082.html#Feedback0http://www.tkk7.com/vcycyv/comments/commentRss/429082.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/429082.html

人在江湖 2016-01-17 12:34 发表评论
]]>
Encountered an exception that google doesn't know: NoSuchMethodError: findMergedAnnotationAttributes(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;ZZ)Lorg/springframework/core/annotation/AnnotationAttributes;http://www.tkk7.com/vcycyv/archive/2015/06/21/425810.html人在江湖人在江湖Sun, 21 Jun 2015 01:08:00 GMThttp://www.tkk7.com/vcycyv/archive/2015/06/21/425810.htmlhttp://www.tkk7.com/vcycyv/comments/425810.htmlhttp://www.tkk7.com/vcycyv/archive/2015/06/21/425810.html#Feedback0http://www.tkk7.com/vcycyv/comments/commentRss/425810.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/425810.html我在写一个用spring boot的应用,需要了q个exception:
NoSuchMethodError: findMergedAnnotationAttributes(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;ZZ)Lorg/springframework/core/annotation/AnnotationAttributes;
at org.springframework.test.util.MetaAnnotationUtils$AnnotationDescriptor.<init>(MetaAnnotationUtils.java:290)
at org.springframework.test.util.MetaAnnotationUtils$UntypedAnnotationDescriptor.<init>(MetaAnnotationUtils.java:365)
at org.springframework.test.util.MetaAnnotationUtils$UntypedAnnotationDescriptor.<init>(MetaAnnotationUtils.java:360)
at org.springframework.test.util.MetaAnnotationUtils.findAnnotationDescriptorForTypes(MetaAnnotationUtils.java:191)
at org.springframework.test.util.MetaAnnotationUtils.findAnnotationDescriptorForTypes(MetaAnnotationUtils.java:208)
at org.springframework.test.util.MetaAnnotationUtils.findAnnotationDescriptorForTypes(MetaAnnotationUtils.java:166)
at org.springframework.test.context.support.AbstractTestContextBootstrapper.buildMergedContextConfiguration(AbstractTestContextBootstrapper.java:274)
at org.springframework.test.context.support.AbstractTestContextBootstrapper.buildTestContext(AbstractTestContextBootstrapper.java:110)
at org.springframework.test.context.TestContextManager.<init>(TestContextManager.java:120)
at org.springframework.test.context.TestContextManager.<init>(TestContextManager.java:105)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTestContextManager(SpringJUnit4ClassRunner.java:143)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.<init>(SpringJUnit4ClassRunner.java:134)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:33)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.<init>(JUnit4TestReference.java:33)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestClassReference.<init>(JUnit4TestClassReference.java:25)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:48)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:444)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)

The solution is: in the pom.xml, instead of using 
<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.0.BUILD-SNAPSHOT</version>
</parent>

Use a specific version:
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.2.4.RELEASE</version>
    </parent>


人在江湖 2015-06-21 09:08 发表评论
]]>
发个公司招聘启事Q念在^日里原创不少Q请版主留情http://www.tkk7.com/vcycyv/archive/2014/10/31/419330.html人在江湖人在江湖Fri, 31 Oct 2014 04:49:00 GMThttp://www.tkk7.com/vcycyv/archive/2014/10/31/419330.htmlhttp://www.tkk7.com/vcycyv/comments/419330.htmlhttp://www.tkk7.com/vcycyv/archive/2014/10/31/419330.html#Feedback6http://www.tkk7.com/vcycyv/comments/commentRss/419330.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/419330.html

人在江湖 2014-10-31 12:49 发表评论
]]>
Zspringside4新徏project 错误Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin的解军_?/title><link>http://www.tkk7.com/vcycyv/archive/2014/07/05/415476.html</link><dc:creator>人在江湖</dc:creator><author>人在江湖</author><pubDate>Sat, 05 Jul 2014 02:42:00 GMT</pubDate><guid>http://www.tkk7.com/vcycyv/archive/2014/07/05/415476.html</guid><wfw:comment>http://www.tkk7.com/vcycyv/comments/415476.html</wfw:comment><comments>http://www.tkk7.com/vcycyv/archive/2014/07/05/415476.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.tkk7.com/vcycyv/comments/commentRss/415476.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/vcycyv/services/trackbacks/415476.html</trackback:ping><description><![CDATA[<div>Zspringside4新徏project:<br /><span style="color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; background-color: #ffffff;">使用Maven的Archetype插gQ可以基于Quickstart目Q创q目?/span><br style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; background-color: #ffffff;" /><span style="color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; background-color: #ffffff;">q行support/maven-archetype\install.bat后,双击根目录中的generate-project.bat <br /></span>遇到错误Q?br />[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2</div><div>.2:generate (default-cli) on project standalone-pom: The desired archetype does</div><div>not exist (org.springside.examples:quickstart-archetype:4.1.1-SNAPSHOT) -> [Help</div><div> 1]<br /><br />q是Z么呢Q?br />打开generate-project.bat<br /><div>-DarchetypeVersion=4.1.1-SNAPSHOT</div>Ҏ<br /><div>-DarchetypeVersion=4.2.3-SNAPSHOT<br />好了,正确的版本号?span style="background-color: #ffffff; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px;">support/maven-archetype\install.batq行q程中能看到</span></div></div><img src ="http://www.tkk7.com/vcycyv/aggbug/415476.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/vcycyv/" target="_blank">人在江湖</a> 2014-07-05 10:42 <a href="http://www.tkk7.com/vcycyv/archive/2014/07/05/415476.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>spring blazeds integration配置http://www.tkk7.com/vcycyv/archive/2013/06/07/400352.html人在江湖人在江湖Fri, 07 Jun 2013 07:08:00 GMThttp://www.tkk7.com/vcycyv/archive/2013/06/07/400352.htmlhttp://www.tkk7.com/vcycyv/comments/400352.htmlhttp://www.tkk7.com/vcycyv/archive/2013/06/07/400352.html#Feedback0http://www.tkk7.com/vcycyv/comments/commentRss/400352.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/400352.html按照q篇文章的方式配|,会得到错误:
[RPC Fault faultString="[MessagingError message='Destination 'XXXX' either does not exist or the destination has no channels defined (and the application does not define any default channels.)']" faultCode="InvokeFailed" faultDetail="Couldn't establish a connection to 'userService'"]
在网上查原因Q尝试了3个多时Q才l于搞定Q靠?br />W一步: 下蝲blazeds的sample, https://www.adobe.com/cfusion/entitlement/index.cfm?e=lc_blazeds 下蝲那个40多M的turnkey,里面包含tomcat和sample application.
W二步:webapp目录下有个blazeds目录Q这是做blazeds目的一个基app, 新的app可以Zq个来做Qlib目录下已l包含相应的jar包了Q一些configuration文g也都已经包括了。可以在当前目录再复制粘贴出来一个副本,我命名ؓspring_blazeds?br />W三步:改web.xmlQ内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
    <display-name>BlazeDS</display-name>
    <description>BlazeDS Application</description>
<servlet>
      <servlet-name>spring</servlet-name>
         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
         <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/web-application-context.xml</param-value>
         </init-param>
         <load-on-startup>1</load-on-startup>
   </servlet>
 
   <servlet-mapping>
       <servlet-name>spring</servlet-name>
       <url-pattern>/messagebroker/*</url-pattern>
   </servlet-mapping>
</web-app>
W四步:web-inf目录下添加文件web-application-context.xmlQ内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:flex="http://www.springframework.org/schema/flex"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/flex 
http://www.springframework.org/schema/flex/spring-flex-1.0.xsd">
<!-- Bootstraps and exposes the BlazeDS MessageBroker simplest form -->
<flex:message-broker/>
 
   <bean id="productService" class="flex.samples.product.ProductService" >
      <flex:remoting-destination />
   </bean>
</beans>
W五步:
把web-inf/flex目录下的services-config.xml的前几行ҎQ?br />
<?xml version="1.0" encoding="UTF-8"?>
<services-config>
    <services>
        <default-channels>
            <channel ref="my-amf"/>
        </default-channels>
    </services>
q一步非帔R要,我好几个时没搞定问题,主要差的是q一步!web-inf/flex目录下的其他文g没用Q至在q个例子里没用?br />W六步:
写mxml文gQ?br />
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" backgroundColor="#FFFFFF">
<mx:RemoteObject id="srv" destination="productService"/>
<mx:DataGrid dataProvider="{srv.getProducts.lastResult}" width="100%" height="100%"/> 
<mx:Button label="Get Data" click="srv.getProducts()"/>
</mx:Application>
W七步:
把turnkey里blazeds-turnkey-4.0.0.14931\tomcat\webapps\samples\WEB-INF\src\flex\samples\product目录下的java文g~译一下,放web-inf的classes目录下?br />W八步:
djar包,~译mxmlQ把bin-debug目录下的所有文件包括history目录都拷贝到webroot下,我的是spring_blazeds。记得编译时加选项
-services "C:\code\flex\blazeds-turnkey-4.0.0.14931\tomcat\webapps\spring_blazeds\WEB-INF\flex\services-config.xml" -locale en_US
所以你每次改services-config.xml都要重新~译Q替换webapp的文件?br />
然后q行应该可以了Q?/div>


人在江湖 2013-06-07 15:08 发表评论
]]>《高效能人士的七个习惯》摘?/title><link>http://www.tkk7.com/vcycyv/archive/2013/05/08/399023.html</link><dc:creator>人在江湖</dc:creator><author>人在江湖</author><pubDate>Wed, 08 May 2013 12:55:00 GMT</pubDate><guid>http://www.tkk7.com/vcycyv/archive/2013/05/08/399023.html</guid><wfw:comment>http://www.tkk7.com/vcycyv/comments/399023.html</wfw:comment><comments>http://www.tkk7.com/vcycyv/archive/2013/05/08/399023.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.tkk7.com/vcycyv/comments/commentRss/399023.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/vcycyv/services/trackbacks/399023.html</trackback:ping><description><![CDATA[<span style="font-size: 12pt;">废话不多_直接摘录Q?/span><br /> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;"><br /><br />谁也无法说服他h改变Q因为我们每个h都守着一扇只能从内开启的改变之门Q不论动之以情或说之以理Q我们都不能替别人开门?span style="font-family: verdana, 'courier new'; font-size: 14px; line-height: 21px;"> </span><span style="font-family: verdana, 'courier new'; font-size: 14px; line-height: 21px;"> </span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;"><br /><span style="color: red;">领导工作的核心,是在共有的使命、愿景和价D之后Q创造出一个文化?/span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;"><br />或许只有真正l历q拥有,才会真正懂得分n?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;"><br />习惯定义?#8220;知识”?#8220;技?#8221;?#8220;意愿”怺交织的结果?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />人类的四U天赋关于选择的自由:自我意识Q想象力Q良知, 独立意志?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br /><span style="color: red;">除非你愿意,否则没h能伤害你?/span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br /><span style="color: red;">只有真正接受?#8220;我昨日的选择军_了今日的?#8221;的观念,才可能说“我有权另做选择”?/span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />x圈和影响圈:x圈相关的语句l常带有假设性质:"如果"。媄响圈相关的语句多半体C品d修养Q?#8220;我可?#8221;</div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />领导是第一ơ的创造,必须先于理Q管理是W二ơ的创造?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />宣言主要说明自己x为怎样的hQ品PQ成׃么样的事业(贡献和成)及ؓ此奠基的价D和原则?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />Zh都能够运用想象力来挖掘内心深处真正的价D。(比如惛_参加自己葬礼Q?br /> <br /> <br /> <img src="http://f-1.tuzhan.com/7a38061e146f/p-2/l/2013/05/08/20/3f75aac0b3a842c6af199b96e58b18b6.gif" alt="" /></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;">高效能h士L避免陷入W三和第四类事务Q因Z论是否紧q,q些事情都是不重要的Q他们还通过p更多旉在第二类事务来减第一cM务的数量?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br /><span style="color: red;">毕竟日程表的目的在于协助工作推行Q?q不是要让我们ؓq度落后而生内疚感?/span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />对h不可讲效率,对事才可如此。对人应讲效?#8212;—x一行ؓ是否有效?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br /><span style="color: red;">W四代个人管理理论的特点Q在于承认h比事更重要。而芸怼生中Q首要顾及的便是自己?/span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />两种授权Q指令型授权和责d授权?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />信Q是促使hq步的最大动力,因ؓ信Q能够让h们表现出自己最好的一面。但q需要时间和耐心Q而且q有可能需要对人员q行必要的培训,让他们拥有符合这U信Lq的能力?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />授权的大原则不变Q权限却因h而异。对不够成熟的hQ目标不必订得太高,指示要详,q且充分提供资源Q监督考核则较频繁Q奖惩也更直接。对成熟的hQ可分配挑战性高的Q务,_指示Q减监督考核的次敎ͼ考评标准则较为抽象?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br /><span style="color: red;">我们都知道银行̎户就是把钱存q去Q作为储蓄,以备不时之需。情感̎户里储蓄的是人际关系中不可或~的信QQ是Z人相处时的那份安全感。能够增加情感̎户存ƄQ是CDQ诚实,仁慈与信用。这使别人对我更加信赖,必要时能发挥相当的作用,甚至犯了错也可用q笔储蓄来I补?/span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />比方6岁的孩子你正忙的时候,Z件小事来烦你。在你看来此事或许微不道,在他小的心灵中Q却是天下第一要事?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />区别对待他们Q才是^{的爱?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />避免背后d他h。如果能对不在场的h保持重Q在场的Z会尊重你。当你维护不在场的h的时候,在场的h也会对你报以信Q?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br /><span style="color: red;">双赢者把生活看作一个合作的舞台Q而不是一个角斗场。一般h看事情多用二分法Q非强即弱,非胜卌|。其实世界之大,Zh都有_的立空_他h之得不必p׃失?/span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />在家族式或者徏立在友谊基础上的生意启动之前Q最好先?#8220;不能双赢好聚好?#8221;q一点达成协议,q样事业的繁荣才不会D关系的破裂?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />在敢作敢Z善解人意之间扑ֈq点,才是真正的成熟,q是双赢的基。如果我勇气十Q却不懂体谅他hQ我的交往模式是?输。如果我体谅有余Q而勇气不I我的交往模式是?赢?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />打保龄球的时候计全家分?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />知彼解己Q移情聆?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br /><span style="color: red;">假如两h意见相同Q其中一人必属多余。与所见略同的人沟通,毫无益处Q要有分歧才有收莗?/span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br /><span style="color: red;">我们不应单纯地模仿大师的a行,而应该追求大师所q求的?/span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />相同不是l一Q一致也不等于团l,l一和团l意味着互补Q而不是相同。相同毫无创造性可aQ而且沉闷乏味。统合综效的_N是重差异?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br /><span style="color: red;">歌d_“以一个h的现有表现期怹Q他不会有所长进。以他的潜能和应有成期怹Q他定能不负所望?#8221;</span></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br />企业的体质就是胦务状况;心智涉及人力资源的开发、培Mq用Q社会情感指公关与员工待遇;_则反映出目标宗旨与原则。企业健全与否系于这四方面的q发展?/div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"></div> <div style="font-family: 微Y雅黑; font-size: 18px; line-height: normal; orphans: 2; widows: 2;"><br /><span style="color: red;">我们认ؓ爱情保鲜的秘诀是交谈Q特别是讨论彼此的感受?/span></div><img src ="http://www.tkk7.com/vcycyv/aggbug/399023.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/vcycyv/" target="_blank">人在江湖</a> 2013-05-08 20:55 <a href="http://www.tkk7.com/vcycyv/archive/2013/05/08/399023.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>为QA准备的用以性能试的javaU表http://www.tkk7.com/vcycyv/archive/2013/04/04/397392.html人在江湖人在江湖Thu, 04 Apr 2013 14:28:00 GMThttp://www.tkk7.com/vcycyv/archive/2013/04/04/397392.htmlhttp://www.tkk7.com/vcycyv/comments/397392.htmlhttp://www.tkk7.com/vcycyv/archive/2013/04/04/397392.html#Feedback0http://www.tkk7.com/vcycyv/comments/commentRss/397392.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/397392.html以前QA做性能试用手机的U表Q很不方ѝ前两年为QA做了一个javaU表Q记录鼠标两ơ点M间的旉差。但是那是基于JInvoke的,JInvoke是收费YӞ有试用的旉Q用来封装JNI~程的复杂性。最qQA要求我再搞一个完全免费的cM软g。这ơ用的是jnativehook.
jnativehook可以用来监控键盘和鼠标的事g。底层通过调用不同q_的native code屏蔽了^台相x。它强大的地方在于,Zjnativehook的Y件可以后台运行,没有cM“监控某窗?/strong>内键?鼠标事g”的限制?/div>
扩展jnativehook的这个小工具可以记录两次鼠标点击之间的时间差Q更切地说Q是记录W一ơ鼠标抬起和W二ơ鼠标按?/strong>的时间差。D一个QA使用的例子,比如在UI上点M个buttonQ等着执行成功弹出的对话框。QA在点击buttonӞ鼠标一抬vQ这个小工具开始计Ӟ当QA看见对话框时Q马上在屏幕L位置炚w标,软gp录了q两ơ点M间的旉差。当Ӟq样做还是不够精,存在人反应时间的误差?/div>
jnativehook目的主在 https://code.google.com/p/jnativehook/
我扩展程序的源代码如下:
import org.jnativehook.GlobalScreen;
import org.jnativehook.NativeHookException;
import org.jnativehook.mouse.NativeMouseEvent;
import org.jnativehook.mouse.NativeMouseInputListener;


public class MouseHook  implements NativeMouseInputListener  {

    static double startPoint = 0.0;
    /**
     * 
@param args
     
*/
    public static void main(String[] args) {
        try {
            GlobalScreen.registerNativeHook();
    }
    catch (NativeHookException ex) {
            System.err.println("There was a problem registering the native hook.");
            System.err.println(ex.getMessage());

            System.exit(1);
    }

    //Construct the example object.
        MouseHook example = new MouseHook();

    //Add the appropriate listeners for the example object.
    GlobalScreen.getInstance().addNativeMouseListener(example);

    }

    @Override
    public void nativeMouseClicked(NativeMouseEvent arg0) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void nativeMousePressed(NativeMouseEvent arg0) {
        System.out.println((System.currentTimeMillis() - startPoint)/1000);
        
    }

    @Override
    public void nativeMouseReleased(NativeMouseEvent arg0) {
        startPoint = System.currentTimeMillis();        
    }

    @Override
    public void nativeMouseDragged(NativeMouseEvent arg0) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void nativeMouseMoved(NativeMouseEvent arg0) {
        // TODO Auto-generated method stub
        
    }

}
可以在eclipse里右键点java 目Q在export...里选择Java目录下的Runnable Jar File
假如你保存的jar文g叫mousehook.jar. 可以直接使用java -jar mousehook.jar启动可以用了?/div>

人在江湖 2013-04-04 22:28 发表评论
]]>关于调优之数据库(一Q?/title><link>http://www.tkk7.com/vcycyv/archive/2013/03/31/397206.html</link><dc:creator>人在江湖</dc:creator><author>人在江湖</author><pubDate>Sun, 31 Mar 2013 13:49:00 GMT</pubDate><guid>http://www.tkk7.com/vcycyv/archive/2013/03/31/397206.html</guid><wfw:comment>http://www.tkk7.com/vcycyv/comments/397206.html</wfw:comment><comments>http://www.tkk7.com/vcycyv/archive/2013/03/31/397206.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/vcycyv/comments/commentRss/397206.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/vcycyv/services/trackbacks/397206.html</trackback:ping><description><![CDATA[<div style="font-family: 微Y雅黑; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;">q篇文字主要讨论sql的一般编写原则。下一讨论根据执行计划进行调优的话题?/div> <div style="font-family: 微Y雅黑; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;">|上q类文章很多Q但往往只是l出l论Q比如,q样写sql会比那样写sql效率更高。阅读者如果打打开数据库自己做一遍实验,看看效率差异到底有多,需要自己造数据,q是比较ȝ。这文字会把DDL和DML以及sql的执行时间都写出来,一斚wl一个更直观的印象,另一斚w方便阅读者自己实验?/div> <div style="font-family: 微Y雅黑; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;"></div> <div style="font-family: 微Y雅黑; line-height: normal; orphans: 2; text-align: -webkit-auto; widows: 2;">以Oracle为实验用数据库,使用著名的emp表。安装oracle数据库之后,scott用户的密码是tiger. 在他的schema下有几张sample表,很多sql教程都以q几张表为基. 据说Q熟悉oracle数据库的人提到smithq个人名Q就能联惌vsample表中他的工作是clerk. emp表就是sample表之一。这张表原始数据只有14行,Z体现不同sql性能上的差异Q我们需要多填充一些数据进厅R作为填充数据的预备知识Q我们可以看一下如何生成一pd从小到大的id:<br /> <div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #0000FF; ">SELECT</span> ROWNUM<br /> <span style="color: #0000FF; ">FROM</span> DUAL<br /> CONNECT <span style="color: #0000FF; ">BY</span> <span style="color: #0000FF; ">LEVEL</span> <span style="color: #808080; "><</span> <span style="color: #800000; font-weight: bold; ">10000</span>;</div> <span style="font-family: monospace, Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 13px; line-height: 14px; white-space: pre;">填充随机数据可以借助于dbms_random包,不想覆盖已有的表Q所以新创徏一个表l构基本一LQ?/span> <br /> <div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #0000FF; ">create</span> <span style="color: #0000FF; ">table</span> emp_new<br /> <span style="color: #0000FF; ">as</span><br /> <span style="color: #0000FF; ">select</span> <span style="color: #0000FF; ">level</span>                                                          empno,<br />        SYS.dbms_random.String(<span style="color: #FF0000; ">'</span><span style="color: #FF0000; ">u</span><span style="color: #FF0000; ">'</span>, SYS.dbms_random.value(<span style="color: #800000; font-weight: bold; ">3</span>,<span style="color: #800000; font-weight: bold; ">10</span>))       ename,<br />        SYS.dbms_random.String(<span style="color: #FF0000; ">'</span><span style="color: #FF0000; ">u</span><span style="color: #FF0000; ">'</span>, SYS.dbms_random.value(<span style="color: #800000; font-weight: bold; ">3</span>,<span style="color: #800000; font-weight: bold; ">9</span>))        job,<br />        <span style="color: #FF00FF; ">round</span>(SYS.dbms_random.value(<span style="color: #800000; font-weight: bold; ">1000</span>,<span style="color: #800000; font-weight: bold; ">9999</span>))                        mgr,<br />        TO_DATE (   <span style="color: #FF00FF; ">ROUND</span> (DBMS_RANDOM.VALUE (<span style="color: #800000; font-weight: bold; ">1</span>, <span style="color: #800000; font-weight: bold; ">28</span>))<br />                     <span style="color: #808080; ">||</span> <span style="color: #FF0000; ">'</span><span style="color: #FF0000; ">-</span><span style="color: #FF0000; ">'</span><br />                     <span style="color: #808080; ">||</span> <span style="color: #FF00FF; ">ROUND</span> (DBMS_RANDOM.VALUE (<span style="color: #800000; font-weight: bold; ">1</span>, <span style="color: #800000; font-weight: bold; ">12</span>))<br />                     <span style="color: #808080; ">||</span> <span style="color: #FF0000; ">'</span><span style="color: #FF0000; ">-</span><span style="color: #FF0000; ">'</span><br />                     <span style="color: #808080; ">||</span> <span style="color: #FF00FF; ">ROUND</span> (DBMS_RANDOM.VALUE (<span style="color: #800000; font-weight: bold; ">1980</span>, <span style="color: #800000; font-weight: bold; ">2012</span>)),<br />                     <span style="color: #FF0000; ">'</span><span style="color: #FF0000; ">DD-MM-YYYY</span><span style="color: #FF0000; ">'</span><br />                    )                                                   hiredate,<br />         <span style="color: #FF00FF; ">round</span>(SYS.dbms_random.value(<span style="color: #800000; font-weight: bold; ">300</span>,<span style="color: #800000; font-weight: bold; ">9999</span>))                         sal,<br />         <span style="color: #FF00FF; ">round</span>(SYS.dbms_random.value(<span style="color: #800000; font-weight: bold; ">1</span>,<span style="color: #800000; font-weight: bold; ">6</span>)) <span style="color: #808080; ">*</span> <span style="color: #800000; font-weight: bold; ">100</span>                        comm,<br />         <span style="color: #FF00FF; ">round</span>(SYS.dbms_random.value(<span style="color: #800000; font-weight: bold; ">1</span>,<span style="color: #800000; font-weight: bold; ">4</span>)) <span style="color: #808080; ">*</span> <span style="color: #800000; font-weight: bold; ">10</span>                         deptno<br />  <span style="color: #0000FF; ">FROM</span> DUAL<br /> CONNECT <span style="color: #0000FF; ">BY</span> <span style="color: #0000FF; ">LEVEL</span> <span style="color: #808080; "><</span> <span style="color: #800000; font-weight: bold; ">1000000</span>;</div> <div number3="" index2="" alt2"="" style="color: #222222; font-family: monospace, Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 13px; line-height: 1.1em !important; outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; white-space: pre !important;"><br /> </div> <div number3="" index2="" alt2"="" style="color: #222222; font-family: monospace, Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 13px; line-height: 1.1em !important; outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; white-space: pre !important;"><span style="font-size: 14px; ">q里有一个局限,原本的emp表mgr列reference empno列。上面新创徏的emp_new中失Mq个constraint. q点可以从Oracle SQL Developer中看到?/span></div> <div number3="" index2="" alt2"="" style="color: #222222; font-family: monospace, Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 13px; line-height: 1.1em !important; outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; white-space: pre !important;"><span style="font-size: 14px;">emp表:<br /> <a target="_blank"><img src="http://f-1.tuzhan.com/adb507d00a2a/p-2/l/2013/03/31/09/7c29f2ddaa7d47f29535dbe8b892c36a.png" alt="with_constrant.png" border="0" /><br /> </a></span> <span style="font-size: 14px; line-height: 14px;">emp_new表:</span> <span style="font-size: 14px;"><br /> <a target="_blank"><img src="http://f-1.tuzhan.com/33bdd567b454/p-2/l/2013/03/31/09/485143eb02104036ba1f146fb0d99375.png" alt="no_constrant.png" border="0" /></a> </span> <div style="color: #000000; font-family: 微Y雅黑; font-size: 14px; line-height: normal; text-align: -webkit-auto; white-space: normal;"><table border="0" cellpadding="0" cellspacing="0" style="width: 402px; color: #222222; font-family: monospace, Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 13px !important; outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; box-sizing: content-box !important; direction: ltr !important;"><tbody style="outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; vertical-align: baseline !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; overflow-x: visible !important; overflow-y: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; "><tr style="outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; vertical-align: baseline !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; overflow-x: visible !important; overflow-y: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; "><td class="code" style="word-break: break-all; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; vertical-align: baseline !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow-x: visible !important; overflow-y: visible !important; position: static !important; right: auto !important; top: auto !important; width: 402px; box-sizing: content-box !important; direction: ltr !important; "><div id="qk8cyii" class="container" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: relative !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><div id="8qgge4i" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; white-space: pre; ">下面开始测试sql了:</span></div><div id="i8s8ciw" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; white-space: pre; ">1. 先比较一下加primary key前后的结果:</span></div><div id="ggm84oi" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; white-space: pre; ">select * from emp_new where empno=1;</span></div><div id="y4cgwge" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; white-space: pre; ">加primary key constraint之前q行0.023U?加了primary key constraint之后0.001U。加</span><span style="font-size: 14px; white-space: pre; line-height: 1.1em; ">primary key constraint?00万条数据上大U花?U钟?/span></div><div id="amaquee" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"></div><div id="84sugw4" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">2. where子句 vs. having子句</span></div><div id="moam44e" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">select deptno, avg(sal) from emp_new group by deptno having deptno != 10 and deptno != 20;</span></div><div id="co8csi4" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">0.24U?/span></div><div id="q4q4u44" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">select deptno, avg(sal) from emp_new where deptno != 10 and deptno != 20 group by deptno ;</span></div><div id="m8w488y" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">0.16U?/span></div><div id="ack4kuc" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">所以having中的条g一般用于对一些集合函数的比较Q如count(){,除此之外Q一般条件应该写在where子句中?/span></div><div id="e8oe4ee" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; "><br /></span></div><div id="m6ucs4e" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">3. 减少对表的查?/span></div><div id="88giyai" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">update emp_new set sal=(select max(sal) from emp_new), comm=(select max(comm) from emp_new) where empno=1237;</span></div><div id="gy84o44" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">0.11U左?/span></div><div id="aukwqgq" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">update emp_new set (sal, comm) =(select max(sal), max(comm) from emp_new) where empno=1224;</span></div><div id="4u4w4ag" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">0.07U到0.08U之?/span></div><div id="a4k4wa4" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; "><br /></span></div><div id="a44uss4" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">注意Q以上三个测试都只fetch?0条数据?/span></div><div id="qkuqu8o" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; "><br /></span></div><div id="8mu44ww" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">4. 传说中用exists替代in通常可提高查询效率, not exists 也比not in 快?br />先生成dept_new表:<br /></span><div style="background-color: #eeeeee; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #0000FF; ">create</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">table</span><span style="color: #000000; "> dept_new<br /></span><span style="color: #0000FF; ">as</span><span style="color: #000000; "><br /></span><span style="color: #0000FF; ">select</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">level</span><span style="color: #000000; ">                                                          deptno,<br />       SYS.dbms_random.String(</span><span style="color: #FF0000; ">'</span><span style="color: #FF0000; ">u</span><span style="color: #FF0000; ">'</span><span style="color: #000000; ">, SYS.dbms_random.value(</span><span style="color: #800000; font-weight: bold; ">3</span><span style="color: #000000; ">,</span><span style="color: #800000; font-weight: bold; ">10</span><span style="color: #000000; ">))       dname,<br />       SYS.dbms_random.String(</span><span style="color: #FF0000; ">'</span><span style="color: #FF0000; ">u</span><span style="color: #FF0000; ">'</span><span style="color: #000000; ">, SYS.dbms_random.value(</span><span style="color: #800000; font-weight: bold; ">3</span><span style="color: #000000; ">,</span><span style="color: #800000; font-weight: bold; ">9</span><span style="color: #000000; ">))        loc<br /></span><span style="color: #0000FF; ">FROM</span><span style="color: #000000; "> DUAL<br />CONNECT </span><span style="color: #0000FF; ">BY</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">LEVEL</span><span style="color: #000000; "> </span><span style="color: #808080; "><</span><span style="color: #000000; "> </span><span style="color: #800000; font-weight: bold; ">10000</span><span style="color: #000000; ">;</span></div></div><div id="q44wqy4" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">实际试中,无论是执行计划还是实际测试的速度都是基本一致的?/span></div><div id="8m44wo4" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">W一l?/span></div><div id="4ymqu8g" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; ">select * from emp_new e where e.empno > 986000 and e.deptno in (select d.deptno from dept_new d where d.loc='AYDN') select * from emp_new e where empno > 986000 and exists (select * from dept_new d where d.deptno = e.deptno and d.loc='AYDN') W二l? select e.empno from emp_new e where e.empno > 996000 and not exists (select 1 from dept_new d where d.deptno = e.deptno and loc like 'A%') select e.empno from emp_new e where e.empno > 996000 and e.deptno not in (select d.deptno from dept_new d where loc like 'A%')</span></div><div id="giu844u" class="line number3 index2 alt2" style="outline: 0px !important; border: 0px !important; vertical-align: baseline !important; margin: 0px !important; padding: 2px 1em 2px 0em !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important;"><span style="font-size: 14px; line-height: 15px; white-space: pre; "><br /></span></div></div></td></tr></tbody></table></div><div style="color: #000000; font-family: 微Y雅黑; font-size: 14px; line-height: normal; text-align: -webkit-auto; white-space: normal;"></div><div style="color: #000000; font-family: 微Y雅黑; font-size: 14px; line-height: normal; text-align: -webkit-auto; white-space: normal;">q篇文字主要参考两文章:</div><div style="color: #000000; font-family: 微Y雅黑; font-size: 14px; line-height: normal; text-align: -webkit-auto; white-space: normal;">Generating Random Data in<a href="file:///C:/Users/Chuyang/AppData/Local/youdao/ynote/editor/web/Oracle%EF%BC%9Ahttp://viralpatel.net/blogs/generating-random-data-in-oracle/" style="cursor: pointer; "> OracleQhttp://viralpatel.net/blogs/generating-random-data-in-oracle/</a></div><div style="color: #000000; font-family: 微Y雅黑; font-size: 14px; line-height: normal; text-align: -webkit-auto; white-space: normal;">Oracle sql  性能优化调整Q?a href="file:///C:/Users/Chuyang/AppData/Local/youdao/ynote/editor/web/&nbsp;http://wenku.baidu.com/view/571cddd4195f312b3169a507" style="cursor: pointer; "> http://wenku.baidu.com/view/571cddd4195f312b3169a507</a> </div> <span style="font-size: 14px;"><br /> <br /> <br /> <br /> </span></div> </div><img src ="http://www.tkk7.com/vcycyv/aggbug/397206.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/vcycyv/" target="_blank">人在江湖</a> 2013-03-31 21:49 <a href="http://www.tkk7.com/vcycyv/archive/2013/03/31/397206.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>yuying姐姐&SAS五年http://www.tkk7.com/vcycyv/archive/2013/03/07/396171.html人在江湖人在江湖Thu, 07 Mar 2013 09:38:00 GMThttp://www.tkk7.com/vcycyv/archive/2013/03/07/396171.htmlhttp://www.tkk7.com/vcycyv/comments/396171.htmlhttp://www.tkk7.com/vcycyv/archive/2013/03/07/396171.html#Feedback0http://www.tkk7.com/vcycyv/comments/commentRss/396171.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/396171.html姐姐d怀孕了Q发现她把微博上的名字改?#8220;q求q福q行?#8221;的时候就猜到Ҏ孕了。试探地问了一下她Z么改名字Q她只是敯Q我也没敢l问Q最后终于还是确定知道她怀孕了Q祝!有个孩不纯_Ҏ快乐的事情,其实背后也有很多很多辛苦。发现姐姐改名字??4L事情Q假讑֥是去q?月末怀孕的Q?月中旬发现的Q那?月末是预期了Q希望一切顺利!

最q的一q回了三ơ丹东,其中两次是带着大猪和老虎儿一起回ȝ。每ơ老虎儉K跟爷爷奶奶玩儿得很高兴。虽然他们不常见面,血~还是能瞬间拉近他们Q很奇妙的事情。大猪坚持十q如一日地M呵,开始喜Ƣ上唱歌Q最频繁的时候一周唱好几场KTVQ比职业歌手q辛?..我跟她说Q她的性格很好Q如果没有嫁l我Q她跟很多h都适合Q而我性格不好Q适合我的人很,能够有她是很q运的事。然后,她就常说Q我跟她在一h多幸q啊。真是一点儿阛_也不能给她,要不然控制不住她的灿烂。老虎儿越来越聪明了,怼说些令h惊讶的话。精力无限,春节回家睡了三个晚上Q最早的一天是11?0睡的。不q,他太爱哭了,q有半年p上幼儿园了,爱哭d估计要把老师折磨M?/font>

大猪和我都得C升职Q大猪做了副处,我做了manager。从表面上看Q应该是挺殷实的家庭Q但其实我们俩都是升职不加薪。加入SASӞx期望会在SAS工作五年q么久,q是很感谢Emily一如既往的支持,最q的一q和以往一P很多愉快和不快,很多抱歉和感Ȁ?/font>

今年用过的两个密码是thank you和principle.

q去的一q_有多事情会被永久的CQ假如这些事情是本该忘记的,忘记之后又有什么其他值得我记得?



人在江湖 2013-03-07 17:38 发表评论
]]>
《h件》摘录及感想http://www.tkk7.com/vcycyv/archive/2012/11/29/392236.html人在江湖人在江湖Thu, 29 Nov 2012 15:10:00 GMThttp://www.tkk7.com/vcycyv/archive/2012/11/29/392236.htmlhttp://www.tkk7.com/vcycyv/comments/392236.htmlhttp://www.tkk7.com/vcycyv/archive/2012/11/29/392236.html#Feedback3http://www.tkk7.com/vcycyv/comments/commentRss/392236.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/392236.html《h件》是与《h月神话》齐名的书,promote manager三个月了Q虽然基本是个挂名managerQ也q是惶惶然恶补管理知识。《h件》是一本一定程度上影响自己价D的书。下面是一些摘录和感想Q其实之前既没管理经验也不具备更多这斚w的知识,所谓感想也只是敢瞎惻I
我们的成功源自于良好的、与所有此工作的参与者之间的人际交往Q同h们的p|原因也是׃p糕的h际交往?/span>
  我们們֐于集中精力做技术方面而不是h际关pL面工作的主要原因Q不是因为它更重要,而是因ؓ它更Ҏ做。如果你发现自己x的是技术而不是社会方面的问题Q你q当于在一条黑暗的街上丢掉钥匙Q却到邻q的另一条街上去L。因?#8220;q条街上的灯比那条街上的要亮一?#8221;?/span>
对Q何一个员工来_没有比因他的U极性不够而不得不׃的老板?“补充”的感觉更令h泄气了?/span>
Z在受到时间重压的时候不是工作得更好Q只是工作得更快?/span>
在一些日本公司,特别是日立Y件和富士通的一些部门,目团队在提交他们认未准备好的品上有行之有效的否决权。甚至不论客h否乐意接受低于质量标准的产品Q团队可以坚持等到达C自己的品标准时才提交品。当焉目经理们要承受同L压力Q他们正在被催促着提交东西、Q何东西,马上pQ但是够的质量文化已经建立了,因此q些日本l理懂得道理而不会威g的部下去满于更低的质量?/span>
【h在江湖】我qx也Lq种Q不要给E序员太多压力,永远都有quick and dirty的approach,别把大家逼到q个份儿?
与经理甚至不询问他们便做Z计的情况相比较,如果他们能自己做Z计,E序员的生力似乎更高一炏V如果经理和E序员一起做估计Q则l果們֐于以上两U情况之间?/span>
当他们调查了预先没有做Q何估计的24个项目的生力时Q劳伦斯和杰弗雷QJeffery-LawrenceQ在1985q发表的研究报告中最令h惊讶的部分是在报告的最后。这些项目的生力都q远胜过了其它所有的目?/span>
【h在江湖】对于有责Q心的人确实如此,q好我遇到的大多数都属于此类。但是假如有的h天生没有责dQ怎么办涅Q我不是父Q改变不了h的灵。你要能改变人的灵魂Q还用监狱干什么?br />
l理的职能不是强qh们工作,而是让h们有可能工作?/span>
【h在江湖】严重同意。反寚wU组l一堆activity风格的管理,一天开仨会Q尽是碎片时间踏不下心来Q一整天啥都q不了。一直努力创造条Ӟ量节省队员的时_让大家心无旁骛地工作。花很多旉帮助队员trouble shooting, 注重分n实用的tipsqȝ文档Q重视优化开发环境,曄独创性地把jetty引入团队的开发环境中Q方便程序员的日常工作。跟UI designer沟通,甌icon, 应对l外同事基本都是自己做,Z能让大家受打扰Q同事在忙的时候,我甚臛_帮他收快递!我分明是搞家政服务的Q太善良了,自己都感动了?br />
吉尔伯定律向你许诺度量不是免费的或者甚至不是廉LQ而且它可能不是完的Q只是比没有什么东西更好?/span>
【h在江湖】这是时常思考的问题Q只是一直没有明答案。度量确实很花成本,不舍得这成本Ҏ盲目Q大量花成本又确实可惜,q在探烦?..
最有h值的人开始意识到不是因ؓ他们的真正hD受赏识Q意识到他们的工作A献还不如剪短的头发和领带重要Q他们可能会d?/span>
【h在江湖】团队里有个兄弟Q妈的,天天q到一个半时Q上班也l常消失不见Q但是技术工作很负责Q干zd也确实猛Q团队需要他发飙的时候能q到下半夜。不x压他的热情。麻烦在于,会有虑我的老板会不会质疑我不约束纪律不作ؓ。倒是不担心这LZ影响氛围Q没Z攀比,即某天有h跟他攀比,我会_你能把工作做成这个样子你U律也随便!
如果你ؓ“拯救斯奈达特基金会”?“W一菲伯|尼圣U洁教堂”或其它公司工作,q些公司的职员因为共同的信念而结合在一P那么你可能可以依靠职员在公司目标上的亲合力。否则忘C合力一事。面对利润的快速增长,执行委员会热情高涨。但是对于位于底层的言Q这个同L目标只是个小的土豆而已?/span>
【h在江湖】协调个人目标和团队目标是很核心的工作,E序员的工作热情伤不赗?br />
一个团队的目的不是辑ֈ目标而是向目标看齐?/span>
【h在江湖】这是我认ؓ整本书里Q对自己启发最大的一句话Q?br />
你不能防止手下的无能。如果你的员工不能胜L头的工作Q你会p|。当Ӟ如果你的Z胜Q工作Q你可能会用Ch。但是一旦你已经军_与一个既定小l一起工? 你最好的{略是相信他们。除此之外,采取M保证成功的防范措施只会事情更糟?/span>
如果你是l理Q当然你正在想你的判断比你的手下更好Q你有更多的l验Q而且你可能有比他们更的水准;正因为如此,你才成ؓl理的。如果不插入你的个h判断Q在目的Q何一点上Q你的h都更有可能出差错。那么该做什么?让他们出一 些差错。这q不意味着你在很偶然的情况下不能撤销一个决定或者给目下特别的指o。但是如果员工终于相信不允许他们自n出差错,那么你不信Q他们的消息就会显而易见地传开来。除此之外,再也没有其他消息更会抑制团队形成了?/span> 
【h在江湖】风险当焉要控Ӟȝ队员犯错对他自己对团队都不好。看C面这D话Q一下就惌v曄在项目管理培训课上,学到一个技巧,"让他人感觉主意是他想到的"。沟通工作的时候,量循@善诱或许是比较两全的办法?br />
共同ҎQ好的经理会为团队提供频J而又Ҏ一起实现成功的Z。这些机会可以是很小的、v向导作用的子ҎQ或CQ暗C等Q可以是使团队快速养成一起去获得成功习惯的Q何东ѝ最好的成功是没有明昄理的成功Q在q样的成功中Q团队工作v来如同一个亲切的同事集体?/span>
【h在江湖】team building的时候成功消灭桌上所有的菜?团队每个季度有约1.7k team building预算Q我的目标是一分不剩全花光Q相对team building的小钱,团队玩儿舒服了把工作做好Q多卖几个license才对公司赚钱最重要。那U算计给公司省team buildingq我觉得是娘们儿组?br />
以下是一些們֐于生团队自杀性负作用的管理行为:
* q薪或W效考评
* 目标理QMBOQ?/span>
* 褒奖完成d的某些员?/span>
* 奖励、奖金、红利与l效挂钩
* 用几乎Q何Ş式测量W?/span>
  但在q停一下,q些正是那些l理们花贚w么多旉甚至他们的大多数旉做的事情吗?悲哀得很Q正是。而且q些行ؓ很可能就是团队自杀行ؓ?/span>
  爱d华兹·戴明QW. Edwards DemingQ在1982q出版的书《走出危机》中Q他提出了他的广为遵循的“十四?#8221;。其中第12B点几乎被看成后R之鉴的反思?/span>
  拆除那些会剥夺管理h员和工程人员为技艺感到骄傲的权利的障。这(其Q意味着废除q薪、W效考评和目标管理?/span>
  即认同戴明观点的hQ也在这点上深受困扰。他们也只剩下喘气的功夫了。[p37]到底我们应该做些什么?
  戴明的观Ҏ目标理QMBOQ或相类似的行ؓ是在理上的一U逃避。用单的外来的激励因素去刺激l效Q经理们LZ们自己开q责,例如在投资,直接的h员动?Q周到的团队构成Qh员的保留Q以及将来的工作E序的分析和再设计等更难的事情上?/span>
  我们q儿的观点说得比较窄QQ何不同程度地奖励团队成员的行为可能会促成竞争。经理们需要采取措施减或抉|q种影响?/span>
【h在江湖】同意,团队氛围好Q越要无治。但是当团队失去q的时候,我觉得这些手D很N免?br />
每个地方的公叔R有攀LCMM{的压力。明天他们会执著地追求现行等U向更高U别的跃q,或别的什么。这是黑暗面,因ؓ它会诱导低风险的一味保q_的行为,所以这些项目是低利润的?/span>
【h在江湖】这是个很好的观炏V技术管理需要对技术有insightQ管理者需要理解那些值得冒的风险q且淡然承受难以避免的失败?br />
威廉·布瑞奇(William BridgesQ在《管理变革》(Managing TransitionsQ一书中我们从不要去贬低我们的旧Ҏ。相反,我们需要把旧方法作为帮助生改变的一条途径来庆。例如:
  “朋友们,核心囑ŞpȝQCGSQ中的中心导航系l已l运行了14q。我们估计它已经完美地处理了1000000ơv飞和降落。硬件^台在技术上已经陈旧了,有些新的遥感技术我们可以利用。现在我们有Z重新设计和重新徏立整个系l。我们需要你们和你们q些q来在核心图形系l方面的成功l验上获得的专门技术来帮助我们成功?#8221;
【h在江湖】Nice tips.


人在江湖 2012-11-29 23:10 发表评论
]]>自录performance tuning, jvm, visualvm视频(更新Q已发送视频至优酷)http://www.tkk7.com/vcycyv/archive/2012/08/24/386164.html人在江湖人在江湖Fri, 24 Aug 2012 00:30:00 GMThttp://www.tkk7.com/vcycyv/archive/2012/08/24/386164.htmlhttp://www.tkk7.com/vcycyv/comments/386164.htmlhttp://www.tkk7.com/vcycyv/archive/2012/08/24/386164.html#Feedback12http://www.tkk7.com/vcycyv/comments/commentRss/386164.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/386164.htmlvisualvm是Sun JDK自带的Java profiling的工兗自己录了一个视?35分钟Q简单的介绍了performance tuning的lifecycle, jvm的一点点理论Q以及visualvm的操作:定位死锁Q查看out of memory, 定位q行~慢的method.

 

视频文g在:https://docs.google.com/open?id=0B22ayLe4teeYQm56QnhaWkUxM2s

ppt在:https://docs.google.com/open?id=0B22ayLe4teeYdEhsMkItTk16UDg

有h说google drive上不Ҏ下蝲大文Ӟ压羃一下,但是我不太会用视频压~YӞ压过之后效果不好了,倒是也能就着看:

https://docs.google.com/open?id=0B22ayLe4teeYY1pvNlVtSWdUOVU

我的声音像梦游一Phttp://v.youku.com/v_show/id_XNDQ1Nzk0NDYw.html
 

 



人在江湖 2012-08-24 08:30 发表评论
]]>
ȝJava的Genericshttp://www.tkk7.com/vcycyv/archive/2012/08/20/385803.html人在江湖人在江湖Mon, 20 Aug 2012 00:13:00 GMThttp://www.tkk7.com/vcycyv/archive/2012/08/20/385803.htmlhttp://www.tkk7.com/vcycyv/comments/385803.htmlhttp://www.tkk7.com/vcycyv/archive/2012/08/20/385803.html#Feedback0http://www.tkk7.com/vcycyv/comments/commentRss/385803.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/385803.html阅读全文

人在江湖 2012-08-20 08:13 发表评论
]]>
四则http://www.tkk7.com/vcycyv/archive/2012/08/19/385769.html人在江湖人在江湖Sun, 19 Aug 2012 07:04:00 GMThttp://www.tkk7.com/vcycyv/archive/2012/08/19/385769.htmlhttp://www.tkk7.com/vcycyv/comments/385769.htmlhttp://www.tkk7.com/vcycyv/archive/2012/08/19/385769.html#Feedback1http://www.tkk7.com/vcycyv/comments/commentRss/385769.htmlhttp://www.tkk7.com/vcycyv/services/trackbacks/385769.html四段对话都发生在q个周末Q?/p>

1. 老婆_她工作压力挺大的。我_我来看孩子,你快d吧。老婆_她不去,她压力最大的地方是不知道该忙什?#8230;.

2. 我拍打儿子逗他玩儿Q老婆不喜Ƣ我q么逗儿子,威胁我说Q你再打我儿子,我就打你儿子了啊。我Q?#8230;…

3. 老婆爱抚儿子的头Q不无得意地向我炫耀Q?#8220;q小家伙是从我肚子里生出来的Q你能体会么Q?#8221;Q我回答Q?#8220;q小家伙是我你肚子里的Q你能体会么Q?#8221;
4. 老婆把腿伸给我,_"帮我抻长点儿"Q我装模作样d下,Ҏ另一条腿也טq来Q?q条也抻抅R?



人在江湖 2012-08-19 15:04 发表评论
]]>
վ֩ģ壺 ˾Ʒձר | ؼaa**ëƬѹۿ| þþƷѵӰ| ҹľƷ| ɫ͵͵| ɱƬav| ഺɫУ԰С˵| պŷëƬƵ| þúݺݰۺӰԺ | ޹ģƷһ| ŮǿƨͰˬ| ӰԺһ| þ99ྫƷѹۿ| þ޾Ʒۺ| ޻ɫѹۿ| ۺɫ| þþþŮۺ | 뾫Ʒ| ʮ˽߹ۿƵ| ޹Ʒ۲ӰԺ߹ۿ | þþƷav٤| Ѵվ߹| rhгijվ| ޾Ʒþþþ| Ƶ| 㽶97Ƶ| У԰ɫС˵| 벻Ƶ߹ۿ| ĻƵ| ߲| ԻȫƵվ | һ߲| ۺר| 99ȾƷѹۿ| Ļþ| һַ| Ů18ëƬˮѿ| 69ƵƬ| ѹ18߹ۿ| ޳aƬ߹| ޸岻߹ۿ|