栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

2021-11-06

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2021-11-06

后端低代码工具SDP系列三(写一个带条件的select语句)
  • 准备数据库
  • 配置select语句
  • 生成带查询条件的Mybatis文件
  • 查看生成的结果

准备数据库

接着前一篇文章,我们还是使用sdp_workspace表:

CREATE TABLE sdp_workspace (
  id int(11) NOT NULL AUTO_INCREMENT,
  name varchar(200) NOT NULL,
  root_path varchar(100) DEFAULT NULL,
  db_host varchar(100) DEFAULT NULL,
  db_port int(11) DEFAULT NULL,
  db_database varchar(200) DEFAULT NULL,
  db_username varchar(45) DEFAULT NULL,
  db_password varchar(200) DEFAULT NULL,
  db_classname varchar(200) DEFAULT NULL,
  remark varchar(200) DEFAULT NULL,
  PRIMARY KEY (id),
  UNIQUE KEY unique_workspace (name)
);

我们希望通过name(精确查询)和db_host(模糊查询)可以查询sdp_workspace表,例如:

select t.* from sdp_workspace t
where 88=88
and name = 'sdp'
and db_host like '%localhost%'

注意,这里要保证每个查询条件都是单独一行,并且以and开始,不要有括号。所以在where后面加了一个88=88的条件,这样就保证了后面的条件都能以and开始一行。这样的查询已经可以满足多数的单表查询场景了。
另外一个需要注意的是,如果select语句使用了通配符,而不是具体的字段列表,那么即便是单表查询,也需要给表起个别名,这样SDP工具才能自动将表的字段扩展开。如果是select * from这样的写法,Mybatis的xml中是不会扩展的,但是不影响java文件,java文件是可以处理所有的字段信息的。

配置select语句

打开sql页面,点击添加,添加的内容如下图所示:

配置好以后,如下图所示:
第一行就是新增的内容,后面两个是SDP工具根据规则自动创建的两个条件(就是必须以and开始一行的规则)。目前只有在新增SQL时才会自动处理参数,再次编辑是不会重新处理的,如果再新增条件,就需要手工添加,或把之前新增的SQL删除,新建一条,这样就可以再次自动处理参数了。

生成带查询条件的Mybatis文件

选中任一一行后,点击执行。执行后会有成功提示,页面如下图所示:

查看生成的结果

可以看到会多出两个java文件:

然后在Mybatis的xml文件中会多出若干个select语句,其中一个select如下。可以看到通配符被扩展为具体的字段,查询条件被自动替换为参数:


这个select对应的请求和返回对象如下:

package cn.mysdp.biz.domain;

import java.io.Serializable;
import lombok.Getter;
import lombok.Setter;


@Getter
@Setter
public class SdpWorkspaceForGetWorkspaceList implements Serializable {
    private static final long serialVersionUID = 9000174441695984L;

    private Integer id;

    private String name;

    private String rootPath;

    private String dbHost;

    private Integer dbPort;

    private String dbDatabase;

    private String dbUsername;

    private String dbPassword;

    private String remark;

    private String dbHostLike;

}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/434355.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号