rendered paste bodylog4j.debug=true
log4j.rootLogger=INFO,Stdout
log4j.logger.src.main.jircmine=DEBUG, Stdout
log4j.appender.Stdout=org.apache.log4j.ConsoleAppender
log4j.appender.Stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.Stdout.layout.conversionPattern=%-5p - %-26.26c{1} - %m\n
package src.app;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
public class Jircmine {
Session session;
static Logger log = Logger.getLogger(Jircmine.class);
public Jircmine() {
AnnotationConfiguration config = new AnnotationConfiguration();
SessionFactory factory = config.configure().buildSessionFactory();
session = factory.openSession();
PropertyConfigurator.configure("src/app/log4j.properties");
}
public static void main(String[] args) {
Jircmine m = new Jircmine();
while(true)
m.findWord(m.getWord());
}
private void findWord(String s) {
Query q= session.createSQLQuery("select * from messages where vectors @@ to_tsquery('"+s+"')").addEntity(Message.class);
printThis(q.setMaxResults(5));
}
private String getWord() {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.print("What word are you searching for? ");
try {
String str = br.readLine();
log.debug("Read stdin");
if(str.compareTo("none") == 0)
System.exit(0);
else
return str;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
private static void printThis (Query q) {
for ( Object m : q.list()) {
Message msg = (Message)m;
System.out.println(msg.getCreated_at() + ":" + msg.getBody());
}
}
}