一、SQL函数

能够在SQL语句中调用的函数(方法) ,用来实现一些小功能

聚合函数

能够把多行数据聚合成一个值(统计)

count()    计数,计算数据条数

max()      计算最大值

main()     计算最小值

avg()      计算平均值

sum()     计算总和

Group_cancat   用 ,  连接多个数据

运行实例 SELECT  GROUP_CONCAT(name) FROM goods  如图

数学函数

字符串函数

concat(str1,str2,str3,.....)

concat_ws(分隔符,str1,str2,str3,.....)使用分隔符连接多个字符串

注意:如果连接数据不是字符串类型,则有可能在低版本的Mysql中产生乱码

解决的方法时使用Convert(列名,char)函数将非字符串数据转换成字符串

left(str1,n)    取前n个字符

right(str1,n)   取后n个字符

substring(str1,p,n)   截取子字符串,p开始位置,从1开始,n表示个数

子查询

语法: select .....,(select....from
表名 where 条件)列别名  from表名

通过子查询可以避免多次查询数据库,从而提高性能

实例:

SELECT

o.*,

(SELECT GROUP_CONCAT(CONCAT_WS('*',g.`name`,oi.count)) from order_item  oi

LEFT JOIN goods g ON oi.goods_id = g.goods_id

WHERE oi.order_id = o.order_id) order_item

from `order` o

日期时间函数

其他函数

二、实现网页定时刷新

 方法1:通过JS的定时器实现

setTimeout(function(){

Location.reload();    //刷新当前页面

},60*1000)

setTimeout的第一个参数是一个函数,它在时间到达时执行!

第二个参数指定到达时间,单位是毫秒ms

方法2:通过meta标签实现

”>

60秒刷新页面

使用场景

图文直播、数据实时展示(股票、天气、时间、倒计时)

三、JSTL的SET标签

<c:set var = “要赋值的变量名” vlaue=”要赋的值” scope=”变量的作用域” />

JSTL的四大作用域(scope的取值范围)

 request  表示一次请求,作用时间(从接到请求到发出响应,几ms)

session   表示一次会话,从“登录”《只要Session启用就算》到退出,作用时间(几分钟到几十分钟)

page     表示一个Servlet对象(虽然存在的时间很长,但是不能跨页面)

application  表示一个应用(从应用创建到关闭,全局可用-----即跨页面----作用范围最广)

jQuery

 $(“#photo”)

相当于调用了jQuery对象的构造函数,创建一个jQuery对象

$===jQuery  所有上面的代码相当于jQuery(“#photo”)

jQuery是一个函数,并且是一个构造函数

jQuery对象是一个容器,相当于java中的list

在这个容器中可以包含多个HTML标签对象

$(筛选器).change(func);     变化事件

$(筛选器).click(func);        点击事件

当事件发生时,会调用func函数---------事件驱动编程

jQuery 会监听容器中所有标签元素的事件

四、JS中的Console对象

用来向浏览器的控制台输出日志,类似于Java中的Logger对象

也支持分级输出日志

console.error()

console.warn()

console.info()

console.log()

console.debug()

 

五、如何自定义JSTL函数

1.创建一个类,在类中创建静态方法,通常需要返回String类型,目的是向页面输出内容

A)也有返回int或boolean或String[]数组的情况,通常是传给JSTL标签使用(函数是在JSTL标签的属性中使用的、嵌套)

实例演示:如图创建了一个ZYTLFunction的类

2.创建---tld文件,这个文件通常放在WEB-INF中,名字通常包含版本号。

A) zytl-fn-1_0.tld,

实例演示:创建zytl-fn-1_0.tld随机获取列表中的项(1_0代表是1.0版本)

B) 一个tld文件中通常定义同一类别的多个标签或函数(标签和函数分开到不同文件中定义)

C)一个tld(标签库定义文件)会有一个唯一URL(可以随意编写)和前缀与之关联

D)创建tld的时候,最简单的方法,也是最后的方法:从JSTL官方jar包中拆出来一个进行修改,而不要自己写。

3.在web.xml中通过<jsp-config>下的<taglib>注册一下tld,如果不注册会出现tld既不在jar中,也不在web.xml中的错误提示

实例演示:如图在web.xml中的配置

4.在jsp文件中的声明与使用

实例演示:如图具体的使用

对一门技能掌握程度:

了------用-------熟-------精-------专

Java进阶SQL函数、网页定时刷新与自定义JSTL函数的更多相关文章

  1. 权限管理之基于ACL的实现:自定义JSTL函数实现即时认证

    实现即时认证(即只有拥有相应的权限,才能做相应的操作) 经常用在,在JSP页面上,调用JSTL自定义函数做判断,显示相应的菜单或者功能按钮,比如只有管理员登陆时才显示“删除”按钮,从而完成权限的即时认 ...

  2. 自定义JSTL函数标签(一)

    jstl标签库的配置 * 将jstl.jar和standard.jar拷贝到WEB-INF/lib下(如果使用el表达式,不用拷贝这两个jar) 注意:jstl必须在能够支持j2ee1.4/servl ...

  3. SQL实现类似于自动刷新数据的功能

    有时需要在SQL中,定时刷新某张表,比如说是要定时查询某张表的行数,通常做法就是手动的按F5去执行来刷新数据.但是如果这个定时查询历时较长,10分钟,或半小时,手动的话肯定是要崩溃了.貌似SQL没有像 ...

  4. 自定义JSTL标签和函数库

    一.自定义JSTL标签 1.编写标签处理类: (1)实现 SimpleTag 接口,通过 setJspContext()方法可以获取到 jspContext 对象,实际上也是 pageContext ...

  5. 自己定义JSTL函数

    因为 jstl 函数 字符串替换不支持正則表達式 所以想用java String的 replaceAll进行替换 须要自己定义 jstl函数 首先写类 package com.salesmanb2b. ...

  6. Matlab中如何将(自定义)函数作为参数传递给另一个函数

    假如我们编写了一个积分通用程序,想使它更具有通用性,那么可以把被积函数也作为一个参数.在c/c++中,可以使用函数指针来实现上边的功能,在matlab中如何实现呢?使用函数句柄--这时类似于函数指针的 ...

  7. JavaScript中作用域回顾(避免使用全局变量)(瀑布流的实现)(scroll事件)以及Django自定义模板函数回顾

    页面显示照片样式为瀑布流: 上面的div个数可以按照自己安排进行划分.img的分布可以使用模板标签以及自定义模板函数进行排布: 自定义模板函数实现可以看,最后几列:python---django中模板 ...

  8. weex 项目开发(五)自定义 过滤函数 和 混合 及 自定义 Header 组件

    1.自定义  过滤函数 src / filters / index.js /** * 自定义 过滤函数 */ export function host (url) { if (!url) return ...

  9. response常见应用、response细节、输出随机图片、定时刷新网页

      response常见应用 向客户端输出中文数据 分别以OutputStream和PrintWriter输出 多学一招:使用HTML语言里面的<meta>标签来控制浏览器行为 思考:用O ...

随机推荐

  1. ctags高级用法

    1.ctags -R 有个问题,成员变量没有包含在里面.所以自动完成对象的成员时没有提示.解决办法:$ctags -R --fields=+iaS --extra=+q *–fields=[+|-]f ...

  2. [vt]xenserver磁盘扩容扩不大问题解决

    xenserver将磁盘扩大后,fdisk可以看到容量大了,但是df -h看到磁盘并没有大,解决. 参考 说明:XenServer里面安装的虚拟机,分区的时候采用的是LVM磁盘分区 需求:现在需要扩容 ...

  3. Django REST framework 知识点总结

    一.安装DjangoREST framework #先安装Django #安装必要的包 pip install djangorestframework coreapi (1.32.0+) - Sche ...

  4. 一个很好用的系统管理的命令lsof(转载)

    最近发现LOSF 命令在系统管理方面特别有用,把我搜集的资料总结如下 1.当在lsof后边没有跟任何参数时,该命令将会列出当前系统中被所有进程打开的所有文件#lsof|nl #nl命令打印出行号 2. ...

  5. java 清除 bom

    参考工具  http://akini.mbnet.fi/java/unicodereader/ Utf8BomRemover 清除bom的方法 package cn.com.do1.component ...

  6. 16位结构的CPU,8086给出物理地址的方法

    .16位结构的CPU 概括地讲,16位结构(16位机,字长为16位等常见说法,与16位结构的含义相同)描述了一个CPU具有下面几方面结构特性: 1.运算器一次最多可以处理16位的数据结构 2.寄存器的 ...

  7. Vanya and Brackets

    Vanya and Brackets Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u ...

  8. 基于js白色简洁样式计算器

    今天给大家分享一款白色简洁样式计算器JS代码是一款精美简洁计算器JS代码插件网页特效,软件应用,后台应用JS计算器插件代码免费下载.适用浏览器:360.FireFox.Chrome.Safari.Op ...

  9. ubuntu server执行sudo出现"no talloc stackframe at ../source3/param/loadparm.c:4864, leaking memory"

    [Ubuntu] 執行 sudo 時,出現 "no talloc stackframe at ../source3/param/loadparm.c:4864, leaking memory ...

  10. [uboot]uboot如何引导系统

    转自:http://bbs.elecfans.com/jishu_455028_1_1.html 如6410的bootcmd和bootargs默认存在于uboot1.1.6/include/confi ...