導航:首頁 > 編程語言 > java取當前url

java取當前url

發布時間:2022-05-21 09:20:49

Ⅰ 用java做分頁時,如何獲取url

httpServletRequest.getRequestURI();
或者
string url = HttpContext.Current.Request.Url.ToString();
//獲取當前頁的URL
或者
設置參數 前台傳參:....&url=.... 後台接值: request.getParameter("url")
java 後台分頁 httpServletRequest.getRequestURI();
建議用AJAX,這樣可以不需要獲取 url

Ⅱ java如何提取url里的域名

方法1:正則
(http://)或者(https://)開頭
往後面匹配三個點,
不會的話網路一波。
然後把最後的點去掉
就可以得到域名
方法2:
將URL字元串轉換為charArray
遍歷 對.(點)的次數進行記數
第三次當前返回下標
用SubString切割字元串獲取域名

Ⅲ java獲取URL

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;

public class GetLinks {
private String webSource;
private String url;

public GetLinks(String url) throws MalformedURLException, IOException {
this.url = Complete(url);
webSource = getWebCon(this.url);
}

private String getWebCon(String strURL) throws MalformedURLException,
IOException {
StringBuffer sb = new StringBuffer();
java.net.URL url = new java.net.URL(strURL);
BufferedReader in = new BufferedReader(new InputStreamReader(url
.openStream()));
String line;
while ((line = in.readLine()) != null) {
sb.append(line);
}
in.close();
return sb.toString();
}

private String Complete(String link)throws MalformedURLException{
URL url1 = new URL(link);
URL url2 = new URL(link+"/");
String handledUrl = link;
try{
StringBuffer sb1 = new StringBuffer();
BufferedReader in1 = new BufferedReader(new InputStreamReader(url1
.openStream()));
String line1;
while ((line1 = in1.readLine()) != null) {
sb1.append(line1);
}
in1.close();

StringBuffer sb2 = new StringBuffer();
BufferedReader in2 = new BufferedReader(new InputStreamReader(url2
.openStream()));
String line2;
while ((line2 = in2.readLine()) != null) {
sb2.append(line2);
}
in1.close();

if(sb1.toString().equals(sb2.toString())){
handledUrl = link+"/";
}
}catch(Exception e){
handledUrl = link;
}
return handledUrl;

}

/**
* 處理鏈接的相對路徑
* @param link 相對路徑或絕對路徑
* @return 絕對路徑
*/
private String urlHandler(String link) {
if (link == null)
return null;
link = link.trim();

if (link.toLowerCase().startsWith("http://")
|| link.toLowerCase().startsWith("https://")) {
return link;
}
String pare = url.trim();
if (!link.startsWith("/")) {
if (pare.endsWith("/")) {
return pare + link;
}

if (url.lastIndexOf("/") == url.indexOf("//") + 1 || url.lastIndexOf("/") == url.indexOf("//") + 2) {
return pare + "/" + link;
} else {
int lastSeparatorIndex = url.lastIndexOf("/");
return url.substring(0, lastSeparatorIndex + 1) + link;
}
}else{
if (url.lastIndexOf("/") == url.indexOf("//") + 1 || url.lastIndexOf("/") == url.indexOf("//") + 2) {
return pare + link;
}else{
return url.substring(0,url.indexOf("/", url.indexOf("//")+3)) + link;
}
}
}

public List<String> getAnchorTagUrls() {
if (webSource == null) {
System.out.println("沒有網頁源代碼");
return null;
}
ArrayList<String> list = new ArrayList<String>();
int index = 0;
while (index != -1) {
index = webSource.toLowerCase().indexOf("<a ", index);
if (index != -1) {
int end = webSource.indexOf(">", index);
String str = webSource.substring(index, end == -1 ? webSource
.length() : end);
str = str.replaceAll("\\s*=\\s*", "=");
if (str.toLowerCase().matches("^<a.*href\\s*=\\s*[\'|\"]?.*")) {// "^<a\\s+\\w*\\s*href\\s*=\\s*[\'|\"]?.*"
int hrefIndex = str.toLowerCase().indexOf("href=");
int leadingQuotesIndex = -1;
if ((leadingQuotesIndex = str.indexOf("\"", hrefIndex
+ "href=".length())) != -1) { // 形如<a
// href=".....">
int TrailingQuotesIndex = str.indexOf("\"",
leadingQuotesIndex + 1);
TrailingQuotesIndex = TrailingQuotesIndex == -1 ? str
.length() : TrailingQuotesIndex;
str = str.substring(leadingQuotesIndex + 1,
TrailingQuotesIndex);
str = urlHandler(str);
list.add(str);
System.out.println(str);
index += "<a ".length();
continue;
}

if ((leadingQuotesIndex = str.indexOf("\'", hrefIndex
+ "href=".length())) != -1) { // 形如<a
// href='.....'>
int TrailingQuotesIndex = str.indexOf("\'",
leadingQuotesIndex + 1);
TrailingQuotesIndex = TrailingQuotesIndex == -1 ? str
.length() : TrailingQuotesIndex;
str = str.substring(leadingQuotesIndex + 1,
TrailingQuotesIndex);
str = urlHandler(str);
System.out.println(str);
list.add(str);
index += "<a ".length();
continue;
}

int whitespaceIndex = str.indexOf(" ", hrefIndex
+ "href=".length()); // 形如<a href=
// http://www..com >
whitespaceIndex = whitespaceIndex == -1 ? str.length()
: whitespaceIndex;
str = str.substring(hrefIndex + "href=".length(),
whitespaceIndex);
str = urlHandler(str);
list.add(str);
System.out.println(str);

}
index += "<a ".length();
}
}
return list;
}

public static void main(String[] args) throws Exception {
GetLinks gl = new GetLinks("http://www..com");
List<String> list = gl.getAnchorTagUrls();
for(String str:list) {
System.out.println(str);
}
}
}

Ⅳ 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最終指向了哪裡

java中確定url指向最終是靠頁面跳轉實現的。

一、跳轉到新頁面,並且是在新窗口中打開頁面:
function openHtml()
{
//do someghing here...
window.open("xxxx.html");
}
window是一個javascript對象,可以用它的open方法,需要注意的是,如果這個頁面不是一相相對路徑,那麼要加「http://」,比如:
function openHtml()
{
window.open("http://www..com");
}

二、在本頁面窗口中跳轉:
function totest2()
{
window.location.assign("test2.html");
}
如果直接使用location.assgin()也可以,但是window.location.assign()更合理一些,當前窗口的location對象的assign()方法。
另外,location對象還有一個方法replace()也可以做頁面跳轉,它跟assign()方法的區別在於:
replace() 方法不會在 History 對象中生成一個新的紀錄。當使用該方法時,新的 URL 將覆蓋 History 對象中的當前紀錄。

Ⅵ java 獲取url 中的參數請問以下代碼中的 url地址該怎麼寫

String
url
=
request.getScheme()+"://";
//請求協議
http

https
url+=request.getHeader("host");
//
請求伺服器
url+=request.getRequestURI();
//
工程名
if(request.getQueryString()!=null)
//判斷請求參數是否為空
url+="?"+request.getQueryString();
//
參數

Ⅶ java怎麼獲取url上的參數

request.getParameter("xxx");

Ⅷ JAVA的監聽程序如何獲取系統訪問的URL路徑

ServletContextListener
這個類
在web.xml
配置完成後
在tomcat

開啟的時候
會自動執行
void
contextInitialized(ServletContextEvent
arg)
這個方法
在這裡面
arg.getServletContext().getResource("/").toString()這個
好像可以獲得
你說的那個東西
不知道對不對
這個輸出的結果是
jndi:/ip/部署名稱不知道是不是你想要的

Ⅸ java怎麼通過get方式獲取url的結果

您好,提問者: GET xxx HTTP/1.1首先這是固定的,如果是get方式提交的話,那麼第一行必定是這個。 可以通過readLine()讀取第一行,如下代碼: //這樣獲取的是get提交的數組,空格分割 String[] getTitle = xx.readLine().split(" +"); String g...

Ⅹ 怎麼用java獲取瀏覽器中url的值,比如自己編寫一個程序,當前瀏覽器顯示為百度,如何獲取url詳細一點

function QueryString (val)
{
var uri = window.location.search;
var re = new RegExp("" +val+ "=([^&?]*)", "ig");
return ((uri.match(re))?(uri.match(re)[0].substr(val.length+1)):null);
}
比如 url地址 www.1234.com/page.html?aa=1&bb=2 獲取aa的值
var cc = QueryString('aa');

閱讀全文

與java取當前url相關的資料

熱點內容
生意不忙怎麼解壓 瀏覽:500
歡太健康app在哪裡下載 瀏覽:488
androidtools使用教程 瀏覽:971
十天突破雅思口語pdf劍9 瀏覽:295
李誕笑場pdf 瀏覽:265
自用紙巾做解壓筆 瀏覽:129
銀行流水解壓碼是多少 瀏覽:895
百度哪個app好用 瀏覽:316
115廣告聯盟源碼 瀏覽:494
聯通app簽到源碼 瀏覽:680
怎麼連接另一個伺服器的資料庫 瀏覽:742
貓盤洗白命令 瀏覽:844
168api源碼 瀏覽:967
不同地方的文件伺服器如何通信 瀏覽:599
自己電腦上搭建ftp伺服器地址 瀏覽:977
程序員的秋招秘籍 瀏覽:821
單片機國內外研究現狀 瀏覽:308
gta5如何進千人真實伺服器 瀏覽:996
電腦html壁紙源碼 瀏覽:726
c語言返回命令 瀏覽:933