为了账号安全,请及时绑定邮箱和手机立即绑定

关于在jsp中String = null 和String = “”的使用问题!

关于在jsp中String = null 和String = “”的使用问题!

月亮岛Superman 2017-08-04 13:32:18
<%@ page language="java" contentType="text/html; charset=gbk"    pageEncoding="gbk"%><%@ page import="java.sql.*"%><%!String str = null;    private void tree(Connection conn, int id, int level) {        Statement stmt = null;        ResultSet rs = null;        String preStr = "";        for (int i = 0; i < level; i++) {            preStr += "----";        }        try {            stmt = conn.createStatement();            String sql = "select * from article where pid = " + id;            rs = stmt.executeQuery(sql);            while (rs.next()) {                str += "<tr><td>" + rs.getInt("id") + "</td><td>" + preStr + rs.getString("title") + "</td></tr>";                if (rs.getInt("isleaf") != 0) {                    tree(conn, rs.getInt("id"), level + 1);                }            }        } catch (Exception e) {            e.printStackTrace();        } finally {            try {                if (rs != null) {                    rs.close();                    rs = null;                }                if (stmt != null) {                    stmt.close();                    stmt = null;                }            } catch (SQLException e) {                e.printStackTrace();            }        }    }%><%    Class.forName("com.mysql.jdbc.Driver");    //System.out.println("1");    String url = "jdbc:mysql://localhost/test?user=root&password=root";    Connection conn = DriverManager.getConnection(url);    Statement stmt = conn.createStatement();    ResultSet rs = stmt.executeQuery("select * from article where pid = 0");    //System.out.println("2");    while (rs.next()) {        str += "<tr><td>" + rs.getInt("id") + "</td><td>" + rs.getString("title") + "</td></tr>";        System.out.println(str);        if (rs.getInt("isleaf") != 0) {            tree(conn, rs.getInt("id"), 1);        }    }    rs.close();    stmt.close();    conn.close();%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=gbk"><title>Insert title here</title></head><body>    <table border="1"><%=str%></table></body></html>问题: String str = null;  如果我这样使用 浏览器中显示结果为    在表格上方会有一个null  但是我用String str = “”就不会出现这种问题,这是为什么呢?
查看完整描述

2 回答

?
拖鞋_

TA贡献453条经验 获得超223个赞

JSP 不要学了  现在都是前端静态化  为了  放入CDN   JSP  什么的都不支持的

查看完整回答
1 反对 回复 2017-08-04
?
qq_逆流河_0

TA贡献1条经验 获得超0个赞

null标示你这个String对象不指向具体的内存数据,“”标识你这个对象指向的内存内容是空字符串

查看完整回答
反对 回复 2017-08-04
  • 月亮岛Superman
    月亮岛Superman
    正因为不指向具体内存数据所以说不可能 在页面上显示null啊 这是怎么回事呢
  • 2 回答
  • 0 关注
  • 1820 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信