String https="https"+"://"+request.getServerName()+":"+"8443"+request.getContextPath()+"/login.do";
这句是构造点击登录要提交的url,然后把表单form的action的属性值写为https.
这样就构造好登录的提交的url了.
这样做还不够,还必须生成安全证书,生成安全证书以后还必须配置在服务器上,如果用的tomcat那就修改它的配置文件server.xml.
1.首先用jdk自带的工具keytool生成一个"服务器证书"
a.命令行进入jdk的安装目录的bin
b.输入:keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ken.key
c.提示输入密码,使用Tomcat的默认值changeit
d.输入相关信息后确认(中国国码:86)
e.生成PCKS1.2格式的数字证书将保存在C:\tomcat.key
2.修改tomcat目录下的server.xml文件,增加
<Connector SSLEnabled="true" clientAuth="false" keystoreFile="C:\ken.key" keystorePass="lghkentomcat" maxThreads="150" port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
scheme="https" secure="true" sslProtocol="TLS"/>
期间要注意“keystoreFile”的目录,本文是放在C盘根目录下,名字为:tomcat.key.
但是这里还有个问题,因为提交以后url就会一直是https方式的,其实这个很好解决.
提交以后到类中处理了成功以后肯定会有个成功返回的页面,在这个成功返回的页面之前再加一个jsp页面,比较这个jsp页面就叫aa.jsp吧,那就在aa.jsp页面中加上一句话.
<body onload='document.location.href="<%=basePath %>"'>这里的basePath 就是你原来登录成功本来应该去的页面,但是这里的这个basePath也是要构造出来的.比如我的登录成功以后的页面是index.jsp那我就构造出我的url:String basePath = "http"+"://"+request.getServerName()+":"+"8080"+request.getContextPath()+"/index.jsp";