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:
Giới thiệu Google Guice – Aspect Oriented Programming (AOP)
Java Program to Generate Random Hexadecimal Byte
A Guide to the finalize Method in Java
Java Program to Sort an Array of 10 Elements Using Heap Sort Algorithm
Hướng dẫn Java Design Pattern – Service Locator
Guide to System.gc()
Java Program to Evaluate an Expression using Stacks
Easy Ways to Write a Java InputStream to an OutputStream
Java Program to Implement Hamiltonian Cycle Algorithm
Java Program to Find Number of Articulation points in a Graph
Sorting in Java
Java – String to Reader
Convert a Map to an Array, List or Set in Java
Automatic Property Expansion with Spring Boot
Simple Single Sign-On with Spring Security OAuth2
Quick Guide to Spring Bean Scopes
Java Program to Find Hamiltonian Cycle in an UnWeighted Graph
Java Program to Implement Quick Hull Algorithm to Find Convex Hull
Send email with authentication
Java Program to Implement LinkedBlockingDeque API
How to Manually Authenticate User with Spring Security
Java Program to Implement Sorted List
Java Program to Implement Treap
Spring Boot: Customize the Jackson ObjectMapper
Spring 5 Functional Bean Registration
Java Program to Implement Heap Sort Using Library Functions
Java Program to Check the Connectivity of Graph Using BFS
Adding a Newline Character to a String in Java
Comparing Long Values in Java
Java Program to Implement Kosaraju Algorithm
Java Program to Find the GCD and LCM of two Numbers
HashMap trong Java hoạt động như thế nào?