サーブレット上でデータベース更新のコードを書きましたが、うまく実行できませんでした。
内容は
・テーブルtenの要素の挿入
・ten_shipment要素は「?」と指定、メソッドPreparedStatementで値を渡す
以下、プログラムになります。
DBst.java
package
1 2import java.io.IOException; 3import java.sql.Connection; 4import java.sql.PreparedStatement; 5 6import javax.servlet.ServletException; 7import javax.servlet.annotation.WebServlet; 8import javax.servlet.http.HttpServlet; 9import javax.servlet.http.HttpServletRequest; 10import javax.servlet.http.HttpServletResponse; 11 12 13/** 14 * Servlet implementation class DBst 15 */ 16@WebServlet("/DBst") 17public class DBst extends HttpServlet { 18 private static final long serialVersionUID = 1L; 19 20 /** 21 * @see HttpServlet#HttpServlet() 22 */ 23 public DBst() { 24 super(); 25 // TODO Auto-generated constructor stub 26 } 27 28 /** 29 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) 30 */ 31 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 32 // TODO Auto-generated method stub 33 34 Connection con = null; 35 36 37 try{ 38 con = DBManager.getConnection(); 39 40 String sql = "INSERT INTO ten (ten_id,ten_name,ten_date,ten_shipment) " 41 + "VALUES (555,'テスト2','1月11日',?"; 42 PreparedStatement pstm = con.prepareStatement(sql) 43 44 pstm.setInt(1,4); 45 46 }catch(Exception e){ 47 e.printStackTrace(); 48 49 50 } 51 52 /** 53 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) 54 */ 55 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 56 // TODO Auto-generated method stub 57 } 58 59} 60 61コード
DBManager.java
package
1import java.sql.Connection; 2import java.sql.DriverManager; 3public class DBManager { 4 public static Connection getConnection(){ 5 String driver ="com.mysql.jdbc.Driver"; 6 String url ="jdbc:mysql://localhost/satotest"; 7 String option ="?useUnicode=true&characcerEncoding=UTF-8"; 8 String user ="root"; 9 String pass = ""; 10 11 Connection con = null; 12 try{ 13 14 Class.forName(driver); 15 con =DriverManager.getConnection( 16 url + option,user,pass); 17 }catch(Exception e){ 18 e.printStackTrace(); 19 } 20 return con; 21 22 } 23} 24 25コード
servlet、jspを初めてまだ日が浅いので、アドバイスをいただきたいです。
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー