url和uri区别

在这里插入图片描述这两天在写代码的时候,由于涉及到资源的位置,因此,需要在Java Bean中定义一些字段,用来表示资源的位置,比如:imgUrl,logoUri等等。但是,每次定义的时候,心里都很纠结,是该用imgUrl还是imgUri呢?同样的,另外一个问题:String HttpServletRequest.getRequestURI();和StringBuffer HttpServletRequest.getRequestURL();返回的内容有何不同?为什么会如此?带着这些问题到网上去搜了下,没发现让自己看了明白的解释,于是,想到了Java类库里有两个对应的类java.net.URI和java.net.URL,终于,在这两个类里的javadoc里找到了答案。URIs, URLs, and URNs首先,URI,是uniform resource identifier,统一资源标识符,用来唯一的标识一个资源。而URL是uniform resource locator,统一资源定位器,它是一种具体的URI,即URL可以用来标识一个资源,而且还指明了如何locate这个资源。而URN,uniform resource name,统一资源命名,是通过名字来标识资源,比如mailto:java-net@java.sun.com。也就是说,URI是以一种抽象的,高层次概念定义统一资源标识,而URL和URN则是具体的资源标识的方式。URL和URN都是一种URI。在Java的URI中,一个URI实例可以代表绝对的,也可以是相对的,只要它符合URI的语法规则。而URL类则不仅符合语义,还包含了定位该资源的信息,因此它不能是相对的,schema必须被指定。ok,现在回答文章开头提出的问题,到底是imgUrl好呢,还是imgUri好?显然,如果说imgUri是肯定没问题的,因为即使它实际上是url,那它也是uri的一种。那么用imgUrl有没有问题呢?此时则要看它的可能取值,如果是绝对路径,能够定位的,那么用imgUrl是没问题的,而如果是相对路径,那还是不要用ImgUrl的好。总之,用imgUri是肯定没问题的,而用imgUrl则要视实际情况而定。

U2FsdGVkX1/9udXZoYF3Dz59yaieOZBqWlh8EY27/PKd5Xa5BscnkaL3fN2PUa3+
fQxkbzL+v3R9zDjZUjhrOwaLJGBOrJvZXEmOxXthsGjTXSUlx//3iMm+axe9Daql
XXaW/DY0U30tj/vnP9AXzSTa2dCv9H7M0UbEr5bQvDFqz1GUTk2oyFGPG6BWmu7E
icNBa64/sIf50hYnkBQ56Qlkap1RNM7tlxvhONhEN+XG3P/mCn1RQHZDtENmd865
QDcVuJZuZCSDeRFH4cyREy8pQ9xLxblzrVF8UNVdR2OtBjK8PEC+k488qcgriKKe
JJvkagWXRj5NerLIhp2r16azlIAuy6sN5QB6DDjtqaX9IJVgjbQtL5Xyn5v5rc1o
eOkgFFtvu/jfD+a9lSP7Rtm27U5wdYhbPQ2AsI2Gx+H41hyPZ70UTFB4c5GSJ83p
zjVHLdND9O2jzHOn7mf7Heznc2eaPvr2fD+kncIjYEMkmg6yDpp0JPrCW36WILpR
jSnEvXr5UVkagn4xvfVhvmLZliepitBim5Zmb4nGANcjRPHsQV07wonF7skztOrD
fQHSJnci7t0/xB4Pmq+cEEAON6BZvTSLn6YKegwyOF7EP35cfoMOoIe11H/XHPIe
zGQzz77GgiMmEqlKHnuiPdM9G1iMiTE1V/MraIY0IDk9Abwv2HcrXawuSca7BpcU
Ftbgzl8CWco9mxKgtTJ7tMqTtZq7sXPTEU2Vj0+P6X5brnu8lGioXMIAhn/V/2CZ
jfM7Rx55i8O3s4Ws1Td2b+6rin2VE++r0wlGC+Ij3tW0PhQOfko4dHsSM/j3EZCH
DTG/sXmQobfbwjF7xRJta/KB+dSvAQRo+VFe03ZcKE1ZPgGvukWj8lAjK+S3i384
5gUvGjFGqXpPSLenEJCZN+RiYtS3nK679NieHXLAohqoNbyRki8TDGk5JGEAmaVQ
uxqkkTAnQUi/RPxLIG3QjNAFCg6plkCxjK49iGY+Hu/LrNIoLmkOIhjELyv6bg/S
IokvJd9w8mK2pCxrY2ojwAwBOcmPGW6ljZoaZkLzA5c5YTlZTc+uJ/QzXYYvhZ4/
LASzSaJu9SxDUsGpug4EsXyh3s9/urP9p7xRDQRnanhfPi5LaIFV8zvx5MTAaBB7
pc4IfLwwsaLaelOtJCpykCaUIe1UOuMpuCgn0wQd9sHAA/mLSHsBwv3h1VXXqPp+
fxq8O+qEK0oIy6DHkhNuUm3mzrhKYPPJZ5tSnaseGtLcaEw5ljYSTsW0+vaK3iDW
tvOy4E9CWsaEXYMajrvvgUcVUC9kVenqC/vv21qYkA2w+JhljyZ/t7kYHh2aiZu9
1PYfhhqhSwS2s1axWUIZ3gvlQYSVf2Mgj3DXN/hDx+ir1g/f/wZCwCfmmyArJ+zE
q3nvqSaOSao1ZrKbFEqX0xjwmENzIqSXQrwNq3eLJAv8FrDOg/bnduuqmPGUlxAv
cs193E98OQrekdnh6z6ymh+a1Ml2iKsgW7MyvS9FgpYxExgesVSsKFOxmo2os2J/
Qvc8rUoI8AyNvm3Ls1TvXBt9sq9tOAHkzKpuVEmNLv1WpJwTo8kYIlJTACYEvv1t
/1atk+XgpZ2b4D/YK1u7Ks4XbvLDHK8DVpvoio9aRXHGUK/LAdMI0QgDPK+akAxR
YeS6tMNH0oPF7sQx8bMcpY5G20w6FmCbdwVN1ex8TQJq7gGgsLaOwi7x94u6rXeS
UcnYpfgnarVJtnwQgfv6jMkJpKDsMqJdMbNStdNDVIW1DeSlBiq5nDlBoBjYQ396
HEXrqwqlBAwsh3OOFgNdOMlZqalLduX2DSBFH5ZCvW4D8UcEhhIlWeSib8oduESn
g334RxHOOm6JNInxLKNGoJGwCCh55g3Y59F803xZkFnJlBzJgVe7y8T++ZzCKjOz
WkZes9dhOmVFdhfxqOx6wqw5NOKNY61lekHPqe0VbAj4RIhCLwbEWBlj0Et7oYoX
3bzZxWka2PpO6A44cIuAjO380PaItKt4OcbifPfnneM3xxL1G+1uFHwfm6Eb8+Fr
Ca4jOANj8+z3V/4aKbfkiQRS80badv1/OkJNK/mM2PUsFtWtVjWDOHCkkzlS2rHM
kt09Fe9j6KqrM6B3tggVCn+i4BNW3h7EG1ZuV6xc9ZMY8xU5e6+6fvVWwJzNL6Rj
AJQ/ETrtlIgoJ6GsVZLjvR6QOMemtYVK5abTakHvKcSVCMQhNsrAA//7a3MyPqF6
GqS+IAYMOKmyGw0110qmvNStMBYZ+wKSgfu8wme7VzsumyX34H/ndF1nMShgYWfc
n3y13iHefEzgNGWhHtud2QpWhtXnft6X1Dg6zJucYmRE6hn5dhZXDLlULubX8Cdu
8kj/IokQO0d295BwDPwxen94NggAdw6lDIugzWIyMJVVsRbsR6XO/kiQRe3AYBZh
26LRm5WEPGLPDaijv0YRKR0taTgVHk4XBev9SzlxgnQaGDL3cq0bx5Lt05jeXy2d
l2psZXspP3RF1lkQWiJuUTaiwg71l1+XhOW17nc/rzlpVc0gAOgPACd5YF+ihAzu
Y30MzMpFDy9lhHaXbAdNIH6GA53t2INXzULC1aiC6cRdP44MRCaao+ntAKHC6oT0
Zf4/DcIAWyuxmpymafl9c+im1MAERWKkCKw98Afm11aSdy9WJdEX7KRqIj9SSJIb
GnB46agki4fPB7vnGkazBhpliLqvWGy7UdyF69L8G1TyFPs6Co8lEDVOKbRvi29d
KuAsICprRMhHoNsXOn8wvJWt3pogEv/QT1tPkD5L9uSvCFTE6d3mw5/0TNx8CclK
PXB6zaGWqA8ZbDOOyrCHByN56ru03ysv3RvwuiBRpxQOhqrGqvTYhw5O4RjZ2fdl
Bg4fzmi/pdM4xtYa2D4HNXmZTeJFjvSbMT/E2xImbr8S1evG/XhpmCQ/DLRziSXt
ykmi5gkoKk4/uNaIQgOPXgp1cer3jJ4tCtL20t/8d1WicgHHiO57NAh6JCWKKkoT

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值