Is the ParseException happens?
SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy");
Date date = null;
try {
//1
date = df.parse("12-34-2007");
} catch (ParseException e) {
System.out.println("Wrong date");
}
System.out.println(date.toString());
Actually not. To prevent this add to //1
df.setLenient(false);
Letient parameter is true by default that's why to match format strictly need
setting parameter to false
Tuesday, September 29, 2009
Sunday, September 20, 2009
Windows fonts
sudo apt-get install msttcorefonts
Monday, May 25, 2009
Converting image
As our Designer was fired because of crisis - I had to change images size. So imagemagic is excelent for this use.
mogrify -gravity Center -crop 30X22+0+0 *.png
mogrify -format png *.jpg
mogrify -resize 30x22+0+0 *.*
mogrify -resize 120% *.*
identify -format "%wx%h \n" *.*
Friday, May 8, 2009
Hibernate Custom Type
Database has for example wrong state and can't save 1 or 0, 'Y' or 'N', 'YES' or 'NO'
So you need to save state as 1 and 2. Seems that database need refactoring... yes you are right but if you can't? Here is decision - custom type
And It's usage
So you need to save state as 1 and 2. Seems that database need refactoring... yes you are right but if you can't? Here is decision - custom type
package com.types;
import java.io.Serializable;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Types;
import org.hibernate.HibernateException;
import org.hibernate.usertype.UserType;
public class OneTwoBooleanType implements UserType{
private final static int DB_TRUE = 1;
private final static int DB_FALSE = 2;
public Object assemble(Serializable cached, Object owner) throws HibernateException {
return cached;
}
public Object deepCopy(Object value) throws HibernateException {
return value;
}
public Serializable disassemble(Object value) throws HibernateException {
return (Serializable) value;
}
public boolean equals(Object x, Object y) throws HibernateException {
if(x==null){
return false;
}
return ((Boolean)x).equals(y);
}
public int hashCode(Object x) throws HibernateException {
return x.hashCode();
}
public boolean isMutable() {
return false;
}
public Object nullSafeGet(ResultSet rs, String[] names, Object owner) throws HibernateException, SQLException {
Number val = (Number) rs.getObject(names[0]);
if(val==null){
return false;
}
return val.intValue() == DB_TRUE ? true : false;
}
public void nullSafeSet(PreparedStatement st, Object value, int index) throws HibernateException, SQLException {
int dbValue;
if(value==null){
dbValue = DB_FALSE;
} else {
dbValue = (Boolean) value ? DB_TRUE : DB_FALSE;
}
st.setInt(index, dbValue);
}
public Object replace(Object original, Object target, Object owner) throws HibernateException {
return original;
}
public Class returnedClass() {
return Boolean.class;
}
public int[] sqlTypes() {
return new int[]{Types.SMALLINT};
}
}
And It's usage
@Column(name="INTERNAL_STATUS_ID")
@Type(type="com.types.OneTwoBooleanType")
private boolean isVisible;
Tuesday, April 21, 2009
Substract queries
If you need to check differences between tables use this query:
select * from t1
minus
select * from t2
Tuesday, April 7, 2009
Java version number
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.IOException;
public class ClassVersionChecker {
public static void main(String[] args) throws IOException {
for (int i = 0; i < args.length; i++)
checkClassVersion(args[i]);
}
private static void checkClassVersion(String filename) throws IOException {
DataInputStream in = new DataInputStream(new FileInputStream(filename));
int magic = in.readInt();
if (magic != 0xcafebabe) {
System.out.println(filename + " is not a valid class!");
}
int minor = in.readUnsignedShort();
int major = in.readUnsignedShort();
System.out.println(filename + ": " + major + " . " + minor);
in.close();
}
}
1.Compile
javac ClassVersionChecker.java
2.Execute in unix console
find . -name *.class|xargs java -cp /c/tmp ClassVersionChecker|grep 50
where last number is class version
major minor Java platform version
45 3 1.0
45 3 1.1
46 0 1.2
47 0 1.3
48 0 1.4
49 0 1.5
50 0 1.6
Friday, March 27, 2009
Statistical SQL query
For example you need to count how many companies in which source system:
select count(*), source_system_id from company group by rollup(source_system_id)
Subscribe to:
Posts (Atom)