urljava
『壹』 java中url和uir有什麼區別
URI是URL的一個抽象,它不僅包括了統一資源定位符(URL),還包括了統一資源名(URN).大多數實際應用中使用的URI都是URL,但是許多規范和標准像XML都是用URI來定義的.在java1.4和更新的版本中, URI被java.net.URI 類所表示.這個類與java.net.URL 相比有如下3點重要的區別:
· URI 類只關心資源的標識和對URI的解析.它沒有方法來檢索它的URI所標識的資源。
· URI 類與URL 類相比,它更能適應相關的規范。
· 一個URI 對象能表示一個相對URI 。URL 類在存放之前,就已經對所有的URI進行了「絕對化」的處理。
看著是不是有點暈?
簡單的這么理解吧,URL是統一資源定位符,URI是統一資源標識符,URL是URI的一種,但在Java裡面不是一種類型,兩個類也沒有繼承關系,但各自提供了toURL()和toURI()來相互轉換,在需要的時候放上相應的類型。
『貳』 用java怎麼寫URL介面
在java中,調用http請求介面,主要通過流的方式進行調用,示例介面如下:
/**
* 程序中訪問http數據介面
*/
public String searchLoginService(String urlStr) {
/** 網路的url地址 */
URL url = null;
/** http連接 */
HttpURLConnection httpConn = null;
/**//** 輸入流 */
BufferedReader in = null;
StringBuffer sb = new StringBuffer();
try{
url = new URL(urlStr);
in = new BufferedReader( new InputStreamReader(url.openStream(),"UTF-8") );
String str = null;
while((str = in.readLine()) != null) {
sb.append( str );
}
} catch (Exception ex) {
logger.error(ex.getMessage(), ex);
} finally{
try{
if(in!=null) {
in.close();
}
}catch(IOException ex) {
logger.error(ex.getMessage(), ex);
}
}
String result =sb.toString();
System.out.println(result);
return result;
}
『叄』 java如何提取url里的域名
java.net.URL 而不是 java.Net.URL
使用getHost獲取到的域名信息存在安全漏洞,例如:http://127.0.0.1\.123.cn/1.htm這個URL使用getHost得到的域名是127.0.0.1\.123.cn。
建議使用正則表達式
『肆』 java語言里url是什麼東西
就是網路資源的路徑,通過它就可以引用相關的網路資源。
『伍』 java如何將字元串轉化為URL
將字元串轉換成URL可以使用創建一個URL對象,並將字元串賦給這個URL對象。
參考代碼如下:
String str = "填寫字元串的鏈接地址";
try {
URL url = new URL(str);
} catch (MalformedURLException e) {
e.printStackTrace();
}
注意,創建URL對象會有異常,所以使用try處理拋出的異常。
『陸』 java中如何實現URL類
java中實現URL類,可以使用java工具類中的URL的類,實例如下:
importjava.io.*;
importjava.net.*;
publicclassURLTest
{
publicstaticvoidmain(String[]args)
{
try
{
URLurl=newURL("http://sports.163.com:80/nba/");//創建資源類型
Stringprotocol=url.getProtocol();//獲取資源類型
Stringhost=url.getHost();//獲取域名
intport=url.getPort();//獲取埠
Stringfile=url.getFile();//獲取路徑
System.out.println("url地址的資源類型為:"+protocol+"域名為:"+host+"埠為:"+port+"路徑為:"+file);
InputStreamis=url.openStream();//獲取頁面信息流
BufferedReaderbfr=newBufferedReader(newInputStreamReader(is));//封裝成字元流
Stringlen;
while((len=bfr.readLine())!=null)
{
System.out.println(len);
}
bfr.close();
is.close();
}
catch(MalformedURLExceptione)
{
System.out.println("創建URL對象發生異常");
}
catch(IOExceptione)
{
System.out.println("發生IO操作異常");
}
}
}
『柒』 java怎樣獲取url參數
如果是javaweb 項目,那麼非常簡單,直接調用 HttpServletRequest 對象的 .getParamter("參數名稱") 方法即可得到。
如果是普通java 項目:
/**
* 獲取網址的指定參數值
*
* @param url
* 網址
* @param parameter
* 參數名稱
* @author cevencheng
* @return
*/
public static String getParameter(String url, String parameter, String defaultValue) {
try {
final String charset = "utf-8";
url = URLDecoder.decode(url, charset);
if (url.indexOf('?') != -1) {
final String contents = url.substring(url.indexOf('?') + 1);
HashMap<String, String> map = new HashMap<String, String>();
String[] keyValues = contents.split("&");
for (int i = 0; i < keyValues.length; i++) {
String key = keyValues[i].substring(0, keyValues[i].indexOf("="));
String value = keyValues[i].substring(keyValues[i].indexOf("=") + 1);
if (key.equals(parameter)) {
if (value == null || "".equals(value.trim())) {
return defaultValue;
}
return value;
}
map.put(key, value);
}
}
return null;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
『捌』 用Java判斷一個URL是否有效的兩種方法
importjava.io.InputStream;
importjava.net.URL;
publicclassTest{
publicstaticvoidmain(String[]args){
URLurl;
try{
url=newURL("http://www..com");
InputStreamin=url.openStream();
System.out.println("連接可用");
}catch(Exceptione1){
System.out.println("連接打不開!");
url=null;
}
}
}
2
importjava.net.HttpURLConnection;
importjava.net.URL;
/**
*文件名稱為:URLAvailability.java
*文件功能簡述:描述一個URL地址是否有效
*@authorJason
*@time2010-9-14
*
*/
publicclassURLAvailability{
privatestaticURLurl;
;
privatestaticintstate=-1;
/**
*功能:檢測當前URL是否可連接或是否有效,
*描述:最多連接網路5次,如果5次都不成功,視為該地址不可用
*@paramurlStr指定URL網路地址
*@returnURL
*/
(StringurlStr){
intcounts=0;
if(urlStr==null||urlStr.length()<=0){
returnnull;
}
while(counts<5){
try{
url=newURL(urlStr);
con=(HttpURLConnection)url.openConnection();
state=con.getResponseCode();
System.out.println(counts+"="+state);
if(state==200){
System.out.println("URL可用!");
}
break;
}catch(Exceptionex){
counts++;
System.out.println("URL不可用,連接第"+counts+"次");
urlStr=null;
continue;
}
}
returnurl;
}
publicstaticvoidmain(String[]args){
URLAvailabilityu=newURLAvailability();
u.isConnect("http://www..com");
}
}
『玖』 Java:URL中的#是什麼意思呢
#號是客戶端參數,#號之後的參數就不會傳入到服務端,用於網頁位置定位,
比如http://www.example.com/index.html#print
瀏覽器會自動聚焦到id='print'的區塊,網路詞條目錄就是這么做的,可以看下。
『拾』 JAVA URLa=1傳參方式怎麼寫 急,最好有實際案例 求組
前台請求--->http://localhost:8080/login/info.do?username=xxxx&password=xxxxx'
後台代碼--->@RequestMapping("/info.do")
public void loginInfo(HttpServletRequest request, HttpServletResponse response) throws Exception{
response.setCharacterEncoding("UTF-8");
String username = request.getParameter("username")==null?"0":request.getParameter("username");
String password = request.getParameter("password")==null?"0":request.getParameter("password");
}
這樣後台就接收到 username和password這兩個參數了
希望能幫到你!!!