建立一个 Derby 日历,第 2 部分: 嵌入选项(下)
2010-04-19 00:00:00 来源:WEB开发网定义应用程序后,创建 servlet 并指定它们引用的类。比如定义一个名为 MainCalendarFrame 的 servlet。这个 servlet 对应 MainFrame 类。因此创建一个名为 MainFrame 的 servlet 类。然后将 MainCalendarFrame servlet 用 /calendar 模式映射到任何 URL。
这意味着如果将此 .war 文件放入 Tomcat 的 webapps 目录,Tomcat 就会创建该日历应用程序,因此 mainframe 的 URL 就是 http://www.yourserverhere.com/calendar/calendar。
安装该应用程序后,可以开始构建它。
对 Java 2 Platform, Enterprise Edition(J2EE)或 IDE 坚决支持者的一点建议:确实还有更好更简单的办法。但是对于那些只关心数据库交互的人来说,这是最简单的方法,因为不需要下载和学习其他的工具。
Web 应用程序
如前所述,这个 Web 应用程序只有两个 servlet。首先来看看登录过程。
登录页面
登录页面包括一个简单的 servlet,为 GET 请求显示登录表单,对 POST 请求分析提交的参数。首先从表单开始,如 清单 20 所示。
清单 20. 登录页面
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.Connection;
import javax.servlet.http.Cookie;
public final class Login extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>Log In to the calendar system</title>");
out.println("</head>");
out.println("<body>");
out.println("<h2>Please enter your login information</h2>");
out.println("<p>When you were granted an account, the ");
out.println("administrator provided you with a username and");
out.println(" password. Enter them here.</p>");
out.println("<form action='login' method='post'>");
out.println("<table border='0'><tr><td>");
out.println("Username:");
out.println("</td><td>");
out.println("<input type='text' name='username' />");
out.println("</td></tr>");
out.println("<tr><td>");
out.println("Password:");
out.println("</td><td>");
out.println("<input type='password' name='password' />");
out.println("</td></tr>");
out.println("<tr><td colspan='2'>");
out.println("<input type='submit' value='Login' />");
out.println("</td></tr></table>");
out.println("</form>");
out.println("</body>");
out.println("</html>");
}
}
更多精彩
赞助商链接