📄 randomimageservlet.java
字号:
package yy.common.random;
import org.apache.log4j.Logger;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class RandomImageServlet extends HttpServlet
{
/**
* Logger for this class
*/
private static final Logger logger = Logger.getLogger(RandomImageServlet.class);
private static final long serialVersionUID = -6173624716307715676L;
public static final String RANDOM_LOGIN_KEY = "RANDOM_LOGIN_KEY";
protected boolean fromChar = false;
protected boolean fromNumber = false;
protected boolean draw = false;
protected boolean move = false;
protected int fontSize = 14;
public void init() throws ServletException
{
System.setProperty("java.awt.headless", "true");
}
public static String getRandomLoginKey(HttpServletRequest req)
{
return (String) req.getSession().getAttribute("RANDOM_LOGIN_KEY");
}
protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException,
IOException
{
res.setContentType("image/jpeg");
String type = req.getParameter("type");
String num = req.getParameter("num");
HttpSession ssn = req.getSession();
if (getServletConfig().getInitParameter("fromChar") != null
&& getServletConfig().getInitParameter("fromChar").equals("true"))
{
fromChar = true;
}
if (getServletConfig().getInitParameter("fromNumber") != null
&& getServletConfig().getInitParameter("fromNumber").equals("true"))
{
fromNumber = true;
}
if (getServletConfig().getInitParameter("draw") != null
&& getServletConfig().getInitParameter("draw").equals("true"))
{
draw = true;
}
if (getServletConfig().getInitParameter("move") != null
&& getServletConfig().getInitParameter("move").equals("true"))
{
move = true;
}
if (getServletConfig().getInitParameter("fontSize") != null)
{
fontSize = Integer.parseInt(getServletConfig().getInitParameter("fontSize"));
}
if (!fromChar && !fromNumber)
{
fromNumber = true;
}
if (ssn != null)
{
String randomString = "";
if (num != null)
{
randomString = RandomImageGenerator.random(Integer.parseInt(num), fromChar, fromNumber);
}
else
{
randomString = RandomImageGenerator.random(4, fromChar, fromNumber);
}
RandomImageGenerator.render(randomString, res.getOutputStream(), randomString.getBytes().length,
move, draw, fontSize);
if (type == null)
{
ssn.setAttribute("randomStr", randomString);
}
else
{
ssn.setAttribute(type, randomString);
}
logger.info("fromChar=" + fromChar);
logger.info("fromNumber=" + fromNumber);
logger.info("randomString=" + randomString);
}
}
protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException,
IOException
{
doGet(req, res);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -