Creo que no lo has entendido.
El alter session ANTES de ejecutar tu query. Si. No tiene sentido hacerlo despues.
Pero la ventaja del alter session seria que ya no tendrias que hacer nada con Simpledateformat ni nada por el estilo. Tu consulta es una simple query y las fechas serian 2 strings.
Asi, si no quieres usar el alter session siempre puedes ponerle el formato a tu query.
Código:
select * from pepe where to_char(fecha,'dd/mm/yyyy') between '01/01/2008' and '31/12/2008'
Tambien es valido.
Saludos.