Java 从数据库检索数据时,如何编辑xsl以保持格式?

Java 从数据库检索数据时,如何编辑xsl以保持格式?,java,oracle,jsp,xslt,Java,Oracle,Jsp,Xslt,我有以下xsl代码片段,它从数据库检索数据,并在jsp页面上创建一个表: <xsl:template match="Rows"> <xsl:for-each select="child::*"> <tr> <xsl:choose> <xsl:when test="position() mod 2 = 0"> <x

我有以下xsl代码片段,它从数据库检索数据,并在jsp页面上创建一个表:

<xsl:template match="Rows">
    <xsl:for-each select="child::*">
        <tr>
            <xsl:choose>
                <xsl:when test="position() mod 2 = 0">
                    <xsl:attribute name="class">LightRow</xsl:attribute>
                </xsl:when>
                <xsl:otherwise>
                    <xsl:attribute name="class">DarkRow</xsl:attribute>
                </xsl:otherwise>
            </xsl:choose>
            <xsl:attribute name="id">row_<xsl:value-of select="Field[@ColumnName='ID']"/></xsl:attribute>
            <xsl:attribute name="OnMouseOver">mouseHandler(this.id, 'over');</xsl:attribute>
            <xsl:attribute name="OnMouseOut">mouseHandler(this.id, 'out');</xsl:attribute>
            <xsl:attribute name="onClick">formSubmitBase('<xsl:value-of select="Field[@ColumnName='ID']"/>');</xsl:attribute>
            <td>
                <xsl:value-of select="Field[@ColumnName='ID']"/>
                <xsl:text disable-output-escaping="yes">&amp;nbsp;&amp;nbsp;&amp;nbsp;</xsl:text>
            </td>
            <td>
                <xsl:value-of select="Field[@ColumnName='NAME']"/>
            </td>
            <td>
                <xsl:value-of select="Field[@ColumnName='STATUS']"/>
            </td>
            <td>
                <xsl:value-of select="Field[@ColumnName='DESCRIPTION']"/>
            </td>
        </tr>
    </xsl:for-each>
</xsl:template>

灯塔
暗室
划船_
鼠标手柄(this.id,'over');
鼠标手柄(this.id,“out”);
formSubmitBase(“”);
&;nbsp&;nbsp&;nbsp;
在JSP页面上,有一个
textarea
输入字段,用于收集描述数据,这里键入的描述应该保留新行,这一点很重要。我可以看到,在数据库中,新行格式是可以的,如果我复制文本并将其粘贴到记事本中(来自plsql developer),新行就可以了。但是在用上面的代码将一个表填充到JSP页面之后,描述部分会释放新行字符

使用xsl生成的这个表位于同一页面上,输入字段位于该页面上,单击一行时,输入字段将重新填充数据。问题是,在提交新行并单击它重新填充输入字段后,新行就消失了


我正在使用oracledb。新行
\r\n
是如何表示的?当描述插入到
textarea
输入字段中时,如何转换XSL描述部分以保留新行?

我在您的代码片段中没有看到任何
textarea
,因此假设您正在谈论

<td>
    <xsl:value-of select="Field[@ColumnName='DESCRIPTION']"/>
</td>

然后把它改成

<td>
    <pre style="white-space: pre;"><xsl:value-of select="Field[@ColumnName='DESCRIPTION']"/></pre>
</td>

或许

<td>
    <pre style="white-space: pre-wrap;"><xsl:value-of select="Field[@ColumnName='DESCRIPTION']"/></pre>
</td>