我现在有一个简单的servlet。我需要它来调用静态jar方法并返回其响应。
1)有人可以推荐合适的结构吗,即我需要创建工厂和处理程序类等吗?
2)我应该如何编码响应中的哈希值...简单地写到输出流还可以吗?即写标题等。另一个应用程序将读取响应。
3)不确定是否要处理null等。
package myproj.servlet;
//Std imports
//Serlet imports
import myproj.hash.HashGenerator;
public class MyServlet extends HttpServlet{
String hashcode;
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String accountName = req.getParameter("accountName");
try {
hashcode = HashGenerator.hash(accountName);
resp.setContentType("text/plain");
PrintWriter out = resp.getWriter();
//[EDIT] was returning accountName by accident
out.print(hashcode );
} catch (Exception e) {
//Some logging code
}
}
最佳答案
首先,您的hashcode
不是线程安全的。
在查看您提供的代码段之后。我不这么认为。这是相当简单的事情。
您将accountName
作为参数,然后将其写回。那是你想要的吗?或者您的意思是回应哈希版本。
您可能想验证accountName
参数,因为它是用户提供的输入。