gpt4 book ai didi

java - 数据库列大小约束的文本区域最大长度问题

转载 作者:搜寻专家 更新时间:2023-10-30 23:16:15 25 4
gpt4 key购买 nike

我一直在网上搜索支持,但没有找到任何有用的东西。

我有一个数据库表,其中有一列包含 1500 个字符的大小限制。我将 hibernate 用作数据库的 ORM。

我的问题是 HTML 文本区域中的换行 字符。在我的 HTML 表单中,我有一个 ma​​xlength 设置为 1500 的文本区域。在 HTML 文本区域中,换行符 仅被视为ONE 字符。当我通过 servlet 提交表单时,newline 字符在 java 中被视为两个字符。

所以假设我用 1500 字符填充了文本区域,其中包含 2 个换行符,java 将数据视为 1502人物。因此,当我将数据保存到数据库时,它超过了 1500 限制,因此违反了数据库列约束。

示例文本:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus in est eu augue facilisis viverra. Phasellus eu lectus a nisi feugiat aliquet quis ut velit. Nunc vehicula neque sit amet quam interdum viverra. Morbi aliquet consequat lorem non rhoncus. Sed mauris mi, scelerisque sit amet tempus molestie, dapibus vitae quam. Proin id massa velit, commodo facilisis velit. In blandit, nibh quis auctor convallis, lectus nibh venenatis orci, quis dignissim sapien arcu eget erat. In quis diam id mauris consectetur tempor sit amet sit amet justo. Donec egestas metus eu massa vestibulum ultrices. Quisque vitae scelerisque metus. Vestibulum vehicula mi id augue condimentum pellentesque.

Suspendisse tempus turpis lobortis turpis imperdiet vulputate. Fusce fringilla lorem et ligula feugiat id sodales nisi vehicula. Praesent egestas vestibulum ante, eget consequat magna molestie sit amet. Praesent egestas pharetra augue egestas imperdiet. Suspendisse ut elit augue, sit amet ornare nulla. Morbi cursus, diam at commodo gravida, elit lacus pulvinar lectus, vitae porttitor mauris sapien sed felis. Vestibulum non iaculis erat. Phasellus pharetra arcu sed dui porta tempus. Mauris lectus velit, cursus quis facilisis a, mattis rhoncus quam. Ut nisl nulla, malesuada imperdiet dictum id, sagittis quis orci. Duis bibendum pharetra quam eu pharetra. Fusce interdum nulla vel elit bibendum non pellentesque dui egestas. Praesent sed lacus sapien. Vesbulum id arcu neque, et faucibus lorem. Fusce metus.

段落之间的空隙包含 2 个换行符

我需要知道的是如何从 HTML 到 Java 对 newline 字符进行不同的解释?

感谢您的帮助。

最佳答案

您可以将 \r\n 样式的行结尾替换为 \n 行结尾:

str = str.replaceAll("(\\r)", "");

这应该只留下 \n 行尾。

关于java - 数据库列大小约束的文本区域最大长度问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13130133/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com