1:while ,for 中一般不要有变量的创建
public void getBandwidth(){
for(int i=o;i<10;i++){
int b= new Integer(i); #b变量应该在外面创建
System.out.println(b);
}
}
public void getBandwidth(){
int b=null;
for(int i=o;i<10;i++){
b= new Integer(i);
System.out.println(b);
}
}
2:从现在开始所有对数据库的操作用PreparedStatement吧
public void getBandwidth() {
String sql = "select USER_NAME, ZH_NAME from su_billing_monitor where USER_NAME=?";
String url = "jdbc:oracle:thin:@192.168.100.245:1521:bill";
String user = "stat";
String password = "stat";
Connection conn = null;
PreparedStatement ps = null;
ResultSet eq = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(url, user, password);
ps = conn.prepareStatement(sql, new String[] { "qq" }); #在数据库端sql语句只被编译一次
eq = ps.executeQuery();
while (eq.next()) {
System.out.println(eq.getString("user_name")); #会遍历结果列表找到“user_name”
System.out.println(eq.getString(1)); #会直传找到(位置你可以确定)
}
} catch (ClassNotFoundException e) {
logger.error(e.getMessage());
} catch (SQLException e) {
logger.error(e.getMessage());
} finally {
DbUtils.closeQuietly(eq);
DbUtils.closeQuietly(ps);
DbUtils.closeQuietly(conn);
}
}
3:让log看上去更整洁
String message = "back Update sql [ {0} ]";
logger.info(MessageFormat.format(message,updataSql));
如果要保存一个引号,可以message中用两个引号