any user have login/password in oracle database. have code:
connection con; statement stmt = null; string query = "select user dual"; try { datasource = (datasource) new initialcontext().lookup("jdbc/mydatasource"); } catch (namingexception e) { throw new exceptionininitializererror(e); } try { system.out.println("name, password:" + name + "|" + password); con = datasource.getconnection(name, password); stmt = con.createstatement(); resultset rs = stmt.executequery(query); while (rs.next()) { system.out.println("user:" + rs.getstring("user")); } con.close(); return true; } catch (sqlexception ex) { logger.getlogger(userinfoserviceoracle.class.getname()).log(level.severe, null, ex); return false; } if put correct password, next user getconnection using login/password , login/password first correct user.
log:
info: name, password:correctuser|correctpassword info: user:correctuser info: name, password:jhkjhkjh|khkjhkj info: user:correctuser
a datasource facade connection pool.
as confirmed you. if supply incorrect password, datasource returns connection. means datasource not bothering username password supplying it.
as pointed out others on here, datasource configured , created application server. server reads appropriate parameters (like, username/password, initial number of connection, max number of connection etc) configuration file (some xml) , creates connection (initial no. of connection) used application later.
so when call
datasource.getconnection, datasource returning already created connections. username/password supplied has no effect.
Comments
Post a Comment