Mybatis OTHERWISE标签
Mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typeAliases><package name="com.how2java.pojo"/>
</typeAliases>
<environments default="development"><environment id="development"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="com.mysql.jdbc.Driver"/><property name="url" value="jdbc:mysql://localhost:3306/how2java?characterEncoding=UTF-8"/><property name="username" value="root"/><property name="password" value="admin"/></dataSource></environment>
</environments>
<mappers><mapper resource="com/how2java/pojo/Product.xml"/>
</mappers>
</configuration>
Product.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.how2java.pojo"><select id="listProduct" resultType="Product">SELECT * FROM product_<where><choose><when test="name != null">and name like concat('%',#{name},'%')</when><when test="price !=null and price != 0">and price > #{price}</when><otherwise>and id >1</otherwise></choose></where></select>
</mapper>
Product.java
package com.how2java.pojo;public class Product {private int id;private String name;private float price;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public float getPrice() {return price;}public void setPrice(float price) {this.price = price;}@Overridepublic String toString() {return "Product [id=" + id + ", name=" + name + ", price=" + price + "]";}}
TestMybatis.java
package com.how2java.pojo;import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
import java.util.Map;import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;public class TestMybatis {public static void main(String[] args) throws IOException {String resource = "mybatis-config.xml";InputStream inputStream = Resources.getResourceAsStream(resource);SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);SqlSession session = sqlSessionFactory.openSession();Map<String,Object> params = new HashMap<>();
// params.put("name","a");
// params.put("price","10");List<Product> ps = session.selectList("listProduct",params);for (Product p : ps) {System.out.println(p);}session.commit();session.close();}
}
Mybatis OTHERWISE标签相关推荐
- mybatis常用标签和动态查询
这里是修真院后端小课堂,每篇分享文从 [背景介绍][知识剖析][常见问题][解决方案][编码实战][扩展思考][更多讨论][参考文献] 八个方面深度解析后端知识/技能,本篇分享的是: [mybatis ...
- Mybatis if标签和where标签结合巧妙使用
本文章描述的是 Mybatis if标签和where标签的结合使用 [x1]微信公众号的每日提醒 随时随记 每日积累 随心而过 [x2]各种系列的视频教程 免费开源 关注 你不会迷路 [x3]系列文章 ...
- MyBatis 别名标签 sql的复用
1.MyBatis 别名标签 如果在映射文件中,大量使用类名比较长,可以在sqlMapConfig.xml声明别名, 在映射文件中可以使用别名缩短配置,注意此配置要放在最前面 sqlMapConfig ...
- MyBatis 常用标签简单总结
MyBatis 常用标签简单总结 if 标签:类似于 Java 中的 if 语句 where标签:根据查询条件是否存在,来决定是否生成 where 字符串 set标签:根据查询条件是否存在,来决定是否 ...
- Mybatis sql标签使用变量
Mybatis sql标签使用变量 记录演示 Mybatis 中 sql 标签中使用变量的方法 <?xml version="1.0" encoding="UTF- ...
- 【mybatis】mybatis if 标签判断字符串相等
mybatis if 标签判断字符串相等 mybatis 映射文件中,if 标签判断字符串相等,两种方式: 因为 mybatis 映射文件,是使用的 ognl 表达式,所以在判断字符串 sex 变量是 ...
- mybatis foreach标签拼接多字段in ,和union
mybatis for标签 手写肯定是不可能,复制又经常忘记哪里有,记录一下复制方便 (oracle数据库) 批量添加 ,修改 ,拼接(xx,xx)in , union 添加,修改: <fore ...
- 猿创征文|mybatis 字段与数据库关键字冲突了怎么办、mybatis for 循环查询输出、mybatis常用标签
mybatis 字段与数据库关键字冲突了怎么办 如update join_brand_hot set index = #{top} where id = #{id} 这样明显会因为index与索引关键 ...
- mybatis trim标签_MyBatis学习笔记
MyBatis开发文档: mybatis - MyBatis 3mybatis.org mapper接口开发的四个规范: XxxMapper.xml配置文件的名称命名空间值必须是mapper接口的全 ...
- mybatis sql标签_这谁顶得住?Mybatis 十八连环问
来自:开源中国,作者:祖大俊 链接:https://my.oschina.net/zudajun/blog/747682 1.#{}和${}的区别是什么? 答:${}是Properties文件中的变量 ...
最新文章
- HDU3371(最小生成树)
- 谷歌如何通过机器学习实现逼真AR实时自拍效果
- 数组去重--这几种方法够不?
- linux mysql 客户端编码设置_mac和linux下mysql字符集设置问题
- Keras笔记(一)一些基本概念
- java读取文件跳过_在Java中读取文本文件-为什么跳过行?
- 人工智能ai 学习_学习代理| 人工智能
- openURL的使用(iOS调用系统电话、浏览器、地图、邮件等)
- java取linux本地xml,java-使用apache poi读取.xlsx文件会在Linux机器...
- python怎么判断字段不存在_Python 判断一个对象是否存在
- jvm与dvm两种虚拟机的不同
- 煤岩分析仪测定煤的镜质体反射率和煤显微组分
- 【软考】(五)网络互联设备
- 来抽个奖吧!stata随机程序揭秘
- 编程实践(Pandas)Task08
- 2020 GKCTF
- 如何做一份淹没的水深分布图
- ERROR: torch-1.6.0+cu101-cp37-cp37m-win_amd64.whl is not a supported wheel on this platform.
- java ssh实现原理_SSH三大框架的工作原理及流程
- Pandas各种骚操作