我尝试使用insert data
在db中my sql
。字符串从哪里获取数据并插入db。
字符串是:
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");
}
}
}
提前致谢
答案 0 :(得分:0)
也许StringTokenizer的计数方法可以帮到你?
int count = str.countTokens();
if (count > 4) {
continue;
}
否则我只会插入第一个字符串,直到我到达姓氏。
答案 1 :(得分:0)
ps.setInt(1,sno);
ps.setString(2,fname);
ps.setString(3,lname);
ps.setString(4,price);
这些行中有一些错误,
解决方案:使用DTO(Setter和Getter方法类/ bean类)来获取sno,fname,lname,price value
试试这个
这里1.dtoclassname =你的bean类(setter和setter方法类)
2.getSno()=是获取价值的方法。
ps.setInt(1,dtoclassname.getSno());
执行上述其他领域的操作。