??xml version="1.0" encoding="utf-8" standalone="yes"?>日韩精品无码一区二区三区,亚洲精品中文字幕乱码三区,97超碰成人http://www.aygfsteel.com/shadowzhang/E序人生zh-cnTue, 01 Jul 2025 16:10:21 GMTTue, 01 Jul 2025 16:10:21 GMT60- IE 不重新发送信?无法h|页 重试 讨厌H体的解?/title>http://www.aygfsteel.com/shadowzhang/archive/2006/03/22/36788.htmlE序人生E序人生Wed, 22 Mar 2006 02:32:00 GMThttp://www.aygfsteel.com/shadowzhang/archive/2006/03/22/36788.htmlhttp://www.aygfsteel.com/shadowzhang/comments/36788.htmlhttp://www.aygfsteel.com/shadowzhang/archive/2006/03/22/36788.html#Feedback1http://www.aygfsteel.com/shadowzhang/comments/commentRss/36788.htmlhttp://www.aygfsteel.com/shadowzhang/services/trackbacks/36788.html如果惛_C下从别的面提交q来面Q有时会出现讨厌
的“不重新发送信息,则无法刷新网”,自己很郁闗?br />从别人的blog上查C解决ҎQ自p了一下,果然灵验?br />讨厌的重试窗体不见了?br /> list.jsp
<form method="POST" action="edit.do">
......
提交?/p>
edit.do-->edit.jsp
在此面上若使用 window.location.reload() 则会出现讨厌的重试窗体?/p>
解决ҎQ?br /> 两个步骤Q?br /> 1.list.jsp 的“POST?改ؓ“GET?br /> <form method="GET" action="edit.do">
2.调?window.location.reload()的地斚w定向一?br /> window.location.href =window.location.href;
window.location.href.reload();
只用W二步不用第一步,虽然也能实现面的刷斎ͼ但是若从list.jsp上提交过来一些参敎ͼq些参数׃丢失了?br /> 如果没有用到提交q来的参数的话,W二步就可以了?br /> 通过W一步将post改ؓgetQ刷新页面后参数不会丢失Q但是还有一点小问题Q参C跑到地址栏里Q但是暇不掩瑜?/p>
window.opener.location.reload();出现问题时同LҎ解决之。 ?

]]>- [转蝲] tomcat下https ssl 双向认证http://www.aygfsteel.com/shadowzhang/archive/2006/03/18/35933.htmlE序人生E序人生Sat, 18 Mar 2006 06:23:00 GMThttp://www.aygfsteel.com/shadowzhang/archive/2006/03/18/35933.htmlhttp://www.aygfsteel.com/shadowzhang/comments/35933.htmlhttp://www.aygfsteel.com/shadowzhang/archive/2006/03/18/35933.html#Feedback0http://www.aygfsteel.com/shadowzhang/comments/commentRss/35933.htmlhttp://www.aygfsteel.com/shadowzhang/services/trackbacks/35933.html一、配|环?br />1.1 Tomcat?br />Tomcat是Apache Jakarta的子目之一Q作Z个优U的开源web应用服务器,全面支持jsp1.2以及servlet2.3规范。因其技术先q、性能E_Q而且免费Q因而深受Java爱好者的喜爱q得C部分软g开发商的认可,成ؓ目前比较行的web应用服务器?br />1.2 SSL(Server Socket Layer)?br />在网l上信息在源-宿的传递过E中会经q其它的计算机。一般情况下Q中间的计算Z会监听\q的信息。但在用网上银行或者进行信用卡交易的时候有可能被监视,从而导致个人隐U的泄露。由于Internet和Intranet体系l构的原因,L某些够读取ƈ替换用户发出的信息。随着|上支付的不断发展,Z对信息安全的要求来高。因此Netscape公司提出了SSL协议Q旨在达到在开攄l?Internet)上安全保密地传输信息的目的,q种协议在WEB上获得了q泛的应用?之后IETF(www.ietf.org)对SSL作了标准化,即RFC2246Qƈ其UCؓTLSQTransport Layer SecurityQ,从技术上ԌTLS1.0与SSL3.0的差别非常微?br />1.3 SSL工作原理
SSL协议使用不对U加密技术实C话双方之间信息的安全传递。可以实C息传递的保密性、完整性,q且会话双方能鉴别对方n份。不同于常用的http协议Q我们在与网站徏立SSL安全q接时用https协议Q即采用https://ip:port/的方式来讉K?br />当我们与一个网站徏立httpsq接Ӟ我们的浏览器与Web Server之间要经q一个握手的q程来完成n份鉴定与密钥交换Q从而徏立安全连接。具体过E如下:
1. 用户览器将其SSL版本受加密设|参数、与session有关的数据以及其它一些必要信息发送到服务器?
2. 服务器将其SSL版本受加密设|参数、与session有关的数据以及其它一些必要信息发送给览器,同时发给览器的q有服务器的证书。如果配|服务器的SSL需要验证用戯n份,q要发出h要求览器提供用戯书?
3. 客户端检查服务器证书Q如果检查失败,提示不能建立SSLq接。如果成功,那么l箋?
4. 客户端浏览器为本ơ会话生成pre-master secretQƈ其用服务器公钥加密后发送给服务器?
5. 如果服务器要求鉴别客戯n份,客户端还要再对另外一些数据签名后q将其与客户端证书一起发送给服务器?
6. 如果服务器要求鉴别客戯n份,则检查签|客戯书的CA是否可信。如果不在信d表中Q结束本ơ会话。如果检查通过Q服务器用自qU钥解密收到的pre-master secretQƈ用它通过某些法生成本次会话的master secret?
7. 客户端与服务器均使用此master secret生成本次会话的会话密?对称密钥)。在双方SSL握手l束后传递Q何消息均使用此会话密钥。这样做的主要原因是对称加密比非对称加密的运量低一个数量以上Q能够显著提高双方会话时的运速度?
8. 客户端通知服务器此后发送的消息都用这个会话密钥进行加密。ƈ通知服务器客L已经完成本次SSL握手?
9. 服务器通知客户端此后发送的消息都用这个会话密钥进行加密。ƈ通知客户端服务器已经完成本次SSL握手?
10. 本次握手q程l束Q会话已l徏立。双方用同一个会话密钥分别对发送以及接受的信息q行加、解密?br />1.4 所需软g?br />• Tomcat 4.0.6
用途:Web Server?br />下蝲Q?a target="_blank">http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.0.6/bin/jakarta-tomcat-4.0.6.exe
• JDK1.4.1_02
其中已经包含了JSSE的最新版本?br />• JSSE 1.0.3_01
用途:用来产生Tocmcat使用的密钥对(keystore)?br />下蝲Q?http://java.sun.com/products/jsse/
• Openssl 0.9.7b
用途:用来产生CA证书、签名ƈ生成IE可导入的PKCS#12格式U钥?br />下蝲Q?a target="_blank">http://www.openssl.org/
1.5 软g包的安装
• Tomcat 4.0.6安装Q略Q?br />• JSSE 1.0.3_01安装
1. 定有JDK1.2以上版本(java -version)Q?br />2. 下蝲JSSE (注意QJDK1.4已经自带JSSE了,不需?Q一般来说都只能download全球版本Q还有个版本是美?加拿大版本,加密位数没有限制Q;
3. 安装JSSEQ主要是把JSSE包内的lib/*.jar拯到JAVA_HOME/jre/lib/ext/下,q且加入到CLASSPATH中;
4. ~辑JAVA_HOME/jre/lib/security/java.security文gQ主要是dQ?br /> security.provider.1=sun.security.provider.Sun security.provider.2=com.sun.net.ssl.internal.ssl.Provider
5. 定你的pȝ有下面文件的其中一个:
1)JAVA_HOME/jre/lib/security/jssecacerts或?
2)JAVA_HOME/jre/lib/security/cacerts
你的pȝ已经安装好了JSSEQ下面就是针对不同的server有不同的配置了?br />• Openssl 0.9.7b安装
请阅d解压~文档中的INSTALL文g安装openssl?br />或者可以参考文件“openssl在windowsq_的安装编?txt”?br />二、配|步?br />2.1 建立自己的CA证书Q假设openssl安装Cc:\opensslQ?br />1Q在适当的地方徏立自qCA目录Q例如:ca
2. 我的电脑-〉右?〉属?〉高U?〉环境变?〉新?>administrator用户变量-〉变量名QOPENSSL_CONF->变量|C:\openssl\ssl\openssl.cnf
2Q生成CA密钥
openssl genrsa -out ca/ca-key.pem 1024
genrsa [产生密钥命o] –out[密钥文g输出路径] 1024 [密钥位数]
3Q生成待{的证?br />openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem
req[产生证书命o]-new[新生成]-out[证书文g输出路径]-key[U钥文g路径]
4Q用CAU钥自签?br />openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days 365
x509[{֏x509证书命o]-req[输入待签发证书]-in[输入待签发证书文件\径]-out[产生x509证书文g输出路径]-signkey[自签发密钥文件\径]-days[证书有效期]–CA[{֏跟证书]-Cakey[根证书密钥文件] ?CAcreateserial[创徏序列号]
2.2 配置Tomcat 4.X
2.2.1建立服务器证?br />[注] 在本文中用符?%JDK_HOME%"来表CJDK的安装位|,用符?%TCAT_HOME%" 表示Tomcat的安装位|?br />1.建立工作目录
在目录下建立自己的server目录Q例如:server
2.生成server密钥?br />C:\j2sdk1.4.1_01\bin\keytool -genkey -alias tomcat -validity 365 -keyalg RSA -keysize 1024 -keystore server/server_keystore
-genkey[产生密钥对]-alias[密钥对别名]-validity[密钥有效期]-keyalg[密钥法参数]-keysize[密钥位数]-keypass[密钥保护密码]-storepass[存储密码]-dname[别名相关附加信息]-keystore[密钥存储文g路径]
[注] -alias后的tomcat是密钥对的名字可替换己需要的名字Q?br />-keypass?storepass后的密码Z护密码必?位;
其中cn是服务器的名字一定要与WEB服务器中讄的一栗?br />3.生成待签名证?br />C:\j2sdk1.4.1_01\bin\keytool -certreq -alias tomcat -sigalg MD5withRSA -file server/server.csr -keypass allcom -keystore server/server_keystore -storepass allcom
-certreq[产生待签名证书]-alias[证书别名]-sigalg[证书法参数]-file [产生文g输出路径]-keypass[密钥保护密码]-keystore[存储文g路径]-storepass[存储密码]
4.拯C:\openssl\apps\ca-cert.srl文g到ca目录
5.用CAU钥{
openssl x509 -req -in server/server.csr -out server/server-cert.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -days 365
2.2.2CA根证书和服务器证书导入Tomcat
1. 导入CA根证?br />C:\j2sdk1.4.1_01\bin\keytool -import -v -trustcacerts -storepass allcom -alias allcom_ca_root -file ca/ca-cert.pem -keystore server/cacerts
-import[导入命o] -v–trustcacerts[导入信Q证书] –storepass[存储密码]-alias[证书别名]-file[证书文g路径]-keystore[导入文g路径]-alias为CA根证书的别名?br />2.拯cacerts文g到C:\j2sdk1.4.1_01\jre\lib\security目录
3.导入服务器证?br />C:\j2sdk1.4.1_01\bin\keytool -import -v -trustcacerts -storepass allcom -alias tomcat -file server/server-cert.pem -keystore server/server_keystore
[注] 此时?storepass为生成证书时输入密码?alias为服务器证书的别名?br />4.查看证书
查看CA证书
C:\j2sdk1.4.1_01\bin\keytool -list -keystore server/cacerts
查看服务器证?br />C:\j2sdk1.4.1_01\bin\keytool -list -keystore server/server_keystore
2.2.3修改Tomcat的配|文?br />1.把文件server/ server_keystore复制到目?TCAT_HOME%/conf?br />2.修改conf目录下server.xml文g扑ֈ以下内容L其注释ƈ修改?br /><!-- Define an SSL HTTP/1.1 Connector on port 8443 -->
<Connector className="org.apache.catalina.connector.http.HttpConnector"
port="8443" minProcessors="5" maxProcessors="75"
enableLookups="false"
acceptCount="10" debug="0" scheme="https" secure="true">
<Factory className="org.apache.catalina.net.SSLServerSocketFactory"
clientAuth="true" protocol="TLS"
keystoreFile="c:/tomcat 4.0.6/conf/server_keystore" keystorePass="allcom"/>
</Connector>
2.3 配置IE客户?br />2.3.1建立Client证书
1.建立自己的Client目录Q例如:client
2.生成Client密钥?br />openssl genrsa -out client/client-key.pem 1024
3.生成待签名的证书
openssl req -new -out client/client-req.csr -key client/client-key.pem
4.用CAU钥{
openssl x509 -req -in client/client-req.csr -out client/client-cert.pem -signkey client/client-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 365
5.生成Client端可以导入的个h证书
openssl pkcs12 -export -clcerts -in client/client-cert.pem -inkey client/client-key.pem -out client/client.p12
pkcs12[生成PKS12格式证书命o]-export[导出文g]-clerts[仅导出client证书]-in[输入的client证书文g路径]-inkey[client证书密钥文g路径]-out[导出PKS12格式文g路径]
2.3.2CA证书与client证书导入IE
1. 导入CA根证?br />目录ca中的ca-cert.pem改名为ca-cert.cerQ?br />在client端的IE中?lt;工具>,< Internet选项>,<内容>,<证书>,<导入>,把我们生成的CA根证书导入,使其成ؓ用户信Q的CA?br />2. 导入client证书
client证书Qclient.p12Q导入到client端的IE中作为client证书Q导入过E同?br />?用IE览器用SSL协议讉KTomcat
1. 执行%TCAT_HOME%/bin/startup.bat启动Tomcat 4.0.6Q?br />2. 在IE览器的地址栏中输入https://localhost:8443Q如果前面的操作都正,应该可以看到|站静态导出的面Q在q之前,IE提示你是否访问安全页面。同时状态栏上的锁处于闭合状态,表示您已l成功地与服务器建立了要求客L验证的SSL安全q接
]]> - Spring嵌套事务回滚问题的验?/title>http://www.aygfsteel.com/shadowzhang/archive/2006/03/18/35932.htmlE序人生E序人生Sat, 18 Mar 2006 06:17:00 GMThttp://www.aygfsteel.com/shadowzhang/archive/2006/03/18/35932.htmlhttp://www.aygfsteel.com/shadowzhang/comments/35932.htmlhttp://www.aygfsteel.com/shadowzhang/archive/2006/03/18/35932.html#Feedback5http://www.aygfsteel.com/shadowzhang/comments/commentRss/35932.htmlhttp://www.aygfsteel.com/shadowzhang/services/trackbacks/35932.html
今天做了一个嵌套事务处理的问题Q?/p>
class TransactionA {
private IUserDAO userDAO;
private TransactionB serviceB;
public void doTransMethod(){
userDao.doMethod();
serviceB.doMethodOther();
}
}
不管doTransMethod中两个操作的先后序如何Q?/p>
只要其中一个抛出异常,则自动全部回滚两个事务?/p>

]]>
վ֩ģ壺
|
ͨ|
|
|
|
Ԫ|
|
|
|
Т|
ˮ|
̨|
ų|
ŷ|
|
|
ɽ|
|
ɽ|
ʩ|
|
ǡ|
ƽ|
|
ں|
Dz|
Ӣɽ|
|
Զ|
|
|
պ|
ľ|
|
뵺|
|
|
®|
Ȫ|
|
ƽ|