level 2
我获取数组中数字的方法是:
Matcher m = Pattern.compile("\\d+").matcher(n);
int num = 0;
while (m.find()) {
num = num + Integer.parseInt(m.group(0));
System.out.println(Integer.parseInt(m.group(0)));
}
System.out.println(num);//输出和
我现在想要将获得的数字添加至数据库,该怎么做呢?
是在while循环中添加sql语句吗?
insert into XXXX(test_score1,test_score2,test_score3,test_score4,test_score5,test_score6,test_score7,test_score8,test_score9,test_score10,test_totalscore)values(.................,num)
省略号部分的内容该怎么写呢?
请各位高手帮帮忙!
2013年04月14日 09点04分
1
level 3
不能用循环,那样占用太多资源,要知道数据库的链接很宝贵的,应该吧所有的数据合起来,成为一条sql语句。
2013年04月15日 14点04分
2
level 2
帮忙改改我的程序吧,总说“结果集已关闭”,并说“List<String> courses = getCourse(stmt,rs.getString("course_id"));”这句话有错
package laogen.action;
import java.sql.Connection;import java.sql.ResultSet;import java.sql.Statement;import java.util.ArrayList;import java.util.List;//import java.util.Map;
import javax.servlet.http.HttpSession;
import laogen.common.DBcon;
import org.apache.struts2.ServletActionContext;
public class manager_testResult_query {private String stu_id;private String stu_name;private String course_id;private String course_name;private String tea_name;private String course_score;public String getStu_id() {return stu_id;}public void setStu_id(String stu_id) {this.stu_id = stu_id;}public String getStu_name() {return stu_name;}public void setStu_name(String stu_name) {this.stu_name = stu_name;}public String getCourse_id() {return course_id;}public void setCourse_id(String course_id) {this.course_id = course_id;}public String getCourse_name() {return course_name;}public void setCourse_name(String course_name) {this.course_name = course_name;}public String getTea_name() {return tea_name;}public void setTea_name(String tea_name) {this.tea_name = tea_name;}public String getCourse_score() {return course_score;}public void setCourse_score(String course_score) {this.course_score = course_score;}public String execute() throws Exception {DBcon dbcon=new DBcon(); Connection con=dbcon.GetConnection();ResultSet rs = null;Statement stmt = null;try {stmt = con.createStatement();String sql = "select * from stu_course where type='1'";rs = stmt.executeQuery(sql);List<manager_testResult_query> list = new ArrayList<manager_testResult_query>(); // new一个listwhile (rs.next()) {manager_testResult_query sc = new manager_testResult_query();sc.setStu_id(rs.getString("stu_id"));sc.setCourse_id(rs.getString("course_id"));sc.setStu_name(getStuId(stmt,rs.getString("stu_id")));List<String> courses = getCourse(stmt,rs.getString("course_id"));sc.setCourse_name(courses.get(0));sc.setTea_name(courses.get(1));sc.setCourse_score(courses.get(2));list.add(sc);}//System.out.println("数据库里面有"+list.size()+"条记录");HttpSession session = ServletActionContext.getRequest().getSession();session.setAttribute("listAll", list);} catch (Exception e) {e.printStackTrace();} finally {try {rs.close();stmt.close();con.close();} catch (Exception e) {e.printStackTrace();}} return "manager_testResult_query";}
public String getStuId(Statement stmt, String stu_id) {String result = "";ResultSet rs = null;String sql = "select * from student where stu_id='" + stu_id + "'";try {rs = stmt.executeQuery(sql);while (rs.next()) {result = rs.getString("stu_name");}} catch (Exception e) {e.printStackTrace();} finally {try {rs.close();} catch (Exception e) {e.printStackTrace();}}return result;}
public List<String> getCourse(Statement stmt, String course_id) {List<String> result = new ArrayList<String>();ResultSet rs = null;String sql = "select * from course where course_id='" + course_id + "'";try {rs = stmt.executeQuery(sql);while (rs.next()) {result.add(rs.getString("course_name"));result.add(rs.getString("tea_id"));result.add(rs.getString("course_score"));}} catch (Exception e) {e.printStackTrace();} finally {try {rs.close();} catch (Exception e) {e.printStackTrace();}}return result;}
}
2013年04月16日 06点04分
3
level 1
应该是‘“gettest_score1”’,‘“gettest_score2”’,........(好像就是必须有这对符号 ‘“.....”’)
2017年02月23日 14点02分
4