zoukankan      html  css  js  c++  java
  • Java进阶SQL函数、网页定时刷新与自定义JSTL函数

    一、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标签实现

       <meta name = http-equiv=reflesh  content =60>

    60秒刷新页面

    使用场景

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

    三、JSTLSET标签

        <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)也有返回intbooleanString[]数组的情况,通常是传给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文件中的声明与使用

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

     

     

    对一门技能掌握程度:

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

  • 相关阅读:
    L1-045 宇宙无敌大招呼 (5分)
    L1-044 稳赢 (15分)
    L1-043 阅览室 (20分)
    L1-042 日期格式化 (5分)
    L1-041 寻找250 (10分)
    L1-040 最佳情侣身高差 (10分)
    L1-039 古风排版 (20分)
    L1-038 新世界 (5分)
    L1-037 A除以B (10分)
    利用C一种最有效的文件存储方式——16bit有符号位2进制存储
  • 原文地址:https://www.cnblogs.com/yangxiansen/p/7860031.html
Copyright © 2011-2022 走看看