在进行增删改之后,按下刷新按钮,JTable中的数据更新,但两个JComboBox下拉列表的值却不更新
,求指导,代码如下:(精简后代码,红色部分相关代码)public class customer extends JFrame implements ActionListener, MouseListener {
Vector vec1 = new Vector();
Vector vec2 = new Vector();
/**
 * start 操作控件
 */
JButton add = new JButton("添加");
JButton delete = new JButton("删除");
JButton modify = new JButton("修改");
/**
 * start 查询控件
 */
JLabel su_no = new JLabel("客户编号");
JLabel su_name = new JLabel("客户简称");
JComboBox jc_no = null;
JComboBox jc_name = null;
JButton select = new JButton("查询");
JButton refresh = new JButton("刷新"); customer() {
super("客户信息管理");
searchEmp_jc_name(1, 100);
searchEmp_jc_no(1, 100);
jc_no = new JComboBox(vec1);
jc_name = new JComboBox(vec2);
addaction();
CreatJFrame();
Select(); searchEmp(1, 100); } private void CreatJFrame() {
//布局代码,省略
} void Select() {
//布局代码,省略
} private void searchEmp(int start, int end) {
//查询数据库中的数据,并在JTable上显示,省略
} private void searchEmp_act(int start, String end) {
//查询数据库中的数据,并在JTable上显示,省略
} private void searchEmp_jc_no(int start, int end) {
Connection conn = null;
PreparedStatement sta = null;
ResultSet rs = null;
try {
conn = DBmanager.getConnection();
StringBuffer sbf = new StringBuffer();
sbf.append("select khid from (");
sbf
.append("select temp.* , ROWNUM RN from ( (select * from 客户信息 order by khid) temp)");
sbf.append(" WHERE ROWNUM <= ?");
sbf.append(")");
sbf.append("where RN >=?");
sta = conn.prepareStatement(sbf.toString());
sta.setInt(1, end);
sta.setInt(2, start);
rs = sta.executeQuery();
vec1 = rs2Vector_jc_no(rs);
// System.out.println(vec1);
// jc_no.setModel(vec1);
} catch (Exception e) {
e.printStackTrace();
} finally {
DBmanager.closeConnection(conn);
DBmanager.closePreparedStatement(sta);
DBmanager.closeResultSet(rs);
}
}
private void searchEmp_jc_name(int start, int end) {
Connection conn = null;
PreparedStatement sta = null;
ResultSet rs = null;
try {
conn = DBmanager.getConnection();
StringBuffer sbf = new StringBuffer();
sbf.append("select gyshjch from (");
sbf
.append("select temp.* , ROWNUM RN from ( (select * from 客户信息 order by khid) temp)");
sbf.append(" WHERE ROWNUM <= ?");
sbf.append(")");
sbf.append("where RN >=?");
sta = conn.prepareStatement(sbf.toString());
sta.setInt(1, end);
sta.setInt(2, start);
rs = sta.executeQuery();
vec2 = rs2Vector_jc_name(rs);
vec2.add("  ");
// System.out.println(vec2);
} catch (Exception e) {
e.printStackTrace();
} finally {
DBmanager.closeConnection(conn);
DBmanager.closePreparedStatement(sta);
DBmanager.closeResultSet(rs);
}
}
private Vector<Vector> rs2Vector_jc_no(ResultSet rs) {
// 外层的vector,每一个元素是一条记录
Vector vector = new Vector();
try {
while (rs.next()) {
// 里面的vector,放的是列的值
vector.add(rs.getString("khid"));
}
} catch (SQLException e) {
e.printStackTrace();
}
return vector; } private Vector<Vector> rs2Vector_jc_name(ResultSet rs) {
// 外层的vector,每一个元素是一条记录
Vector vector = new Vector();
try {
while (rs.next()) {
// 里面的vector,放的是列的值
vector.add(rs.getString("gyshjch"));
}
} catch (SQLException e) {
e.printStackTrace();
}
return vector; }

private void addaction() { //添加监听,省略
} private void searchEmp_act_delete(int start) {
//删除数据库中的数据,省略
} @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub if (e.getSource().equals(select)) {
//点击查询,省略 }
if (e.getSource().equals(add)) {
//点击添加,省略
}
if (e.getSource().equals(refresh)) {//点击刷新
 searchEmp(1, 100);
 searchEmp_jc_name(1, 100);
 searchEmp_jc_no(1, 100);
 jc_no = new JComboBox(vec1);
 jc_name = new JComboBox(vec2); }

if (e.getSource().equals(modify)) {
//点击修改,省略
}
if (e.getSource().equals(delete)) {
//点击删除,省略
} public static void main(String[] args) {
customer cu = new customer();
}}java   JComboBox