??xml version="1.0" encoding="utf-8" standalone="yes"?>
There are 2 files in the zip file:
1. google.xml: The original google search plugin
2. google-oracle.xml: The search plugin that only search the oracle.com web site.
Usage
1. Put the google-oracle.xml in your personal firefox searchplugin folder. In windows firefox version 4 it is {FIREFOX_HOME}\distribution\searchplugins
2. Restart the firefox. Done
Click here to download the search plugins
It is only available for one session.
using the below command before you run your query
For more information, refer to the page http://www.oracle.com/technology/products/database/sql_developer/howtos/howto_policy_date_formats.html
今天我无意中发现原来创徏一个个人用的SVN Repository是那么的方便。TortoiseSvnq个乌龟你一定很熟悉Q它本n有一个创建本地Repository的功能,我以前没有注意到q,不知道你用过没有。我用的版本?1.4.4Q在它的帮助的Chapter4里就提到了这个功能。简单来说操作步骤如?/p>
W一步,创徏一个空白目录,如F:/SVNRepositorys/sample/sampleRepository
W二步,右键点击该目录,在右键菜单中选择TortoiseSVN->Create repository here...。如下图所C?br>
我原先ؓ自己一些文件的版本理做过很多的麻烦事Q比如搭建CVSNT啊,学习SVN Server的配|啊。但是没有想到可以这么简单的可以达到自q目的了。这件事情给了我一个启发:熟练掌握你手里已有的工具Q你会发C其实已经拥有很多?br>
以上两行厉害吧?其实是使用了反引号而已Q注意pwd边上的那两撇不是单引P是键盘左上角1边上的那个键?/p>
下面是一点相关的资料
来源?a >http://hi.baidu.com/lzwwqk/blog/item/40a3f41bb4f8b3fbae513358.html
反引?`
反引P`Q这个字W所对应的键一般位于键盘的左上角,不要其同单引号Q’)h。反引号括v来的字符串被shell解释为命令行Q在执行Ӟshell首先执行该命令行Qƈ以它的标准输出结果取代整个反引号Q包括两个反引号Q部分。例如:
$ pwd
/home/xyz
$ string=”current directory is `pwd`?/font>
$ echo $string
current directour is /home/xyz
$
shell执行echo命oӞ首先执行`pwd`中的命opwdQƈ输出结?home/xyz取代`pwd`q部分,最后输出替换后的整个结果?/font>
利用反引Lq种功能可以q行命o|换Q即把反引号括v来的执行l果赋值给指定变量。例如:
$ today=`date`
$ echo Today is $today
Today is Mon Apr 15 16:20:13 CST 1999
$
反引可可以嵌套使用。但需注意Q嵌套用时内层的反引号必须用反斜线Q\Q将其{义。例如:
$ abc=`echo The number of users is \`who| wc-l\``
$ echo $abc
The number of users is 5
$
在反引号之间的命令行中也可以使用shell的特D字W。Shell为得到``中命令的l果Q它实际上要L行``中指定的命o。执行时Q命令中的特D字W,?Q”,?{又具有特D含义,q且``所包含的可以是M一个合法的Shell命oQ如Q?/font>
$ ls
note readme.txt Notice Unix.dir
$ TestStringQ”`echo $HOME ` ` ls [nN]*`?/font>
$ echo $TestString
/home/yxz note Notice
ssh-keygen -d调用q程
putty使用密钥d的方?/strong>
SCP使用密钥d的命?br />scp -i .ssh/id_dsa ./tmp/test.tgz abc@192.168.0.5:/tmp
putty是一个常用的ssh客户端,通过使用密钥dQ就可以不用每次d的时候都使用密码了?、用puttygen.exeE序Q先load上面生成的id_dsa文gQ然后Save private key生成一个ppk文g?br />2、打开puttyQ在Connection->SSH->Auth中选中该ppk文g可以了?/p>
其中-i .ssh/id_dsa用于指定使用id_dsa做ؓU钥
断言优先
写Case的时候,一开始就写断aQ从试完成时能通过的断a开始写?/p>
试数据
试数据要用容易让人理解的数据Q不要ؓ了编排数据而编排数?br />不要用同一个常量来表达多种一丝。另外也可以使用真实数据q行试?/p>
量让测试的行ؓ和数据容易理解,比如不用常量,而是直接使用数字。在assert中加入断a要测试的目的的文字说?/p>
26 不可q行状?/strong>
启动试(Starter Test)
从测试某个实质上不做M工作的操作开始,q样的测试一般能很快工作。而一个做实际工作的功能的试可能需要等你解军_多问题,比如Q这个操作隶属于哪里Q正的输入是什么?对应的正输出是什么?{等。结果是光期无法通过?/p>
回归试(Regression Test)
对于一个错误情况,~写一个针对该错误的,会出错的Q尽可能的试?/p>
27试模式
模拟对象(Mock Object)
如何试一个依赖于昂贵的且复杂的资源的对象Q创Z个这些资源的模拟版本?/p>
自分?self Shunt)
如何试对象间是否正怺互?让测试对象于试用例而不是期望的对象q行交互?br />需要让试用例cd现所要交互的cȝ接口。从而进行测试所实现的方法会被正的调用?/p>
日志字符?Log String)
如何才能试使消息调用顺序是正确的?日志保存在字符串中Q当调用一个消息时Q就向字W串Nq加相应的信息?/p>
清扫试死角(Crash Test Dummy)
如何试C大可能被调用的错误代码呢Q用一U特D的对象调用它,q个对象抛出一个异常而不做Q何实际工作。比如实C个匿名File子类Q只实现其createNewFileҎQ方法中抛出一个异常,通过q种方式来测试文件系l满了的情况?/p>
不完整测?Broken Test)
留下半截句子或者一个没有通过的测试用例可以保证你d代码一D|间之后依然能较快的回忆v原先的想法?/p>
提交前保证所有测试运行通过
当你在团队中变成时如何结束一D늼码工作?让所有测试运行v来?br />注释掉一些测试代码ɋ试套g通过是要严格止的?/p>
28可运行模?/strong>
三角?Triangulation)
怎样可以更适当地利用测试推动抽象呢Q只有当你有两个或两个以上的例子Ӟ你才能进行抽象。用两个针对同一个测试目标的试例子Q或断言Q,在此基础上对该测试目标的实现q行抽象q实现?/p>
显明实现(Obvious Implementation)
直接实现单的操作?/p>
从一到多(One to Many)
怎样实现一个作用于对象集合体的操作呢?首先在非集合体中实现Q然后之作用于集合体?/p>
32 掌握TDD
怎样知道自己的测试没有疏漏呢Q?br />一些预C着设计存在q缺L特征Q?br />q长的设|代?/span>——如果ؓ了一个简单的断言Q需要花费上百行代码创徏对象Q那么肯定有哪儿不对劲儿。对象太大,需要分剌Ӏ?br />冗余的设|代?/span>——如果你无法为公׃码找C个存攑֮的公共场所的话Q那么就表明有太多的对象q于紧密地联pd一起了?br />q长的测试运行时?/span>——这h试不会被l常q行Q同时也暗示着对系l的Ҏ面面q行试是困隄。这U测试困难是一U设计问题,q且需要在设计时就被提出来?br />脆弱的测?/span>——意外中断的试说明应用的某一部分Zh意料地存在对另一部分的媄响。你需要对pȝq行设计Q要么打破联p,要么两部分合ƈQ直到这U媄响消׃ؓ止?/p> 你需要多反馈? 什么时候应该删除测试? 如何中途{向测试驱动开发?
试驱动的开发对试的观点就是注重实效。在试驱动开发中Q测试从某种意义上说是一U达到目的的手段——达到充满自信地~写代码的目的。如果我们对实现有充分了解,不用试p拥有自信的话Q那么就没有必要~写试了?/p>
如果删除一个测试降低了你对整个pȝ功能的信心,那么׃要删除?br />如果你有两个试Q走的是同一条\Q但对读者来说讲q的是不同的情Ş的话Q那么就应该原封不动的保留?br />如果有两个测试,它们p信和沟通而言都是冗余的,那么删除其中用处最的那个?/p>
首先限定修改的范围。对于该范围外的可以化的地方先不动手?br />其次Q必L破测试与重构之间的僵局。可以先通过其他方式获取反馈Q如pȝ试Q然后用这些反馈进行修攏V通过q种方式逐渐的让一直在改变的部分{向测试驱动?/p>
Step-by-step instructions:
javahl.jar
and svnClientAdapter.jar
(libraries distirbuted with the svnant) from your Ant classpath (ANT_HOME/lib/ directory).javasvn.jar
, javasvn-javahl.jar
and svnClientAdapter-0.9.32.jar
files on your Ant classpath (ANT_HOME/lib/ directory).After performing the steps above svnant will use JavaSVN instead of JavaHL bindings.
If you have any questions regarding JavaSVN, would like to report a bug or contribute a patch, please write to support@tmatesoft.com
Even when validation is turned off, an XML parser will by default load the external DTD file in order to parse the DTD for external entity declarations. Xerces has a feature to turn off this behavior named "http://apache.org/xml/features/nonvalidating/load-external-dtd" and if you know you're using Xerces you can set this feature on the builder.
builder.setFeature(
"http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
If you're using another parser like Crimson, your best bet is to set up an EntityResolver that resolves the DTD without actually reading the separate file.
import org.xml.sax.*;
import java.io.*;
public class NoOpEntityResolver implements EntityResolver {
public InputSource resolveEntity(String publicId, String systemId) {
return new InputSource(new StringBufferInputStream(""));
}
}
Then in the builder...
builder.setEntityResolver(new NoOpEntityResolver());
There is a downside to this approach. Any entities in the document will be resolved to the empty string, and will effectively disappear. If your document has entities, you need to setExpandEntities(false) code and ensure the EntityResolver only suppresses the DocType.