0
Javaサーブレットとアプリケーションに問題があります。これらのサーブレットを正しく動作させてブラウザに出力する方法を理解しようとしています。私は下に自分のコードを添付して、このプログラムが正しく動作するように指示してください。私はサンプルコードと対処方法を理解しています。私はあなたの仕事を探しているわけではなく、視覚的に助けが必要です。すべての援助は非常に高く評価されます。JSPで結果が表示されない
サーブレット
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class FormPost3 extends HttpServlet{
private static final long serialVersionUID = 1L;
Connection con = null;
public void Form3(){
init();
}
public void init(){
try{
Class.forName ("oracle.jdbc.driver.OracleDriver");
con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:7070:XE", "student2", "pass");
Statement stmt = con.createStatement();
stmt.executeUpdate("CREATE TABLE MYTABLE (FNAME VARCHAR2(20),LNAME VARCHAR2(40), PHONE VARCHAR2(20))");
stmt.close();
}
catch (Exception e){
}
}
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><body>");
out.println("<form action='" + request.getRequestURL() + "' method='post' >");
out.println("First Name:");
out.println("<input type='text' name='FNAME' />");
out.println("<br>");
out.println("Last Name:");
out.println("<input type='text' name='LNAME' />");
out.println("<br>");
out.println("Phone:");
out.println("<input type='text' name='PHONE' />");
out.println("<input type='submit' value='Submit' />");
out.println("</form>");
out.println("</body></html>");
out.close();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{
try{
if (con != null)
init();
String fname = request.getParameter("FNAME");
String lname = request.getParameter("LNAME");
String phone = request.getParameter("PHONE");
Statement stmt = con.createStatement();
stmt.executeUpdate("INSERT INTO MYTABLE VALUES('" + fname + "', '" + lname + "', '" + phone + "')");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><body>");
ResultSet rset = stmt.executeQuery("SELECT * FROM MYTABLE");
while (rset.next()){
out.print("<pre>");
out.print("First Name: " + rset.getString(1));
out.print("</pre>");
out.println();
out.print("<pre>");
out.print("Last Name: " + rset.getString(2));
out.print("</pre>");
out.println();
out.print("<pre>");
out.print("Phone: " + rset.getString(3));
out.print("</pre><br>");
out.println();
out.println();
}
out.println("</body></html>");
out.close();
stmt.close();
}
catch (Exception e){
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><body>");
out.println(e.getMessage());
out.println("</body></html>");
out.close();
}
}
}
のWeb.xml
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>FormPost3</servlet-name>
<servlet-class>FormPost3</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>FormPost3</servlet-name>
<url-pattern>/FormPost3</url-pattern>
</servlet-mapping>
</web-app>
index.htmlを
<html>
<head>
</head>
<body>
<h3 align="center">Storing Employee Details</h3>
<form action="/WFormPost3" method="post">
<div align="center">
Empno: <input type="text" size="20" name="empno"/>
<br><br>
Ename <input type="text" size="20" name="ename"/>
<br><br>
Salary <input type="text" size="20" name="sal"/>
<br><br>
<input type="submit" value="insert" />
<div>
</form>
</body>
</html>
送信ボタンをクリックするとどうなりますか? –
あなたはJSPが結果を表示していないと言っています。そのJSPコードはどこですか?例外スタックがある場合は、質問に追加してください。 –