サーブレット上でデータベース更新のコードを書きましたが、うまく実行できませんでした。
内容は
・テーブルtenの要素の挿入
・ten_shipment要素は「?」と指定、メソッドPreparedStatementで値を渡す
以下、プログラムになります。
DBst.java
package
import java.io.IOException; import java.sql.Connection; import java.sql.PreparedStatement; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class DBst */ @WebServlet("/DBst") public class DBst extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public DBst() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub Connection con = null; try{ con = DBManager.getConnection(); String sql = "INSERT INTO ten (ten_id,ten_name,ten_date,ten_shipment) " + "VALUES (555,'テスト2','1月11日',?"; PreparedStatement pstm = con.prepareStatement(sql) pstm.setInt(1,4); }catch(Exception e){ e.printStackTrace(); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub } } コード
DBManager.java
package
import java.sql.Connection; import java.sql.DriverManager; public class DBManager { public static Connection getConnection(){ String driver ="com.mysql.jdbc.Driver"; String url ="jdbc:mysql://localhost/satotest"; String option ="?useUnicode=true&characcerEncoding=UTF-8"; String user ="root"; String pass = ""; Connection con = null; try{ Class.forName(driver); con =DriverManager.getConnection( url + option,user,pass); }catch(Exception e){ e.printStackTrace(); } return con; } } コード
servlet、jspを初めてまだ日が浅いので、アドバイスをいただきたいです。
よろしくお願い致します。
まだ回答がついていません
会員登録して回答してみよう