`
san586
  • 浏览: 132682 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

ibatis根据xml中的id获得sql

阅读更多
实现步骤:

1、写个类
import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;
import com.ibatis.sqlmap.engine.impl.SqlMapClientImpl;
import com.ibatis.sqlmap.engine.mapping.sql.stat.StaticSql;
import com.ibatis.sqlmap.engine.mapping.statement.MappedStatement;

public class GetSql {
	public static String getMappedStatementSQL(String id,
			SqlMapClientDaoSupport dao) {
		String sql = null;

		SqlMapClientImpl sqlmap = (SqlMapClientImpl) dao.getSqlMapClient();

		MappedStatement stmt = sqlmap.getMappedStatement(id);
		StaticSql staticSql = (StaticSql) stmt.getSql();
		sql = staticSql.getSql(null, null);
		return sql;
	}

}

2、构建SqlMapClientDaoSupport 参数对象
修改dao,使继承SqlMapClientDaoSupport,还要注入SqlMapClient 。代码如下:
@SuppressWarnings("unchecked")
@Service("userDAO")
public class UserDAO extends SqlMapClientDaoSupport implements IUserDAO {
	@Autowired
	public UserDAO(SqlMapClient sqlMapClient) {
		super.setSqlMapClient(sqlMapClient);
	}


3、在dao中这么调用:
GetSql.getMappedStatementSQL("getAllUser", this);

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    iBatis-设置缓存模式-Java源码(下载)

    PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> <sqlMap namespace="Account"> <typeAlias alias="Account" type="Account"/> <resultMap id...

    ibatis 开发指南(pdf)

    程序员甚至不需要对SQL 的熟练掌握, Hibernate/OJB 会根据制定的存储逻辑,自动生成对应的SQL 并调用JDBC 接口加以执 行。 大多数情况下( 特别是对新项目,新系统的开发而言) ,这样的机制无往不利...

    xorm:xorm是一个简单而强大的Go语言ORM库,通过它可以使数据库操作非常正确。本库是基于原版xorm的定制增强版本,为xorm提供类似ibatis的配置文件及动态SQL支持,支持AcitveRecord操作

    Having,Table,Sql,Cols等函数和结构体等方式作为条件支持级联加载结构支持类ibatis方式配置SQL语句(支持XML配置文件,json配置文件,xsql配置文件,支持 , , 模板和自定义实现配置多种方式)支持动态SQL功能...

    ibatics 官方网站正确实例

    sqlMapper.delete("deleteAccount", id); } 但com.mydomain.data.Account.xml文件的delete部分如下: <delete id="deleteAccountById" parameterClass="int"> delete from ACCOUNT where ACC_ID = #id# ...

    springmybatis

    1. 从配置文件(通常是XML配置文件中)得到 sessionfactory. 2. 由sessionfactory 产生 session 3. 在session 中完成对数据的增删改查和事务提交等. 4. 在用完之后关闭session 。 5. 在java 对象和 数据库之间有做...

    Hitis V1.1

    (5)在ibatis中,想做物理分页,你必须在写一个列表sql,还要写一个90%一样的总页数的sql,不仅如此,你还要在列表sql外包上一层分页sql代码,你不觉得麻烦吗?但Hitis,直接返回给你实际执行的sql和paramters数组,...

    mybatis超级资料包

    1、mybatis(ibatis3.0)所需要的jar包 ...5、部分sql文件参考样例(比如if的另类用户,id in('a','b')转换为(and id =? or id =? or id =? ... ) 总之 抛砖引玉) 6、文件中有我的联系方式,希望感兴趣的朋友一起切磋。

    基于EXT SSI的简单树实现

    index.jsp获得这个串,在将它渲染到页面上treecontainer这个层(div)中。 知道了这个过程,你就知道应该去怎么配置spring和struts以及ibatis了。 -------------------------------------------------- 顺便说下,log4...

    MyBatis Generator

    mybatis也能方向生成代码,能方向生成实体类(po)、mapper接口和Mapper接口映射文件,能减少...4、右击generatorConfig.xml 点击Generate MyBatis/iBATIS Artifacts 生成对应接口、接口映射文件、实体类 5、查看结果

    JdbcTemplateTool.zip

    Spring 出品的 JdbcTemplate 对于不想使用hibernate或者ibatis那样需要大量学习成本而且还想获得对象化的人来说是很好用的。但是 JdbcTemplate还是有很多不足之处或者说是缺点。比如你没法像hibernate那样直接传一个...

    Java面试宝典2010版

    2、你在项目中用到了xml技术的哪些方面?如何实现的? 3、用jdom解析xml文件时如何解决中文问题?如何解析? 4、编程用JAVA解析XML的方式. 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式?...

    最新Java面试宝典pdf版

    2、你在项目中用到了xml技术的哪些方面?如何实现的? 114 3、用jdom解析xml文件时如何解决中文问题?如何解析? 114 4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有...

    Java面试笔试资料大全

    2、你在项目中用到了xml技术的哪些方面?如何实现的? 114 3、用jdom解析xml文件时如何解决中文问题?如何解析? 114 4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有...

    Spring面试题

    最常用的 BeanFactory 定义是 XmlBeanFactory,它根据 XML 文件中的定义装入 bean,如清单 1 所示。 清单 1. XmlBeanFactory BeanFactory factory = new XMLBeanFactory(new FileInputSteam("mybean.xml")); 在 ...

    JAVA面试宝典2010

    2、你在项目中用到了xml技术的哪些方面?如何实现的? 114 3、用jdom解析xml文件时如何解决中文问题?如何解析? 114 4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有...

    Java面试宝典-经典

    2、你在项目中用到了xml技术的哪些方面?如何实现的? 114 3、用jdom解析xml文件时如何解决中文问题?如何解析? 114 4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有...

    java面试题大全(2012版)

    2、你在项目中用到了xml技术的哪些方面?如何实现的? 114 3、用jdom解析xml文件时如何解决中文问题?如何解析? 114 4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有...

    Java面试宝典2012版

    2、你在项目中用到了xml技术的哪些方面?如何实现的? 114 3、用jdom解析xml文件时如何解决中文问题?如何解析? 114 4、编程用JAVA解析XML的方式. 115 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档...

    java面试宝典2012

    2、你在项目中用到了xml技术的哪些方面?如何实现的? 124 3、用jdom解析xml文件时如何解决中文问题?如何解析? 124 4、编程用JAVA解析XML的方式. 125 5、XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有...

Global site tag (gtag.js) - Google Analytics