问题描述
我有一个servlet,它查询MysqL db,然后在表中显示数据。我有一列称为类型,它是一个字符串。当我这样做
rs.getString("type")
不使用输入项,我得到完整的字符串(rs是resultSet)。但是当我这样做时:
<input name="class" type="text" value=<%=rs.getString("type")%>>
如果字符串带有空格,即'ABC DEF',那么它将仅具有'ABC'值。或者,如果字符串为“ 1” ABC”,则该值仅为“ 1”。
如何获取完整的价值?
解决方法
我相信您的问题类似于getString from ResultSet with spaces中的问题。您也许应该尝试将rs.getString()的结果存储在变量中,并在HTML中用引号将其显示。例如,如果返回的字符串是“ ABC DEF”,则它看起来像:
<input name="class" type="text" value=ABC DEF>
正确的方法是
<input name="class" type="text" value="ABC DEF">
但是,您的代码非常容易受到SQL注入的攻击。请检查我提供的链接,以更全面地回答您的问题。