Rasmus.krats.se

svenska

Reminiscing this and that, on the web since 1995

Tagged java

Destruktorer och defer

Published tagged , , , , , .

En av de saker jag verkligen gillar i c++ är att man kan ha lokala variabler som är objekt i kombination med att objekt har destruktorer. När man lämnar ett scope där det finns lokala variabler kommer deras destruktorer omedelbart att köras, oavsett hur man lämnar scopet. Det ger ett trevligt sätt att hantera öppna filer, databaskoppel, mutexar och annat som behöver stängas. Andra språk har andra, ofta krångligare, sätt att få motsvarande resultat.

Språket go har en helt annan aproach, som är värd att titta lite närmare på.

Läs och kommentera inlägget Destruktorer och defer

Some ways to log stuff in java

Published tagged , , .

Logging in java is a mess. For a long time there was no standard way of logging in java, so there is a lot of 3:rd party solutions. Apache commons logging, slf4j, and log4j are probably the most used.

By now, there is standard java.util.logging package, but most people stick to the old 3:rd party solutions. As we shall see, that isn't really surprising, since java util logging kind of sucks.

Läs och kommentera inlägget Some ways to log stuff in java

Logdriver

Published tagged , , , .

When developing code with Hibernate (or other Java tools that create SQL statements for you) it is often a good idea to take a close look at the generated SQL code, for example if you have performerance issues.

A very nice and simple way to do that is logdriver by Ryan Bloom. (Update 2017-06-24: Unfortunatley, the domain seems to have been lost to a spam site).

And it's simple to use! I've got a .properties file where I've commented out the ordinary db driver and use logdriver instead. As simple as this:

# DB_DRIVER=oracle.jdbc.driver.OracleDriver
# DB_URL=jdbc:oracle:thin:@dbhost.mydomain:1523:db
DB_DRIVER=net.rkbloom.logdriver.LogDriver
DB_URL=jdbc:log:oracle.jdbc.driver.OracleDriver:oracle:thin:@dbhost.mydomain:1523:db

Write a comment