×

获取connection的方式

获取connection的方式(如何从Spring获取Connection)

admin admin 发表于2024-08-22 12:36:44 浏览5 评论0

抢沙发发表评论

大家好,今天小编来为大家解答以下的问题,关于获取connection的方式,如何从Spring获取Connection这个很多人还不知道,现在让我们一起来看看吧!

本文目录

如何从Spring获取Connection

  Java code  DataSource ds = ApplicationContextHolder.getBean("myDataSource"); Connection conn = ds.getConnection();

如何通过jpa的entitymanager获取jdbc的connection

1、获得Hibernate Session Session session = entityManager.unwrap(org.hibernate.Session.class); 2、获得java.sql.Connection 方法1: JPA 2.0 entityManager.getTransaction().begin(); java.sql.Connection connection = entityManager.unw...

如何从Spring 获取 Connection

运行期从ibatis配置文件中获取sql的两种方法运行期从ibatis配置文件中获取sql1.通过SqlMapClientDaoSupport,SqlMapClientImpl,MappedStatement,Sql,RequestScope等ibatis提供的类public List《UserInfo》 getUserList(UserInfo userInfo) { String sql = null; SqlMapClientImpl sqlmap = (SqlMapClientImpl) this.getSqlMapClient(); MappedStatement stmt = sqlmap.getMappedStatement("getUserInfoList"); Sql stmtSql = stmt.getSql(); RequestScope requestScope = new RequestScope(); requestScope.setStatement(stmt); sql = stmtSql.getSql(requestScope, userInfo); System.out.println(sql); return null; }注:这个方法我是写在dao中的,该dao extends SqlMapClientDaoSupport,所以上述就可以直接this调用getSqlMapClient()方法,2.通过SqlMapExecutorDelegate,MappedStatement,Sql,RequestScope等ibatis提供的类public List《UserInfo》 getUserList(UserInfo userInfo) { SqlMapExecutorDelegate delegate=((ExtendedSqlMapClient) (getSqlMapClientTemplate().getSqlMapClient())).getDelegate(); MappedStatement ms = delegate.getMappedStatement("getUserInfoList"); Sql sql=ms.getSql(); RequestScope requestScope = new RequestScope(); requestScope.setStatement(ms); String sqlStr = sql.getSql(requestScope,userInfo); System.out.println(sqlStr); }注:这两个例子中用到的类都是ibatis官方jar文件中的,快速导入即可,"getUserInfoList"为ibatis的xml文件中配置的id,getSql(,)中第二个参数就是要传递的参数对象。

spring data jpa怎么获取connection

数据库连接池是实现数据持久化的其中一个构件,可以随意选择一种连接池,在配置文件里改就可以咯

由dataRead 获取connection

/// 《summary》 /// 用执行的数据库连接执行一个返回数据集的sql命令 /// 《/summary》 /// 《remarks》 /// 举例: /// OleDbDataReader r = ExecuteReader(connString, "PublishOrders", new OleDbParameter("@prodid", 24)); /// 《/remarks》 /// 《param name="connectionString"》一个有效的连接字符串《/param》 /// 《param name="commandText"》存储过程名称或者sql命令语句《/param》 /// 《param name="commandParameters"》执行命令所用参数的集合《/param》 /// 《returns》包含结果的读取器《/returns》 public static OleDbDataReader ExecuteReader(string connectionString, string cmdText, params OleDbParameter commandParameters) { //创建一个SqlCommand对象 OleDbCommand cmd = new OleDbCommand(); //创建一个SqlConnection对象 OleDbConnection conn = new OleDbConnection(connectionString); //在这里我们用一个try/catch结构执行sql文本命令/存储过程,因为如果这个方法产生一个异常我们要关闭连接,因为没有读取器存在, //因此commandBehaviour.CloseConnection 就不会执行 try { //调用 PrepareCommand 方法,对 SqlCommand 对象设置参数 PrepareCommand(cmd, conn, null, cmdText, commandParameters); //调用 SqlCommand 的 ExecuteReader 方法 OleDbDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); //清除参数 cmd.Parameters.Clear(); return reader; } catch { //关闭连接,抛出异常 conn.Close(); throw; } }在.net中和java中取得数据集的方法基本相同,不过是java是通过jdbc进行连接,而asp.net是通过ado.net提供的oledb的对象进行连接的.1,首先通过connectionstring传入的连接字符串,告诉connection对象应该连接的数据库,建立这个对象。2,使用cmd对象得到数据即oledbdatareader 。3,将datareader装入数据容器,这里可以是dataset 相当于java中的arraylist,当然.net中也有arraylist。不过在.net中有封装的更好的数据容器dataset。不知道楼主明白了吗,其实java和.net 的区别在下认为不是很大。而且开发起来作些web应用差别就更小的。有什么不明白的在下定知无不言。

OK,关于获取connection的方式和如何从Spring获取Connection的内容到此结束了,希望对大家有所帮助。