查询varchar实际大小_微服务和VUE(11): mybatis 动态查询

1. 新建class表和student表:

CREATE TABLE `class` (  `class_id` varchar(20)  NOT NULL,  `class_name` varchar(50)  DEFAULT NULL,  `headmaster_name` varchar(20)  DEFAULT NULL,  `headmaster_tel` varchar(20)  DEFAULT NULL,  PRIMARY KEY (`class_id`)) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
CREATE TABLE `student` (  `stu_no` varchar(20)  NOT NULL,  `stu_name` varchar(20) DEFAULT NULL,  `stu_sex` varchar(5) DEFAULT NULL,  `stu_address` varchar(200) DEFAULT NULL,  `stu_tel` varchar(20) DEFAULT NULL,  `class_id` varchar(20) DEFAULT NULL,  PRIMARY KEY (`stu_no`),  FOREIGN KEY (class_id) REFERENCES class(class_id)) ENGINE=InnoDB  DEFAULT CHARSET=utf8;

因为student表中class_id是class表中的外键,因此需要先新建class表。在插入数据的时候,同样也是先对class表中进行添加数据。student表中的class_id要在class表中的class_id有记录。

2. 新建student微服务

具体过程参考,user微服务构建过程

其微服务的目录结构如下:

6638e218a34a44eee9eed5f3ec53d0e5.png

3. 修改前端页面

第一部分根据班级或者年龄来查询

中间部分有一个添加按钮和一个搜索框,搜索框来实现提示搜索功能

主体部分是是一个表格,表格中可以进行查看,修改,删除

底部是一个分页。

使用的是elementUI,稍微修改一下就ok,很方便。

30c39a754c4c0373a25a103df6099f21.png

4. mybatis的动态查询

在实际的开发当中,经常需要根据不同条件拼接SQL语句。于是动态查询显得尤为重要。

    select * from student                        stu_name = #{stuName}                            and stu_no = #{stuNo}                            and class_id = #{classId}                            and stu_age between #{stuAge1} and #{stuAge2}                            and stu_age between (select min(stu_age) from student) and #{stuAge2}                            and stu_age between #{stuAge1} and (select max(stu_age) from student)                order by stu_no    limit #{start}, #{pageSize}

这是我们查询学生信息的代码,可以看到我们传入了很多查询条件所需要的参数:stuName,stuNo,classId,stuAge1,stuAge2 。

其中之所以传入stuAge1,stuAge2 ,是因为我想要查询某一个年龄段的学生。此外,为了满足分页的需求,我们还传入了start和pageSize。start是在从第start个开始查询,pageSize是指一次查询的个数,也就是一页展示的个数。通过一段代码,基本可以满足我们的查询需求。

此外,为了查到相应的学生数量,我们还需要写一个查询数量的sql语句。

    select count(*) from student                        stu_name = #{stuName}                            and stu_no = #{stuNo}                            and class_id = #{classId}                            and stu_age between #{stuAge1} and #{stuAge2}                            and stu_age between (select min(stu_age) from student) and #{stuAge2}                            and stu_age between #{stuAge1} and (select max(stu_age) from student)            

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/334168.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 中 ctime,mtime,atime 的区别

文章目录改变和修改的区别ctimemtimeatime查看文件时间关于 relatime改变和修改的区别 改变和修改之间的区别在于是改变文件的属性还是改变文件的内容。如果有人说 chmod a-w myfile(删除所有用户对文件 myfile 的写权限),那么这叫改变&…

java迭代器删除两个_两个迭代器的故事

java迭代器删除两个当您查看最流行的Java面试问题时,您可能会遇到有关故障快速和故障安全迭代器的问题: 故障快速迭代器和故障安全迭代器之间有什么区别? 简化的答案是: 如果在迭代过程中修改了集合,则快速失败迭代器…

Linux 命令之 stat -- 显示文件的状态信息

文章目录一、命令介绍二、命令语法三、常用选项四、命令示例(一)显示文件的状态信息(二)以简洁方式输出文件的状态信息(三)显示文件所属的文件系统状态信息一、命令介绍 用于显示文件的状态信息。stat命令…

python tkinter滚动条不起作用_Tkinter滚动条不工作

我有一段运行在python3.4上的tkinter代码,它是一个放在画布上的带有垂直滚动条的大框架,但是滚动条是灰色的,似乎没有与框架的大小相关联。我使用的代码基本上是:class EntryWindow:def __init__(self, master):self.master mast…

大工17秋《计算机文化基础》在线测试1,大工17秋《组织行为学》在线测试1答案...

大工17秋《组织行为学》在线测试1一、单选题:1.根据气质的分类,较适合做推销工作的人员的气质类型是( )。 (满分:3)A.胆汁质B.多血质C.抑郁质D.黏液质正确答案:[hide]——B——[/hide]2.组织行为学在中观层面所要研究的主要内容是( )。 (满分:3)A.个体心…

java分页中显示更多_早期更多失败– Java 8

java分页中显示更多快速失败或早期失败是一种软件工程概念,旨在通过在不应该发生的事情发生时立即停止执行来防止复杂问题的发生。 在之前的博客文章和演示中,我将详细介绍这种方法的优点,在此博客文章中,我将详细介绍Java 8中该思…

计算机组装与维修单招,单招职二 计算机组装与维修试卷.doc

单招职二 计算机组装与维修试卷高二 计算机组装与维修试卷一、填空题(每空1分,共计30分)1.一个完整的计算机系统是由______________和______________两部分组成的。2.为了更好的为CPU散热,在安装风扇前,先在CPU芯片的顶部均匀地涂抹上一层___…

普通人学python好吗_有人问,普通人学python真的有意义吗?看看大家都是怎么说的吧...

普通人学python有意义吗?现在随着python越来越火,尤其是它成为了人工智能的第一编程语言,还被纳入了中小学的教育中。并且python的应用范围很广泛,可以解决很多专业或非专业的问题。但python真的适合普通人学习吗?我个…

Linux 如何安装程序的源代码软件包/源码程序包/源码包?

文章目录一、安装源码包的三个步骤(一)执行命令 configure,进行配置/检测(二)执行命令 make,编译源码(三)执行命令 make install,安装软件二、源码包安装示例&#xff08…

大文件拆分小文件求top_将文件拆分为流

大文件拆分小文件求top上周,我讨论了类Pattern新的(since 1.8)方法splitAsStream只能根据流的需要从字符序列中读取字符序列,并且不能继续进行模式匹配以创建所有可能的元素并返回它作为流。 这种行为是流的本质,它是支…

如何取消ie.html,IE浏览器安全警告怎么关闭

部分用户在使用IE浏览器打开某些页面的时候,可能会出现一个“安全警告”的对话框,虽然影响不大,但是每次出现都让人很烦闷,这个时候你就可以根据下面的操作去关闭这个功能。自从百度近日开启了HTTPS安全网页功能之后,每…

sql 计算两个小数乘积_数学篇|学会这些数学计算技巧,想不满分都难!

计算是小学数学的基础,四则运算和混合运算是计算要考察的重点。在这里我们总结了小学用到的所有计算定律和简便方法,包括运算定律、运算法则、运算顺序和速算技巧四大部分,帮助小学生牢固掌握数学知识点。先赞后看,收获满满&#…

Linux 如何关闭防火墙

一、使用 System V init 作为初始化系统的 Linux(例如:CentOS 6.x) 关闭防火墙的命令: chkconfig iptables off或 service iptables stop二、使用 systemd 作为初始化系统的 Linux(例如:CentOS 7.x&#…

java学习2018年_Java 20年

java学习2018年二十年前,在苏黎世的一间公寓里发生了两件事。 我的女儿迈出了第一步,一位年轻的博士后研究员(她的父亲)迈出了使用Java的第一步。 很难完全了解当时的Java。 在这些时代,TCL盛行,Java时代与…

html 不透明阴影,CSS_css box-shadow阴影不透明的解决办法,如下面示例: 复制代码代码如 - phpStudy...

如下面示例:复制代码代码如下:phpStudy.shadow{width:120px;height:120px;border:1px solid #ccc;background:#fff;font-size:12px;padding:10px;-moz-box-shadow:0 4px 4px #999;-webkit-box-shadow:0 4px 4px #999;box-shadow:0 4px 4px #999;*filter: progid:DXI…

shell 脚本和 bash 脚本的关系

Shell 分类 常见的 Shell 有 sh、bash、csh、tcsh、ash 等。其中 bash shell 是 Linux 的默认 shell。即 bash 是 shell 的一种。 bash 脚本和 shell 脚本 bash 脚本仅是 shell 脚本的一种,csh 脚本也是 shell 脚本的一种。bash 脚本也可以称为 shell 脚本

mysql两个字段相减_MySQL 中NULL和空值的区别?

作为后台开发,在日常工作中如果要接触Mysql数据库,那么不可避免会遇到Mysql中的NULL和空值。那你知道它们有什么区别吗?学不动了,也不想知道它们有什么区别。大兄弟,不行啊,要面试!前些天我的好…

做好计划事半功倍论文_Picocli 2.0:事半功倍

做好计划事半功倍论文介绍 Picocli是一个单文件命令行解析框架,它使您几乎不需要任何代码即可创建命令行应用程序。 使用Option或Parameters注释应用程序中的字段,picocli将分别使用命令行选项和位置参数填充这些字段。 例如: Command(name …

halcon python缺陷检测_Halcon学习笔记之缺陷检测(一)

*surface_scratch.hdev:extraction of surface scratches via local thresholding and morphological post-processing*dev_close_window()dev_update_window(‘off’)******step: acquire image //获取图片*****read_image(Image,’surface_scratch’) //读入图片名为’surfac…

Linux 脚本文件中开头的#!/bin/bash和#!/bin/sh是什么意思

解释 #!/bin/sh:表示此脚本使用 /bin/sh 来解释执行,#! 是特殊的表示符,其后面跟的是解释此脚本的 shell 的路径。 我们知道 shell 有很多种,例如,bash、csh、sh等,sh 是其中的一种,命令文件所…