if(rs.next())
{
int exp= rs.getInt("EXPERIENCE");
if (exp>1000)
{
exp= exp - 50;
sqlstring="update chatuser set EXPERIENCE='"+exp+"'";
sqlbean.executeUpdate(sqlstring);
上面if(re.next())应该是没有到表单底部就遍历向下执行吧,我现在想把它改为只对表单当前一行进行操作,不想她向下执行应该怎么改呢
吧if(rs.next())改为什么
谢谢 请指导哈
{
int exp= rs.getInt("EXPERIENCE");
if (exp>1000)
{
exp= exp - 50;
sqlstring="update chatuser set EXPERIENCE='"+exp+"'";
sqlbean.executeUpdate(sqlstring);
上面if(re.next())应该是没有到表单底部就遍历向下执行吧,我现在想把它改为只对表单当前一行进行操作,不想她向下执行应该怎么改呢
吧if(rs.next())改为什么
谢谢 请指导哈
解决方案 »
- 明明是Map里边新值覆盖老值,如果hashCode和equals返回都是一样的话。
- java自带的正则表达式类库的效率
- java2d 怎么实现 mask color功能(即 指定透明色)
- 关于Float.NaN
- 关于Java Applets的问题
- 在哪上JAVA培训班比较好啊~?
- 如果想用Iterator对List进行反复遍历,如何操作?
- 一个方法,编译器承认,编译通过,解释器不承认,运行时抛出NoSuchMethodError异常??这是怎么回事???
- 老问题,在记事本中将回车替换为System.getProperty("line.separator")的最佳方法
- jbuilder 7 编辑器的问题 很让人烦恼
- Thread Sleep 问题
- 各位JAVA高手帮忙,学校的assignment,一点头绪也没有
我发个我这个jsp页面的全部代码上来把
<%@page contentType="text/html;charset=GBK"%>
<%@page import="java.util.*"%>
<%@page import="java.sql.*" %>
<jsp:useBean id="sqlbean" scope="page" class="database.sqlbean" />
<html>
<head>
<title>用户升级</title>
</head>
<body>
<%
request.setCharacterEncoding("gb2312");
String kickname = request.getParameter("kickname");
String Name =(String) session.getAttribute("originname"); ResultSet rs=null;
String sqlstring = "select * from chatuser where username = '" + Name + "'";
rs = sqlbean.executeQuery(sqlstring);
if(rs.next())
{
int exp= rs.getInt("EXPERIENCE");
if (exp>1000)
{
exp= exp - 50;
sqlstring="update chatuser set EXPERIENCE='"+exp+"'";
sqlbean.executeUpdate(sqlstring); synchronized (application) {
Vector UserName=null;
UserName= (Vector)application.getAttribute("UserName");
UserName.remove(kickname);
}
synchronized (application) {
Vector outMessage=null;
outMessage= (Vector)application.getAttribute("Message");
if(outMessage==null)
outMessage= new Vector(30,10);
String outstr="系统公告:<font color=blue>"+kickname+"</font>被踢出了聊天室";
String str1="no";
String systemSpeak = "yes"; outMessage.addElement(str1);
outMessage.addElement(Name);
outMessage.addElement(str1);
outMessage.addElement(outstr);
outMessage.addElement(systemSpeak);
outMessage.addElement(str1);
application.setAttribute("Message", outMessage);
}
sqlbean.freeRs(rs);
out.print("<script>alert(\"该用户已经被踢出!\");");
out.print("window.location=\"advanced.jsp\"</script>");
}
else
{
sqlbean.freeRs(rs);
out.print("<script>alert(\"只有经验大于1000分的用户才能踢人!\");");
out.print("window.location=\"advanced.jsp\"</script>");
}
}
else
{
out.print("<script>alert(\"只有注册用户且经验大于1000才能踢人!\");");
out.print("window.location=\"advanced.jsp\"</script>");
}%>
</body>
</html>
{
int exp= rs.getInt("EXPERIENCE");
//下面这段逻辑上有问题,这样写,如果该记录的exp>1000,就修改所以的记录.
if (exp>1000)
{
exp= exp - 50;
sqlstring="update chatuser set EXPERIENCE='"+exp+"'";
sqlbean.executeUpdate(sqlstring);
应改为
if(rs.next())
{
int exp= rs.getInt("EXPERIENCE");
//从结果集中取出能标志这条记录的主键.
类型 pk = rs.get***("***");
if (exp>1000)
{
exp= exp - 50;
sqlstring="update chatuser set EXPERIENCE='"+exp+"'where 主键字段名 = '"+ pk +"'";
sqlbean.executeUpdate(sqlstring);