java中execquery(),Java CPStringBuilder.delete方法代码示例

本文介绍了如何使用GNU.java.lang.CPStringBuilder类解析URI,针对给定的URI进行规范化处理,包括处理绝对URI、Opaque URI,以及URI的各个部分(scheme、authority、path、query和fragment)。遇到问题时会抛出异常并提供错误原因。
摘要由CSDN通过智能技术生成

import gnu.java.lang.CPStringBuilder; //导入方法依赖的package包/类

/**

* Resolves the given URI against this URI

*

* @param uri The URI to resolve against this URI

*

* @return The resulting URI, or null when it couldn't be resolved

* for some reason.

*

* @throws NullPointerException if uri is null

*/

public URI resolve(URI uri)

{

if (uri.isAbsolute())

return uri;

if (uri.isOpaque())

return uri;

String scheme = uri.getScheme();

String schemeSpecificPart = uri.getSchemeSpecificPart();

String authority = uri.getAuthority();

String path = uri.getPath();

String query = uri.getQuery();

String fragment = uri.getFragment();

try

{

if (fragment != null && path != null && path.equals("")

&& scheme == null && authority == null && query == null)

return new URI(this.scheme, this.schemeSpecificPart, fragment);

if (authority == null)

{

authority = this.authority;

if (path == null)

path = "";

if (! (path.startsWith("/")))

{

CPStringBuilder basepath = new CPStringBuilder(this.path);

int i = this.path.lastIndexOf('/');

if (i >= 0)

basepath.delete(i + 1, basepath.length());

basepath.append(path);

path = normalizePath(basepath.toString());

}

}

return new URI(this.scheme, authority, path, query, fragment);

}

catch (URISyntaxException e)

{

throw (Error) new InternalError("Resolved URI variant could not "+

"be constructed").initCause(e);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值