import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class EmpEdit extends HttpServlet
{
Connection conn = null;
private static final String CONTENT_TYPE = "text/html; charset=windows-1252";
public void init(ServletConfig config) throws ServletException
{
super.init(config);
}
void form_field (
PrintWriter out
, String field_type
, String prompt
, String field_name
, String field_value
, int maxlength
)
{
out.println (
"<tr><td><b>"
+ prompt
+ "</b></td><td>"
);
if (field_type == "EDIT") {
out.println (
"<input type=\"text\" name=\""
+ field_name
+ "\" value=\""
+ field_value
+ "\" maxlength=\""
+ maxlength
+ "\">"
);
}
else if (field_type == "TEXT")
{
out.println(field_value);
}
out.println("</td></tr>");
}
public void doGet (
HttpServletRequest request
, HttpServletResponse response
) throws ServletException, IOException
{
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL", "scott", "tiger");
}
catch (ClassNotFoundException e) {
out.println(e);
}
catch (SQLException se) {
out.println("ERROR: " + se.toString());
}
String t_empno = request.getParameter("p_id");
String query =
"select ename, job, to_char(hiredate, 'dd.mm.yyyy') "
+ "from emp where empno = " + t_empno;
out.println (
"<html>"
+ "<head><title>Edit Employee</title></head>"
+ "<body><h3>Edit Employee</h3>"
);
try {
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(query);
if (rs.next()) {
out.println("<form action=\"EmpUpd\">");
out.println("<input type=\"hidden\" name=\"p_id\" value=\"" + t_empno + "\">");
out.println("<table border=0 cellspacing=0 cellpadding=2>");
form_field(out, "TEXT", "Employee ID", null, t_empno, 10);
form_field(out, "EDIT", "Last name", "p_ename", rs.getString(1), 10);
form_field(out, "EDIT", "Job", "p_job", rs.getString(2), 9);
form_field(out, "EDIT", "Hiredate", "p_hiredate", rs.getString(3), 10);
out.println("</table><input type=\"submit\" value=\"Save\"></form>");
}
else {
out.println("<h3>Employee " + t_empno + " not found.</h3>");
}
rs.close();
stmt.close();
}
catch (SQLException se) {
se.printStackTrace(out);
} finally {
if (conn != null) {
try {
conn.close();
} catch (SQLException ignored) {}
}
}
out.println("</body></html>");
out.close();
}
}