zoukankan      html  css  js  c++  java
  • 第四阶段模块二 学习笔记

    EL表达式

    • EL(Expression Language)表达式提供了在JSP中简化表达式的方法,可以方便地访问各种数据并输出。

     主要功能

    • 依次访问pageContext、request、session和application作用域对象存储的数据。
    • 获取请求参数值。
    • 访问Bean对象的属性。
    • 访问集合中的数据。
    • 输出简单的运算结果。

    执行流程

     访问请求参数的数据

    • 在EL之前使用下列方式访问请求参数的数据
    • request.getParameter(name);
    • request.getParameterValues(name);
    • 在EL中使用下列方式访问请求参数的数据
    • param:接收的参数只有一个值。
    • paramValues:接受的参数有多个值。

    访问Bean对象的属性

    • 方式一: $ { 对象名 . 属性名 },例如:${user.name}
    • 方式二: $ { 对象名 [“属性名”] },例如:${user["name"]}

    常用的内置对象

     常用的运算符

     

     

     

     

      JSTL标签

    • JSTL( JSP Standard Tag Library ) 被称为JSP标准标签库。
    • 开发人员可以利用这些标签取代JSP页面上的Java代码,从而提高程序的可读性,降低程序的维护难度。

     使用方式

    • 下载JSTL的jar包并添加到项目中,下载地址为:https://tomcat.apache.org/download-taglibs.cgi
    • 在JSP页面中使用taglib指定引入jstl标签库,方式为:
    <!-- prefix属性用于指定库前缀 -->
    <!-- uri属性用于指定库的标识 -->
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

    常用核心标签

    <c:out></c:out> 用来将指定内容输出的标签
    <c:set></c:set> 用来设置属性范围值的标签
    <c:remove></c:remove> 用来删除指定数据的标签
    <c:if test =“EL条件表达式”>
    满足条件执行
    </c:if >
    <c:choose >
    <c:when test =“EL表达式”>
     满足条件执行
      </c:when><c:otherwise>
       不满足上述when条件时执行
    </c:otherwise>
    </c:choose >
    <c:forEach var=“循环变量” items=“集合”></c:forEach>
    <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
    <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

    自定义标签

    • 如果上面几个标签不能满足需求,程序员也可以自定义标签,步骤如下:
    • 编写标签类继承SimpleTagSupport类或TagSupport类并重写doTag方法或doStartTag方法。
    • 定义标签库文件(tld标签库文件)并配置标签说明文件到到WEB-INF下
    • 在JSP中添加taglib指令引入标签库使用

    编码如下:

    public class HelloTag extends SimpleTagSupport {
      private String name;
      public String getName() {
        return name;
     }
      public void setName(String name) {
        this.name = name;
     }
      @Override
      public void doTag() throws JspException, IOException {
        JspWriter out = this.getJspContext().getOut();
        out.println("自定义标签的参数为:" + name);
     }
    }
    
    
    <tag>
    <name>helloTag</name>
      <tag-class>com.lagou.demo02.HelloTag</tag-class>
      <body-content>empty</body-content>
      <attribute>
     <name>name</name>
        <required>true</required>
      </attribute>
    </tag>
    
    
    <%@ taglib prefix="hello" uri="http://lagou.com" %>

    Filter过滤器

    • Filter本意为”过滤“的含义,是JavaWeb的三大组件之一,三大组件为:Servlet、Filter、Listener。
    • 过滤器是向 Web 应用程序的请求和响应处理添加功能的 Web 服务组件。
    • 过滤器相当于浏览器与Web资源之间的一道过滤网,在访问资源之前通过一系列的过滤器对请求
    • 进行修改、判断以及拦截等,也可以对响应进行修改、判断以及拦截等。

    使用方式

    自定义类实现Filter接口并重写doFilter方法。

    public class LoginFilter implements Filter {
      public void doFilter(ServletRequest request, ServletResponse response,
     FilterChain chain) throws IOException,ServletException {
        //TODO 处理逻辑,必须调用下面的方法
        chain.doFilter(request,response);
     }
    }

    在web.xml文件中配置过滤器。

    <filter>
      <filter-name>LoginFilter</filter-name>
      <filter-class>com.lagou.LoginFilter</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>LoginFilter</filter-name>
      <url-pattern>/*</url-pattern>
    </filter-mapping>

    Filter接口

    • javax.servlet.Filter接口主要用于描述过滤器对象,可以对资源的请求和资源的响应操作进行筛选操作。

    常用的方法

     FilterConfig接口

    • javax.servlet.FilterConfig接口主要用于描述过滤器的配置信息。

    常用方法

     多个过滤器的使用

    如果有多个过滤器都满足过滤的条件,则容器依据映射的先后顺序来调用各个过滤器。

     过滤器优点

    • 实现代码的“可插拔性”,即增加或减少某个功能模块,不会影响程序的正常执行。
    • 可以将多个相同处理逻辑的模块集中写在过滤器里面,可实现重复利用、也方便代码的维护。

    Listener监听器

    • Servlet规范中定义的一种特殊的组件,用来监听Servlet容器产生的事件并进行相应的处理。
    • 容器产生的事件分类如下:
      • 生命周期相关的事件。
      • 属性状态相关的事件。
      • 存值状态相关的事件。
    • 底层原理是采用接口回调的方式实现。

     基本分类

     (1)ServletRequestListener监听器

     (2)ServletRequestAttributeListener监听器

     (3)HttpSessionListener监听器

    (4)HttpSessionAttributeListener监听器

     (5)ServletContextListener监听器

     (6)ServletContextAttributeListener监听器

     (7)HttpSessionBindingListener监听器

     (8)HttpSessionActivationListener监听器

     配置context.xml文件的方式如下:

    <Manager className="org.apache.catalina.session.PersistentManager"
    saveOnRestart="true">
    <!-- 配置文件存放的路径信息,可以自由指定 -->
      <Store className="org.apache.catalina.session.FileStore"
    directory="C:session"/>
    </Manager>

    Linux系统

    Linux系统诞生于1991年,在林纳斯·托瓦兹(Linus Torvalds)上大学期间因不满意教学中使用的

    MINIX操作系统并出于个人爱好设计和研发的。
    Linux系统是一套免费、自由、开发源代码的类Unix操作系统,是一个基于Posix(Portable

    Operating System Interface)标准和多用户、多任务、支持多线程的操作系统。

    Linux能运行主要的Unix工具软件、应用程序和网络协议,支持32位和64位硬件。

    centos目录结构

     常用命令

    • Shell俗称外壳,是提供用户使用界面的一种软件,叫做命令解释器。
    • 主要负责接受用户输入的命令,然后调用相应的应用程序,最后向用户输出程序运行的结果

     

     

     

     

     

     

     

     

     

     

     

     

      vi工具

     (1)命令模式的编辑命令

    i:在当前位置之前插入
    a:在当前位置之后插入
    o:在当前行下插入

    (2)命令行模式的删除命令

     x 删除一个字符

    dw 删除当前词

    3dw 删除三个词

    dd 删除当前行

    5dd 删除五行

    (3)命令行模式的修改命令

    r 替换一个字符
    cw 替换一个单词
    cc 替换一行
    C 替换从光标至行尾

    (4)命令行模式的拷贝命令

    yw 拷贝词
    yy 拷贝行(或Y)
    dd 剪切行
    p 当前行下粘贴
    u    撤销
    ctrl+r 取消撤销

    (5)底行模式的命令

    :w  存盘
    :w newfile 存成新文件
    :wq 存盘退出Vi(或ZZ,或:x)
    :q! 强行退出不存盘
    :1,2co3 拷贝行1,行2在行3之后
    :4,5mo6 移动行4,行5在行6之后
    :%s /源字符串/目标字符串
    :%s /源字符串/目标字符串/g 替换每一行中的所有

    网络ip配置

    BOOTPROTO=static
    ONBOOT=yes
    IPADDR=192.168.72.128
    GATEWAY=192.168.72.2
    NETMASK=255.255.255.0
    DNS1=114.114.114.114

    网络ip配置后重启网络服务

    使用命令使得配置文件生效:service network restart

    centros java jdk 环境变量配置

    • 使用root用户打开配置文件/etc/profile,向文件末尾追加内容如下:
    export JAVA_HOME=/usr/javajdk
    export PATH=$JAVA_HOME/bin:$PATH
    • 保存退出后让文件生效并验证是否配置成功
    source /etc/profile
    javac -version

    开放防火墙端口

    /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT 开启8080端口(暂时开通)

    发布web项目

    • 将Web项目打成war包,通过Xftp工具将war包放在tomcat/webapp目录并启动

    Mysql的下载和安装

    (1)下载Mysql的repo源

    wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

    (2)安装rpm包

    rpm -ivh mysql57-community-release-el7-8.noarch.rpm

    (3)安装Mysql

    yum install mysql-server

    (4)启动服务

    service mysqld start

    (5)查看服务状态

    systemctl status mysqld

    (6)使用root用户登录

    mysql -u root

    (7)修改临时密码

    alter user 'root'@'localhost' identified by 'QiDian@666';

    attention:在安装好mysql之后,默认没有设置root账号对应密码的,可以通过如下命令查看到:

    grep password /var/log/mysqld.log

    使用远程客户端工具访问linux数据库

    访问时可能会遇到1130,连接不上的问题,还需要更改root用户对应的访问ip。

    use mysql;
    select host from user where user='root';
    update user set host='%' where user='root';
    flush privileges;

    Shell编程

    •  Shell是一个命令行解释器,可以接收应用程序或用户命令,然后访问操作系统内核。
    • Shell是一个功能相当强大的编程语言,易编写、易调试、灵活性强;

    编写第一个程序

    使用vi工具创建xxx.sh的文件。
    以#!/bin/bash开头并编写代码后保存。

    执行Shell程序的方式

    • 方式一:./文件名,此方式需要执行权限。
    • 方式二:/bin/bash 文件名,此方式不需要执行权限。

    变量定义

    定义变量:变量=值
    撤销变量:unset 变量

    定义规则

    • 变量名称可以由字母、数字和下划线组成,但是不能以数字开头,环境变量名建议大写。
    • 不能使用bash里的关键字。
    • 中间不能有空格,可以有下划线。
    • 在bash中,变量默认类型都是字符串类型,无法直接进行数值运算。
    • 变量的值如果有空格,需要使用双引号或单引号括起来。

    常用运算符

     

    流程控制语句

     

     

     

     

     

  • 相关阅读:
    FSCapture 取色工具(绿色版 )
    Java EE.JavaBean
    Java EE.JSP.内置对象
    Java EE.JSP.动作组件
    Java EE.JSP.指令
    Java EE.JSP.脚本
    21、多态与多态性、内置方法、反射、异常处理
    20、继承的应用、super、组合
    19、property、绑定方法(classmethod、staticmethod)、继承
    18、类
  • 原文地址:https://www.cnblogs.com/zhf123/p/14398590.html
Copyright © 2011-2022 走看看