有没有办法在Java中缩短URL以方便地存储到数据库中

有没有办法在Java中缩短URL以方便地存储到数据库中,java,url,Java,Url,我有一个要求,作为附件用户可以从sharepoint添加链接 这样我们就可以保存附件的链接[路径],而不是实际的附件。 为此,我们计划设计一个名为varchar(512)的列。最初 我们认为这将适合任何类型的网址有效,但有时我们发现这是太紧 用于保存到数据库中。我的观点是 这是正确的设计吗 我们计划使用TinyURL.com,但我们不能保证所有用户都有互联网(目标用户在组织中可以或不能访问互联网)。所以排除了这个选择 java是否提供了缩短URL的API 提前感谢任何API都是应用程序的接口,因

我有一个要求,作为附件用户可以从sharepoint添加链接 这样我们就可以保存附件的链接[路径],而不是实际的附件。 为此,我们计划设计一个名为varchar(512)的列。最初 我们认为这将适合任何类型的网址有效,但有时我们发现这是太紧 用于保存到数据库中。我的观点是

  • 这是正确的设计吗
  • 我们计划使用TinyURL.com,但我们不能保证所有用户都有互联网(目标用户在组织中可以或不能访问互联网)。所以排除了这个选择
  • java是否提供了缩短URL的API

  • 提前感谢

    任何API都是应用程序的接口,因此在该API后面必须有一个应用程序保存从缩短链接到原始链接的映射。为此,您需要一个包含两列的表,其中一列包含超过512个字符


    简言之,您只需引入另一种复杂性来解决当前的数据库模式。为什么不调整现有应用程序的模式以允许超过512个字符?在我看来,如果链接长度超过512个字符,这似乎是最合适的更改。

    一般来说,如果不删除有用的信息,URL就不能缩短。TinyURL.com等服务通过维护“短URL”到“完整URL”映射的数据库来工作。如果您想缩短URL,您需要自己在内部实现类似的内容,因此无论如何都需要一个单独的表来保存此映射。你只是把问题转移到别的地方

    我想您只需要定义一个合适的URL长度限制,并相应地定义您的列