1. Check if a file was modified on the server
URL u =null;
long timestamp = 0;
try {
u = new URL(getDocumentBase(), "test.gif");
URLConnection uc = u.openConnection();
uc.setUseCaches(false);
/*
** use timestamp has a reference, re-open an URLConnection
** to the same file to check if the timestamp is different
** with the getLastModified() method.
*/
timestamp = uc.getLastModified();
}
catch (Exception e) {
e.printStackTrace();
}
}
2. Check if a page exists
import java.net.*;
import java.io.*;
public class URLUtils {
public static void main(String s[]) {
System.out.println(URLUtils.exists("https://www.maixuanviet.com/how-to-install-and-secure-phpmyadmin-on-ubuntu.vietmx"));
System.out.println(URLUtils.exists("https://www.maixuanviet.com/not-exists.vietmx"));
/*
output :
true
false
*/
}
public static boolean exists(String URLName){
try {
HttpURLConnection.setFollowRedirects(false);
// note : you may also need
// HttpURLConnection.setInstanceFollowRedirects(false)
HttpURLConnection con =
(HttpURLConnection) new URL(URLName).openConnection();
con.setRequestMethod("HEAD");
return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
}
catch (Exception e) {
e.printStackTrace();
return false;
}
}
}
The following is doing the same thing but this time we identify ourselves to a proxy.
import java.net.*;
import java.io.*;
import java.util.Properties;
public class URLUtils {
public static void main(String s[]) {
System.out.println(exists("http://www.maixuanviet.com"));
System.out.println(exists("http://www.luyenthithukhoa.vn"));
}
public static boolean exists(String URLName){
try {
Properties systemSettings = System.getProperties();
systemSettings.put("proxySet", "true");
systemSettings.put("http.proxyHost","proxy.mycompany.local") ;
systemSettings.put("http.proxyPort", "80") ;
URL u = new URL(URLName);
HttpURLConnection con = (HttpURLConnection) u.openConnection();
//
// it's not the greatest idea to use a sun.misc.* class
// Sun strongly advises not to use them since they can
// change or go away in a future release so beware.
//
sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder();
String encodedUserPwd =
encoder.encode("domain\\username:password".getBytes());
con.setRequestProperty
("Proxy-Authorization", "Basic " + encodedUserPwd);
con.setRequestMethod("HEAD");
System.out.println
(con.getResponseCode() + " : " + con.getResponseMessage());
return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
}
catch (Exception e) {
e.printStackTrace();
return false;
}
}
}
Done! Happy Coding!
Related posts:
Java Program to Check if it is a Sparse Matrix
Java Program to Find Transitive Closure of a Graph
Java Program to Check if a Given Set of Three Points Lie on a Single Line or Not
Concurrent Test Execution in Spring 5
Send email with authentication
Comparing Long Values in Java
Format ZonedDateTime to String
Java Program to Implement Range Tree
Inheritance and Composition (Is-a vs Has-a relationship) in Java
The Guide to RestTemplate
Ways to Iterate Over a List in Java
Hướng dẫn sử dụng Java String, StringBuffer và StringBuilder
Handling Errors in Spring WebFlux
Hướng dẫn Java Design Pattern – Mediator
Java Program to Perform integer Partition for a Specific Case
Java Program to Implement Wagner and Fisher Algorithm for online String Matching
HttpClient Connection Management
Extract network card address
Java Program to Implement ConcurrentLinkedQueue API
Java Program to Create a Random Graph Using Random Edge Generation
A Guide to Spring Cloud Netflix – Hystrix
Test a REST API with Java
Spring Boot - Cloud Configuration Client
JUnit 5 @Test Annotation
Spring Boot - Hystrix
Quick Intro to Spring Cloud Configuration
Spring Boot - Exception Handling
Câu lệnh điều khiển vòng lặp trong Java (break, continue)
Java Program to Implement Binary Search Tree
Extra Login Fields with Spring Security
Java – Reader to Byte Array
File Upload with Spring MVC