前言
专业领域包括成都网站设计、成都网站建设、成都做商城网站、微信营销、系统平台开发, 与其他网站设计及系统开发公司不同,创新互联的整合解决方案结合了帮做网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,为客户提供全网互联网整合方案。在实际开发中,大多数情况下都需要对 SQL 传入参数以获得想要的结果集,传入的情况分为两种情况:
1、SQL语句的拼接,比如表名、like 条件等;在 mybatis 中使用 ${} 包裹参数,mybati 直接对其进行字符串替换
2、SQL 中作为条件输入的参数,这种情况下,SQL 允许使用 ? 作为占位符来代替参数,在 mybatis 中使用 #{} 包裹参数,使用占位符有以下几点好处:
对于开发人员而言,能够使用 #{} 传入参数的情况都应该采用这种形式。
传入参数
接口 Mapper 传入参数
在 xml 中写 SQL 的时候注意到 parameterType 参数,刚接触的时候就有疑惑,如果有多个参数该如何指定。原来这是一个可选参数,Mybatis 本身就可以通过 TypeHandler 推断出具体传入语句的参数。
总结通过接口方法传入参数的情况:
配置文件传入参数
有时候为了将表名或者 schema 可配置化,将变量写到配置文件中,避免未来表名变化造成大的改动。
全局变量
首先如果是作为全局的参数,可以将配置文件中的参数都写入到 Javabean 中,使用的时候通过接口 Mapper 传入即可。在 Spring 中
applicationContext.xml
classpath: .properties