对URL中的参数进行提取
下面的几个方法都可以用,但是字符串截取的方法需要导入这个包
org.apache.commons.lang3.StringUtils
具体工具类如下:
import java.net.MalformedURLException;
import java.net.URL;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* url参数工具类
*/
public class UrlParametersUtils {
/**
* URL中参数提取
*/
public static String getUrlParameter(String url, String name) {
url += "&";
String pattern = "(\\?|&){1}#{0,1}" + name + "=[a-zA-Z0-9]*(&{1})";
Pattern r = Pattern.compile(pattern);
Matcher matcher = r.matcher(url);
if (matcher.find()) {
//System.out.println(matcher.group(0));
return matcher.group(0).split("=")[1].replace("&", "");
} else {
return null;
}
}
/**
* 获取url内容
*
* @param urls url
* @return Content
*/
public static String getUrlContent(String urls) {
URL url = null;
try {
url = new URL(urls);
} catch (MalformedURLException e) {
e.printStackTrace();
}
//URL
String toString = url.toString();
//协议
String getProtocol = url.getProtocol();
//文件名
String getFile = url.getFile();
//主机
String getHost = url.getHost();
//路径
String getPath = url.getPath();
//端口号
Integer getPort = url.getPort();
//默认端口号
Integer getDefaultPort = url.getDefaultPort();
return getPath;
}
/**
* 获取url字符串内容
* 字符串截取方法获取
*
* @param urls url
* @return {@link String}
*/
public static String getUrlContentString(String urls) {
URL url = null;
try {
url = new URL(urls);
} catch (MalformedURLException e) {
e.printStackTrace();
}
String urlInfoUrl = url.getFile();
String substringBefore = StringUtils.substringBefore(urlInfoUrl, "?");
return StringUtils.substringBetween(urlInfoUrl, "/", "?");
}
}
其他内容:时间戳与日期时间格式转换
/**
* 将日期时间转为时间戳格式
*
* @param dateTime 日期时间
* @return {@link String}
* @throws ParseException 解析异常
*/
public static String dteTimeToTimestamp(String dateTime) throws ParseException {
String result;
//设置时间格式
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//将该时间格式的时间转换为时间戳
Date date = simpleDateFormat.parse(dateTime);
long time = date.getTime();
result = String.valueOf(time);
return result;
}
/**
* 将时间戳转为日期时间格式
*
* @param timestamp 时间戳
* @return {@link String}
*/
public static String timestampToDteTime(String timestamp) {
String result;
//设置时间格式
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
long dateTime = new Long(timestamp);
//将时间戳转换为时间
Date date = new Date(dateTime);
//将时间安装时间格式返回
result = simpleDateFormat.format(date);
return result;
}