public String get(){
StringBuilder bui = new StringBuilder();
for (int i = 0; i < 4; i++) {
int num = (int)(Math.random()*10);
bui.append(num);
}
String str = bui.toString();
return str;
}
第6章
l 請寫一個filter名稱為AAFilter,可以測量一個Servlet cc2執行1加到1000縮花費的時間
<filter>
<filter-name>PerformanceFilter</filter-name>
<filter-class>cc.openhome.PerformanceFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>PerformanceFilter</filter-name>
<url-pattern>/ex6</url-pattern>
</filter-mapping>
PerformanceFilter.java
public class PerformanceFilter implements Filter {
private FilterConfig filterConfig;
@Override
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
long begin = System.currentTimeMillis();
chain.doFilter(request, response);
filterConfig.getServletContext().log("Request process in " + (System.currentTimeMillis() - begin) + " msecs");
}
ex6.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
//String str = (String) request.getAttribute("time");
try {
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet ex6</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>add 1 up to 10 = " + new sumup(10).get() + "</h1><br>");
//out.println("<h1> Spend time " + str + "</h1>");
out.println("</body>");
out.println("</html>");
} finally {
out.close();
}
}