我是java / java servlet的新手。我需要simpleCaptcha作为表单,使用html和javaservlet作为代码。参考http://simplecaptcha.sourceforge.net/extending.html
。
Captcha captcha = new Captcha.Builder(200, 50)
.addText()
.addBackground()
.addNoise()
.gimp()
.addBorder()
.build(); // Required.
在哪里(java servlet)我应该放这段代码以便在html上创建验证码?
非常感谢。
答案 0 :(得分:8)
要扩展SimpleCaptcha并自定义您的CAPTCHA,我的理解是您必须创建自己的HttpServlet
(可能是扩展SimpleCaptchaServlet
)。为此,我建议您下载source code并查看SimpleCaptchaServlet
或StickyCaptchaServlet
。这就是doGet()
的{{1}}方法:
SimpleCaptchaServlet
这应该是自我解释的:创建自己的servlet并将自定义的Captcha Builder代码放在@Override
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
Captcha captcha = new Captcha.Builder(_width, _height)
.addText()
.addBackground(new GradiatedBackgroundProducer())
.gimp()
.addNoise()
.addBorder()
.build();
CaptchaServletUtil.writeImage(resp, captcha.getImage());
req.getSession().setAttribute(NAME, captcha);
}
方法中。然后,按照Installing部分的说明操作,但不要使用其中一个servlet,而是在doGet()
中声明您的。最后,打包/部署您的应用程序。在web.xml
下的源代码分发中捆绑了一个示例。如果您需要有关Web应用程序的结构,依赖关系和打包的更多指导,请查看它。
答案 1 :(得分:2)
这就像我想的那样直截了当。这个项目为您提供了一些开箱即用的Capcha servlet。您只需将它们映射到web.xml文件中即可。您可以按照并创建将调用它们的jsp。