RandomAction.java制作随机图片放到SESSION里面
import com.apache.shopping.util.RandomNumUtil;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class RandomAction extends ActionSupport{
private ByteArrayInputStream inputStream;
public String execute() throws Exception{
RandomNumUtil rdnu=RandomNumUtil.Instance();
this.setInputStream(rdnu.getImage());//取得带有随机字符串的图片
ActionContext.getContext().getSession().put("regVerifyCode", rdnu.getString());//取得随机字符串放入HttpSession
return SUCCESS;
}
public void setInputStream(ByteArrayInputStream inputStream) {
this.inputStream = inputStream;
}
public ByteArrayInputStream getInputStream() {
return inputStream;
}
}
含有验证码的jsp页面
function changeValidateCode(obj) {
/***
* 获取当前的时间作为参数,无具体意义
* 每次请求需要一个不同的参数,否则可能会返回同样的验证码
* 这和浏览器的缓存机制有关系,也可以把页面设置为不缓存,这样就不用这个参数了。
*/
var timenow = new Date().getTime();
obj.src="front/randPic.action?d="+timenow;
}
<input id="t_CheckCode" class="reg_input_pic" name="regVerifyCode" type="text" maxlength="4" />
<span><img class="img" src="front/randPic.action" onclick="changeValidateCode(this)" width="60" height="24" style="margin-left:10px;"/></span>