我现在有一个简单的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参数,因为它是用户提供的输入。

10-04 11:40