文字コード変換で解決できない問題が発生orz

EUC_JPなOracleのデータをjavaでSJISに変換して取得したいんだが
JDBCが途中自動で文字コード変換をしてしまっていて、

EUC_JP → UTF-8 → SJIS
(Oracle) (JDBC) (java)

'�@'とかの特殊文字がUTF-8では対応していないようで
UTF-8に変換された時に文字コードが失われる(壊れる?)みたい...
で、壊れた文字コードをjavaでSJISに変換したところで文字化けして
'?'になっちゃうわけで。

この問題って回避できないんだろうか...