String user="root";
root在这里有什么作用,换成别的词行不行?
root在这里有什么作用,换成别的词行不行?
解决方案 »
- 请教如何将DIV悬浮在页面最前端
- ExtJS editorgrid获取store的问题
- 急求 JavaScript 获取iframe内容?急求
- 紧急求助!数据json化时的类型问题。。。
- [求助]Vb.net在客户端动态生成控件
- struts2值栈的问题
- obj.setAttribute("onClick","alert('test')")问题
- 各位大侠支着关于isNull()的问题
- 急求一份javascript写的日历代码,同时支持IE和netscape,能传值,快救命阿,马上交了!
- 一个下拉框和文本框的问题,大家帮忙看看/有分~
- 初学jquery的常件错误,和大家分享下~
- 求解一段代码 含义,坐等回复
我也不太清楚,我的问题具体是这样的:
用户登录后,查询自己的个人资料,在定义变量时,有String user="root";我感觉root毫无来由啊,如果仅仅是一个字符串而已,那问题就简单了,但是,它会不会有什么我不知道的作用呢?
那你就ctrl + F 在程序里找找 看看有什么地方用到user这个变量了?
<body>
<%
String user="root";
String pw="";
String name="";
String sex="";
String birthday="";
String class1="";
String username=request.getParameter("user");
System.out.println(username);
pw=request.getParameter("pw");
session.setAttribute("user",user);
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost/library?user="+user+"&pw="+pw+"&characterEncoding=utf-8");
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("select * from user where username"+"='"+user+"'");
if (rs.next())
{
username=rs.getString("username");
pw=rs.getString("pw");
name=rs.getString("name");
sex=rs.getString("sex");
birthday=rs.getString("birthday");
class1=rs.getString("class1");
}
%>
<form target="right">
<table align="center" border="1">
<tr><td>用户名</td><td><%=username%></td></tr>
<tr><td>密 码</td><td><%=pw%></td></tr>
<tr><td>姓 名</td><td><%=name%></td></tr>
<tr><td>性 别</td><td><%=sex%></td></tr>
<tr><td>出生日期</td><td><%=birthday%></td></tr>
<tr><td>班 级</td><td><%=class1%></td></tr>
<tr><td></td><td><input name="tijiao" type="submit" value="修改"/><td></tr>
</table>
</form >
结果:
用户名 null
密 码 null
姓 名
性 别
出生日期
班 级
呃~·你要是问这个问题你还是去jsp版块问问吧。我这真帮不了你~·
你直接点的这个页面吧,页面没有user这个参数,所以肯定是null,你用root去查询数据库找记录,有记录才会去赋值给username;密码也是如此。下面的几个你页面开始定义的为空,肯定显示的是空比如你的页面是a.jsp 数据库没有root用户信息,浏览器输入a.jsp?user='root'&pw='123'这样就能显示出来了用户名为root 密码123了
String user="root";
String pw="";
String name="";
String sex="";
String birthday="";
String class1="";
String username=request.getParameter("user");//这个request请求传过来的值就为null
System.out.println(username);
pw=request.getParameter("pw");
session.setAttribute("user",user);
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost/library?user="+user+"&pw="+pw+"&characterEncoding=utf-8");
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("select * from user where username"+"='"+user+"'");
if (rs.next())
{
username=rs.getString("username");
pw=rs.getString("pw");
name=rs.getString("name");
sex=rs.getString("sex");
birthday=rs.getString("birthday");
class1=rs.getString("class1");
}
%>
String user = "root";
...
ResultSet rs=stmt.executeQuery("select * from user where username" + "='" + user + "'");
...
应该是
ResultSet rs=stmt.executeQuery("select * from user where username"+"='"+username+"'");吧
这句 username=request.getParameter("user");(其中用户输入的用户名得name属性为user)
不能调用用户输入的用户名吗?
记得红帽子 里有个root