El archivo properties tienen que estar en la carpeta src (Source Package) y la clase en cualquier paquete y directamente llamar a su metodo que devuelve un nuevo numero de operacion (String)
#Numero de Operacion para la Cola MQ
#Mon Nov 17 17:33:14 COT 2014
operacion=00000003
package app.mq;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;
public class NumeroOperacionMQ {
public static void main(String args[]){
System.out.println("Op:" + getNewValOperation());
}
public static String getNewValOperation() {
String operacionOld = getProperties("operacion");
long numero = Long.valueOf(operacionOld).longValue();
numero = numero + 1;
String numeroFormato = getNumberFormat(numero, 8);
updateProperties("operacion", numeroFormato);
return numeroFormato;
}
public static String getNumberFormat(long number, int width) {
long wrapAt = (long) Math.pow(10, width);
return String.valueOf(number % wrapAt + wrapAt).substring(1);
}
public static void updateProperties(String key, String val) {
Properties props = new Properties();
String propsFileName = "./src/operacionMQ.properties";
try {
FileInputStream configStream = new FileInputStream(propsFileName);
props.load(configStream);
configStream.close();
props.setProperty(key, val);
FileOutputStream output = new FileOutputStream(propsFileName);
props.store(output, "Numero de Operacion para la Cola MQ");
output.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
public static String getProperties(String key) {
Properties props = new Properties();
String propsFileName = "./src/operacionMQ.properties";
try {
FileInputStream configStream = new FileInputStream(propsFileName);
props.load(configStream);
configStream.close();
} catch (IOException ex) {
ex.printStackTrace();
}
return (String) props.get(key);
}
}