String user="root";
root在这里有什么作用,换成别的词行不行?

解决方案 »

  1.   

    话说
    我也不太清楚,我的问题具体是这样的:
    用户登录后,查询自己的个人资料,在定义变量时,有String user="root";我感觉root毫无来由啊,如果仅仅是一个字符串而已,那问题就简单了,但是,它会不会有什么我不知道的作用呢?
      

  2.   


    那你就ctrl + F  在程序里找找  看看有什么地方用到user这个变量了?
      

  3.   

    我的代码:
    <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>密&nbsp;&nbsp;码</td><td><%=pw%></td></tr>
          <tr><td>姓&nbsp;&nbsp;名</td><td><%=name%></td></tr>
          <tr><td>性&nbsp;&nbsp;别</td><td><%=sex%></td></tr>
          <tr><td>出生日期</td><td><%=birthday%></td></tr>
          <tr><td>班&nbsp;&nbsp;级</td><td><%=class1%></td></tr>
          <tr><td></td><td><input name="tijiao" type="submit" value="修改"/><td></tr>
    </table>
    </form >
    结果:
    用户名 null
    密  码 null
    姓  名
    性  别
    出生日期
    班  级
      

  4.   

    为什么用户名为空啊,其他的查询只要用到user的,结果出来用户名都为空,懊恼啊!
      

  5.   

    session.setAttribute("user",user);这句,把root这个值存在"user"  session里了~·
      

  6.   

    可是为什么查询结果总是为null啊?我怎么看这程序,都看不出什么错误,我水平太低,帮帮我吧!
      

  7.   


    呃~·你要是问这个问题你还是去jsp版块问问吧。我这真帮不了你~·
      

  8.   

    首先你的username=request.getParameter("user");
    你直接点的这个页面吧,页面没有user这个参数,所以肯定是null,你用root去查询数据库找记录,有记录才会去赋值给username;密码也是如此。下面的几个你页面开始定义的为空,肯定显示的是空比如你的页面是a.jsp 数据库没有root用户信息,浏览器输入a.jsp?user='root'&pw='123'这样就能显示出来了用户名为root 密码123了
      

  9.   

    <%
      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");
    }
    %>
      

  10.   


    String user = "root";
    ...
    ResultSet rs=stmt.executeQuery("select * from user where username" + "='" + user + "'");
    ...
      

  11.   

    ResultSet rs=stmt.executeQuery("select * from user where username"+"='"+user+"'");
    应该是
    ResultSet rs=stmt.executeQuery("select * from user where username"+"='"+username+"'");吧
      

  12.   

    那如何调用用户输入的username呢?
    这句 username=request.getParameter("user");(其中用户输入的用户名得name属性为user)
    不能调用用户输入的用户名吗?
      

  13.   

    有些是固定用户名啊
    记得红帽子 里有个root