哦,
不好意思,
失误,用struts2+hibernate3.2+spring2.5架构的项目,
对于异常的处理各位有什么心得体会或建议等等, 

解决方案 »

  1.   

    SSH2 
    现在开始说明如何在 UNIX 下使用 SSH 连线。此教材谈的是欧洲 SSH Communications Security 公司出版的 SSH2 软体套件,而非 OpenSSH。SSH2 虽然是一个商业组织生产的软体,但仍是开放性的软体。 SSH2 和 OpenSSH 理论上符合一样的协定规格,但是两个不同的程式,请读者留意。 
    以下,我们用 SSH 代表 SSH2。 首先,请先确定你所使用的主机和要连线的主机都有安装 SSH 2.4.0 以上的版本,如果任何一端没有安装,那麼当然无法使用 SSH 连线。 
    在本地端 (Local): 
    下指令 
    ssh -v 
    如果你目前使用的主机有安装 SSH,视窗会出现以下的回应: 
    ssh: SSH Secure Shell x.x.x (non-commercial version) on sparc-sun-solaris2.6 
    其中 x.x.x 就是 SSH 的版本, 2.4.0 以下的版本虽然可以连线,但可能会有安全上的漏洞。 
    要是视窗出现类似下面的回应: 
    OpenSSH_3.4p1 FreeBSD-20020702, SSH protocols 1.5/2.0, OpenSSL 0x0090601f 
    那表示你目前使用的主机用的是 Opne SSH,那只好请你自己去看说明文件[输入 man ssh ]。 
    如果视窗出现下面的回应: 
    ssh: Command not found. 
    表示这台主机根本没有安装 SSH 或 OpenSSH。 
    远方主机 (Remote): 
    下指令 
    telnet HostName 22 
    在这里 HostName 指的是远方主机的位址。 
    如果出现类似下面的回应: 
    Trying 140.115.25.6... 
    Connected to 140.115.25.6. 
    Escape character is '^]'. 
    SSH-2.0-x.x.x SSH Secure Shell (non-commercial) 表示远方主机安装了 SSH x.x.x 版。 
    要跳回去,请按 Ctrl+],当提示符号变成 telnet> 时下指令 quit 就可以了。 
    要是出现下面的回应: 
    Trying 140.115.25.4... 
    Connected to 140.115.25.4. 
    Escape character is '^]'. 
    SSH-1.99-OpenSSH_3.4p1 FreeBSD-20020702 请注意最后一行,这表示远方主机所安装的是 OpenSSH,你恐怕无法用 SSH 和 OpenSSH 互相沟通。跳回去的方法和 SSH 的一样,所以就不重复了。 
    要是出现下面的回应: 
    Trying 140.115.26.32... 
    telnet: Unable to connect to remote host: Connection refused 
    表示远方主机既没有安装 SSH,也没有安装 OpenSSH。 
    如果确认没问题,那我们就一步一步来:(以下的说明,请特别注意大小写) 一、制作公钥和私钥 
    请下指令 
    ssh-keygen2 name 
    在此 name 是由使用者自行选择的钥匙名字。输入后,视窗会出现以下回应: 
    Generating 1024-bit dsa key pair 
    请等待一段时间,此时程式正在制作钥匙,钥匙完成后会出现下面的讯息: 
    Key generated. 
    1024-bit dsa, liyl@wangwei, Wed Jul 17 2002 06:57:08 
    Passphrase : 
    程式会要求使用者输入通行码以避免私钥被人盗用。当你输入通行码后,视窗会出现以下回应: 
    Again : 
    要求你再输入一次通行码以确认你刚刚并没有打错。最后会出现下面的讯息: 
    Private key saved to name 
    Public key saved to name.pub 这段讯息表示程式把私钥用 name 作档名储存起来,把公钥用 name.pub 作为档名储存起来。 二、使用钥匙 
    钥匙做好以后,放在你自己的目录下的 .ssh2/ 下,然后你要写一个档案,命名为 identification,放在 .ssh2/ 下,把下面这行文字加进去: 
    IdKey name 
    name 是你的放私钥的档案的名字。这麼一来钥匙便算是开始启用了。 三、交换公钥 
    钥匙完成以后,就必须上传到远方主机中自己的目录下的 .ssh2/ 资料夹中,另一方面,你也必须把远方主机的公钥放到自己这边的 .ssh2/ 下。下指令 
    sftp UserName@HostName 
    这里 HostName 是远方主机的位址, UserName 则是你自己的帐号。 
    如果你是第一次用 SSH 的程式登入这一台主机,那麼主机会问你要不要把属於这台主机的钥匙[ HostKey ]记下来,请视情况回答 yes 或 no [回答 y 或 n 是没用的],大部分情况应该都是回答 yes 的。 
    接著应该会要求你输入帐号的通行码,登入之后,操作方式和 ftp 一样,请照之前的说明交换公钥,然后登出回到原来工作的主机。 
    接著要再编辑另一个档案 authorization,放在 .ssh2/ 下,加入这一行文字: 
    Key PublicKey.pub 
    PublicKey.pub 是你从其他地方抓下来的公钥的档名。如此一来,你这边的准备工作就算完成了。以后如果你从其他地方抓了新的公钥,只要再加上同样的文字就可以了。像这样: 
    Key abc.pub 
    Key def.pub 
    Key jklljl.pub 这样表示你从三个不同的远方主机抓到了三个公钥:abc、def、jklljl, SSH 会自行判断什麼时候要用哪支公钥。 四、登入 
    要使用 ssh 登入,下指令 
    ssh -l UserName HostName 
    其中 HostName 是远方主机的位址, UserName 是你的帐号。 
    如果远方主机中的 .ssh2/authorization 还没有修该的话,程式应该会向你要通行码,此时你的通行码是在加密状态。登入后,同样编辑 authorization,加入 
    Key PublicKey.pub 
    这里的 PublicKey.pub 则是你上传到这台主机的公钥的档名。 
    再来先登出,再用 SSH 登入,如果看到类似下面的讯息: 
    Passphrase for key "/home/math88/liyl/.ssh2/bgs" with comment "1024-bit dsa, li: 
    这就代表程式要求你输入私钥的通行码[当然,如果你没有设定通行码,那你就直接登入,不用任何通行码],输入以后,程式就登入远方主机,此时所有在网路上互传的讯息都是加密的。来源:http://zhidao.baidu.com/question/6995765.html