你犯了混淆的错误。用java连接oracle数据库可以使用jdbc-odbc桥这种jdbc驱动程序也可以使用oracle自带的驱动程序(要到oracle网站上下载)。你在dsn中着到的两个oracle in orahome90,oracle odbc driver都是jdbc-odbc桥这种jdbc驱动程序,使用这种驱动程序你必需在ODBC中配置数据源(用着两个都可以),此时连接的写法为:Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 conn = DriverManager.getConnection("jdbc:oracle:datasource",userID,userPWD  )                          其中datasource为你在ODBC中配置的数据源。
此外使用oracle的专用驱动程序,首先到oracle的网站上下载这种驱动程序,并且配置类路径。连接的写法如下:
Class.forName("oracle.jdbc.driver.OracleDriver");类路径配置的深度不一样可能稍有区别,取决语你自己。
con=DriverManager.getConnection("jdbc:oracle:oci8:@service_name","chendi","manager"); 
其中Service_Name在数据库中配置(应该是在本地网路方法名配置中)
你的代码中把这两个搞混了