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 toString() Method
The SpringJUnitConfig and SpringJUnitWebConfig Annotations in Spring 5
Java Program to Implement HashTable API
Java Program to Implement Sorted Circular Doubly Linked List
Java Program to Implement SynchronosQueue API
Java Program to Implement VList
Java Program to Implement Lloyd’s Algorithm
Request a Delivery / Read Receipt in Javamail
Introduction to Project Reactor Bus
New Features in Java 14
HashMap trong Java hoạt động như thế nào?
What is a POJO Class?
Introduction to Apache Commons Text
Spring Boot with Multiple SQL Import Files
Compact Strings in Java 9
Spring Boot - Internationalization
Java Program to Implement AttributeList API
Giới thiệu Google Guice – Binding
Java Program to Implement Ternary Heap
Java Program to Implement String Matching Using Vectors
Java Program to Solve a Matching Problem for a Given Specific Case
Partition a List in Java
Test a REST API with Java
ExecutorService – Waiting for Threads to Finish
Lập trình đa luồng với CompletableFuture trong Java 8
Spring Security Login Page with React
Spring Data MongoDB Transactions
Concatenating Strings In Java
Java Program to Represent Graph Using Adjacency List
Java Program to Implement Heap’s Algorithm for Permutation of N Numbers
Java Program to Perform Inorder Recursive Traversal of a Given Binary Tree
Spring Boot - Tomcat Deployment