社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
基于前面练习所出现的问题对其进行修改,可以成功的对数据库信息进行增删改查四项基本操作。
以下是部分修改的代码,整体的代码详见前天的练习2。初始界面就不说了。
首先来到初始界面,点击浏览,会出现数据库的信息。
if (e.getSource()==view){
ResultSet rs=null;
String v;
rs=new UserManage().view();
try {
while (rs.next()){
table.setValueAt(rs.getString("user_name"), ii, 0);
table.setValueAt(rs.getString("user_type"), ii, 1);
table.setValueAt(rs.getString("startdate"), ii, 2);
if (rs.getBoolean("valid")==true)
v="启用";
else
v="停用";
table.setValueAt(v, ii, 3);
ii++;
}
ii=0; //没修改之前,点击浏览,不断出现数据信息,结果在这里加入ii=0后,解决了。
} catch (SQLException e2) {
e2.printStackTrace();
}
}
在表单添加一次全部信息之后,应该对行数进行重置清零,这样就可以确保不断点击浏览只看到一组数据。 if (e.getSource()==regis){
if (new UserManage().addUsers(u_name, u_password, u_type, date, flag)){
ResultSet rs=null;
String v;
rs=new UserManage().view();
try {
while (rs.next()){
table.setValueAt(rs.getString("user_name"), ii, 0);
table.setValueAt(rs.getString("user_type"), ii, 1);
table.setValueAt(rs.getString("startdate"), ii, 2);
if (rs.getBoolean("valid")==true)
v="启用";
else
v="停止";
table.setValueAt(v, ii, 3);
ii++;
}
ii=0;
} catch (SQLException e5){
e5.printStackTrace();
}
}
}
添加成功之后,用ResultSet,重新添加表单即可。if (new UserManage().isExist(name)){
这里之前写的是(!参数),结果后来看到一想,他喵的应该是名字存在了,是真的,就执行啊。都没有这个人的话,何来修改呢。 if (e.getSource()==edit){ //修改成功之后,表单显示问题
if (u_name.equals("")){
u_name=(String)table.getValueAt(table.getSelectedRow(), 0);
}
if (new UserManage().updateUser(u_name, u_password, u_type, date, flag)){
ResultSet rs=null; //解决!之前修改后哦,是没把信息重新添加表单
String v;
rs=new UserManage().view();
try {
while (rs.next()){
table.setValueAt(rs.getString("user_name"), ii, 0);
table.setValueAt(rs.getString("user_type"), ii, 1);
table.setValueAt(rs.getString("startdate"), ii, 2);
if (rs.getBoolean("valid")==true)
v="启用";
else
v="停用";
table.setValueAt(v, ii, 3);
ii++;
}
ii=0;
} catch (SQLException e2) {
e2.printStackTrace();
}
}
}
最后的删除,点击要删除的行,点击删除按钮,删除成功。 if (e.getSource()==delete){ //目前删除后表单不跟新
int k=0;
int r=table.getSelectedRow();
String ss=(String)table.getValueAt(r, 0);
if (new UserManage().deleteUser(ss)){
ResultSet rs=null;
String v;
rs=new UserManage().view();
try {
while (rs.next()){
table.setValueAt(rs.getString("user_name"), k, 0);
table.setValueAt(rs.getString("user_type"), k, 1);
table.setValueAt(rs.getString("startdate"), k, 2);
if (rs.getBoolean("valid")==true)
v="启用";
else
v="停用";
table.setValueAt(v, k, 3);
k++;
}
table.setValueAt("",k,0); //问题从这里解决了,不过准确的来说是把上面while
table.setValueAt("",k,1); //循环里的k确定明白咯,然后在这四行进行删除后的表单
table.setValueAt("",k,2); //跟新,但是这里的更新不能说是更新,因为上面while里的内容
table.setValueAt("",k,3); //就相当于更新,这里就把最后一个多余出来的表单设成空的即可
k=0;
} catch (SQLException e2) {
e2.printStackTrace();
}
}
}
删除之后,重新添加表单,最后一行置为空即可。String sql="insert into userInfo(user_name,user_pass,user_type,startdate,valid)values ('"+name+"','"+word+"','"+type+"','"+date+"',"+f+")";
开始这里出现了类似这个错误如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!