2014-04-04 114 views
-3

我試圖用my sql以db爲單位insert data。從哪裏獲取數據和插入數據庫的字符串。如何使用java在數據庫中插入數據?

字符串是:

s= 
1 kalim khan NIL  
2 ajay sharma NIL 
3 navneet gupta NIL  
4 amar kumar srivastava NIL 

我想這其中的空間更然後3應該skiped並提前

代碼moved是如下:

StringTokenizer str = new StringTokenizer(htmlTableText); 
    while(str.hasMoreElements()){ 
     for(int i=0;i<4;i++){ 
      int sno = Integer.parseInt(str.nextElement().toString()); 

     String fname = str.nextElement().toString(); 
     String lname = str.nextElement().toString(); 
     String price = str.nextElement().toString(); 
     Class.forName("com.mysql.jdbc.Driver"); 
     Connection cn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mandi","root",""); 
     //insert them into the database 
     PreparedStatement ps=cn.prepareStatement("insert into commoditywise values(?,?,?,?)"); 
     ps.setInt(1,sno); 
     ps.setString(2, fname); 
     ps.setString(3, lname); 
     ps.setString(4, price); 
      int j =ps.executeUpdate(); 
      if(j==1) 
      { 
      System.out.println("data inserted"); 
      } 
      else 
      { 
      System.out.println("not inserted"); 
      } 
     } 
    } 

在此先感謝

+1

你可以通過使用某種查詢來插入它。 – MJoraid

+0

我怎麼能告訴我 – user3496498

+0

小提示:'StringTokenizer'是一個遺留類。嘗試使用'String.split()'代替。 – SudoRahul

回答

0

也許StringTokenizer的count方法可以幫到你嗎?

int count = str.countTokens(); 
if (count > 4) { 
    continue; 
} 

否則我只是插入第一個字符串,直到找到姓。

0
ps.setInt(1,sno); 
ps.setString(2,fname); 
ps.setString(3,lname); 
ps.setString(4,price); 

有這些行的某些錯誤,

解決方案:使用DTO(setter和getter方法類/ bean類)得到SNO,FNAME,LNAME,價格值

試這個 這裏1.dtoclassname =你的bean類(setter和setter方法類)
2.getSno()=是獲取值的方法。

ps.setInt(1,dtoclassname.getSno()); 

做上述表示的其他領域的業務。

相關問題