`
yheye
  • 浏览: 66253 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

运行期从ibatis配置文件中获取sql 的两种方法

阅读更多

1.通过SqlMapClientDaoSupport,SqlMapClientImpl,MappedStatement,Sql,RequestScope等ibatis提供的类

 

/**
	 * 获得sql
	 * @param db 通过它获取SqlMapClient
	 * @param param sql里面的参数
	 * @param sqlName Statement的ID
	 * @return
	 */
	public String getCurrSql(DBOperation db,Map<String, String> param,String sqlName) {
		String sql = null;
		SqlMapClientImpl sqlmap = (SqlMapClientImpl) db.getSqlMapClient();
		MappedStatement stmt = sqlmap.getMappedStatement(sqlName);
		Sql stmtSql = stmt.getSql();
		  
		RequestScope requestScope = new RequestScope();
		requestScope.setStatement(stmt);
		sql = stmtSql.getSql(requestScope, param);
		return sql; 
	}

 

2.通过SqlMapExecutorDelegate,MappedStatement,Sql,RequestScope等ibatis提供的类

/**
	 * 获得sql
	 * @param db 通过它获取SqlMapClient
	 * @param param sql里面的参数
	 * @param sqlName Statement的ID
	 * @return
	 */
	public String getCurrSqlTwo(DBOperation db,Map<String, String> param,String sqlName) {
		SqlMapExecutorDelegate delegate=((ExtendedSqlMapClient)
				(db.getSqlMapClient())).getDelegate();     
		MappedStatement ms = delegate.getMappedStatement(sqlName);   
		Sql sql=ms.getSql(); 
		RequestScope requestScope = new RequestScope();
		requestScope.setStatement(ms);
		String sqlStr = sql.getSql(requestScope,param); 
		return sqlStr;
	}
 

 

分享到:
评论

相关推荐

    ibatis 配置文件详解

    通过上述解析,我们可以看出ibatis配置文件在ibatis框架中的核心地位,它不仅定义了数据源和事务管理策略,还指定了SQL映射文件的位置,使得ibatis能够根据配置正确地执行SQL语句,完成数据库操作。

    ibatis配置文件

    在本文中,我们将深入探讨ibatis配置文件的关键组成部分及其如何影响ibatis框架的运行机制。ibatis(现在通常称为MyBatis)是一个优秀的持久层框架,它将SQL语句与Java代码分离,允许开发者直接编写SQL语句并映射到...

    ibatis配置文件信息

    在Java开发领域中,ibatis(现称为MyBatis)是一款优秀的持久层框架,它通过XML或注解的方式将接口方法与SQL语句绑定起来,实现对象关系映射(ORM)功能。ibatis的主要优势在于其强大的SQL查询能力和对结果集的灵活...

    ibatis用xml配置文件配置使用

    通过上述步骤,你可以在iBATIS中使用XML配置文件进行SQL操作。对于复杂场景,如多表联查、分页、存储过程等,你可以继续深入学习XML配置文件的高级用法,例如使用`&lt;association&gt;`, `&lt;collection&gt;`处理嵌套结果,使用...

    在ibatis日志信息中打印SQL语句的方法(个人总结)

    总之,打印iBatis中的SQL语句是通过配置日志实现和调整日志级别来实现的,这为我们提供了宝贵的调试信息。根据项目需求选择合适的日志库,并进行相应的配置,就可以轻松地在日志中看到SQL执行的全过程了。

    ibatis配置文件自动加载组件

    标题 "ibatis配置文件自动加载组件" 涉及的核心技术是MyBatis的自动配置加载功能,这在开发过程中极大地提高了效率,使得开发者无需每次修改XML映射文件后手动重启服务。MyBatis是一个优秀的Java持久层框架,它简化...

    ibatis配置文件模板

    在实际开发中,Ibatis允许通过动态SQL来构建灵活的查询,比如`&lt;if&gt;`、`&lt;choose&gt;`、`&lt;when&gt;`、`&lt;otherwise&gt;`、`&lt;where&gt;`、`&lt;set&gt;`等标签,使得SQL能够在运行时根据条件动态生成,大大提高了代码的可维护性和复用性。...

    ibatis配置文件、映射文件详解

    在ibatis框架中,`sqlMapConfig.xml`是一个非常重要的配置文件,它主要用于设置ibatis的全局配置信息,包括数据库连接信息、环境配置以及其它运行时参数等。下面将对这个文件中的关键元素进行详细的解析。 ##### ...

    iBATIS-SqlMaps,ibatis映射文件

    iBATIS-SqlMaps是Java开发中的一个持久层框架,它提供了一种将SQL语句与Java代码分离的解决方案,从而使得数据库访问更加灵活和易于维护。iBATIS的核心概念是SqlMapConfig.xml配置文件和一系列的SqlMap.xml映射文件...

    查看ibatis后台sql

    通过java程序查看ibatis配置文件中的sql语句(注:无法查看变量值)

    ibatis 开发指南 和 iBATIS-SqlMaps两本图书

    《iBATIS 开发指南》和《iBATIS-SqlMaps》是两本关于Java开发领域中的重要框架——iBATIS的权威指南。这两本书详细介绍了如何使用iBATIS进行数据库交互,帮助开发者深入理解并熟练掌握这一持久层框架。 iBATIS,...

    MyBatis和IBatis配置文件中的自动补全功能

    首先,我们来看`sql-map-2.dtd`和`sql-map-config-2.dtd`这两个文件,它们是iBatis时代的配置文件DTD(Document Type Definition),用于定义XML文件的结构和元素。在iBatis中,`sql-map-config.xml`是全局配置文件...

    mysql数据库自动生成对应的java实体类和ibatis配置文件

    它会根据配置文件中的设置,连接到MySQL数据库,读取表结构,并自动创建对应的Java实体类和iBatis配置文件。 5. **整合到项目**: 将生成的Java文件和XML文件引入到你的项目中,然后就可以在代码中直接使用这些实体...

    ibatis的dynamicSQL中,关于prepend的使用

    通过使用XML配置文件来定义SQL查询语句,并结合Java对象映射关系,ibatis提供了一种灵活的方式来处理数据库操作。其中,动态SQL是ibatis的一个非常强大的特性,允许开发者根据不同的条件构建出复杂的SQL查询语句。 ...

    常用ibatis配置

    描述部分提到的“返回新建数据ID,分页查询,查询条件,模糊查询,date时间段,list集合,截止日期”则是在iBatis配置中常见的几种操作场景,这些场景在数据持久化的操作中非常实用。下面详细解释这些知识点: 1. 返回...

    ibatis配置

    Ibatis,全名MyBatis,是一个优秀的Java持久层框架,它支持...描述中提到的成功配置意味着已经完成了这些步骤,并且经过测试,证明可以正常运行SQL,处理数据库交互。这是一次成功的Ibatis应用实践,值得分享和学习。

    ibatis 注解配置文件

    在传统的XML配置文件中,Ibatis允许我们定义SQL语句、参数映射以及结果集映射。然而,随着Java注解的普及,Ibatis也支持使用注解来进行配置,使得代码更加简洁易读。 1. **@Select**: 这个注解用于标记一个方法,该...

Global site tag (gtag.js) - Google Analytics