Skip to content
This repository has been archived by the owner on Apr 16, 2024. It is now read-only.

Commit

Permalink
[ch04] chapter 4.7, servlet init parameter-00
Browse files Browse the repository at this point in the history
Signed-off-by: Dongho Sim <dhsim86@gmail.com>
  • Loading branch information
dhsim86 committed Mar 7, 2017
1 parent 4b15d45 commit 36afd54
Show file tree
Hide file tree
Showing 3 changed files with 153 additions and 20 deletions.
3 changes: 2 additions & 1 deletion src/main/java/Lesson04/MemberListServlet.java
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,8 @@ public void service(ServletRequest request, ServletResponse response)
while(rs.next()) {
out.println(
rs.getInt("mno") + ", " +
rs.getString("mname") + ", " +
"<a href='update?no=" + rs.getInt("mno") + "'>" +
rs.getString("mname") + "</a>, " +
rs.getString("email") + ", " +
rs.getDate("cre_date") + "<br>"
);
Expand Down
107 changes: 107 additions & 0 deletions src/main/java/Lesson04/MemberUpdateServlet.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
package Lesson04;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.*;

/**
* Created by Dongho on 2017. 3. 7..
*/
@SuppressWarnings("serial")
public class MemberUpdateServlet extends HttpServlet {

@Override
public void doGet(
HttpServletRequest request, HttpServletResponse response
) throws ServletException, IOException {

Connection conn = null;
Statement stmt = null;
ResultSet rs = null;

try {
Class.forName(this.getInitParameter("driver"));
conn = DriverManager.getConnection(
this.getInitParameter("url"),
this.getInitParameter("username"),
this.getInitParameter("password")
);
stmt = conn.createStatement();
rs = stmt.executeQuery(
"select mno, email, mname, cre_date from members" +
" where mno = " + request.getParameter("no")
);

rs.next();

response.setContentType("text/html; charset=UTF-8");

PrintWriter out = response.getWriter();

out.println("<html><head><title>member info</title></head>");
out.println("<body><h1>member info</h1>");
out.println("<form action='update' method='post'>");
out.println("number: <input type='text' name='no' value='" +
request.getParameter("no") + "' readonly><br>");
out.println("name: <input type='text' name='name' value='" +
rs.getString("mname") + "'><br>");
out.println("email: <input type='text' name='email' value='" +
rs.getString("email") + "'><br>");
out.println("registered date: " + rs.getDate("cre_date") + "<br>");
out.println("<input type='submit' value='save'>");
out.println("<input type='button' value='cancel'" +
" onclick='location.href=\"list\"'>");
out.println("</form>");
out.println("</body></html>");
}
catch (Exception e) {
throw new ServletException(e);
}
finally {
try { if (rs != null) rs.close(); } catch (Exception e) {}
try { if (stmt != null) stmt.close(); } catch (Exception e) {}
try { if (conn != null) conn.close(); } catch (Exception e) {}
}
}

@Override
protected void doPost(
HttpServletRequest request, HttpServletResponse response
) throws ServletException, IOException {

request.setCharacterEncoding("UTF-8");

Connection conn = null;
PreparedStatement stmt = null;

try {
Class.forName(this.getInitParameter("driver"));
conn = DriverManager.getConnection(
this.getInitParameter("url"),
this.getInitParameter("username"),
this.getInitParameter("password")
);
stmt = conn.prepareStatement(
"update members set email = ?, mname = ?, mod_date = now()" +
" where mno = ?"
);
stmt.setString(1, request.getParameter("email"));
stmt.setString(2, request.getParameter("name"));
stmt.setInt(3, Integer.parseInt(request.getParameter("no")));

stmt.executeUpdate();
response.sendRedirect("list");
}
catch (Exception e) {
throw new ServletException(e);
}
finally {
try { if (stmt != null) stmt.close(); } catch (Exception e) {}
try { if (conn != null) conn.close(); } catch (Exception e) {}
}
}
}
63 changes: 44 additions & 19 deletions src/main/webapp/WEB-INF/web.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,39 +6,64 @@
id="WebApp_ID"
version="3.0">

<!-- servlets -->
<servlet>
<servlet-name>Hello</servlet-name>
<servlet-class>Lesson03.servlets.HelloWorld</servlet-class>
</servlet>
<!-- servlets -->
<servlet>
<servlet-name>Hello</servlet-name>
<servlet-class>Lesson03.servlets.HelloWorld</servlet-class>
</servlet>

<servlet>
<servlet-name>MemberUpdateServlet</servlet-name>
<servlet-class>Lesson04.MemberUpdateServlet</servlet-class>
<init-param>
<param-name>driver</param-name>
<param-value>com.mysql.jdbc.Driver</param-value>
</init-param>
<init-param>
<param-name>url</param-name>
<param-value>jdbc:mysql://localhost/studydb?useUnicode=true&amp;characterEncoding=UTF-8</param-value>
</init-param>
<init-param>
<param-name>username</param-name>
<param-value>study</param-value>
</init-param>
<init-param>
<param-name>password</param-name>
<param-value>study</param-value>
</init-param>
</servlet>

<!--
<servlet>
<servlet-name>Calculator</servlet-name>
<servlet-class>Lesson03.servlets.CalculatorServlet</servlet-class>
</servlet> -->

<!-- servlet mappings -->
<servlet-mapping>
<servlet-name>Hello</servlet-name>
<url-pattern>/Hello</url-pattern>
</servlet-mapping>
<!-- servlet mappings -->
<servlet-mapping>
<servlet-name>Hello</servlet-name>
<url-pattern>/Hello</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>MemberUpdateServlet</servlet-name>
<url-pattern>/member/update</url-pattern>
</servlet-mapping>
<!--
<servlet-mapping>
<servlet-name>Calculator</servlet-name>
<url-pattern>/calc</url-pattern>
</servlet-mapping> -->

<!-- welcome file setting -->
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<!-- welcome file setting -->
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>

</web-app>

Expand Down

0 comments on commit 36afd54

Please sign in to comment.