Java WEB--学习笔记(下)

1.EL和JSTL核心技术

1.1EL表达式 ${ varName }

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

主要功能

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

访问请求参数的数据

  • 在EL之前使用下列方式访问请求参数的数据
    request.getParameter(name);
    request.getParameterValues(name);

  • 在EL中使用下列方式访问请求参数的数据
    param:接收的参数只有一个值。
    paramValues:接受的参数有多个值。

     <!-- 获取指定参数的数值 --> 
     ${param.name} 
     <!-- 获取指定参数中指定下标的数值 --> 	
     ${paramValues.hobby[0]}
    

访问Bean对象的属性
访问方式: $ { 对象名 [“属性名”] }

常用的内置对象

类别标识符描述
JSPpageContext PageContext处理当前页面
作用域pageScope同页面作用域属性名称和值有关的Map类
-requestScope同请求作用域属性的名称和值有关的Map类
-sessionScope同会话作用域属性的名称和值有关的Map类
-applicationScope同应用程序作用域属性的名称和值有关的Map类
请求参数param根据名称存储请求参数的值的Map类
-paramValues把请求参数的所有值作为一个String数组来存储的Map类
请求头header根据名称存储请求头主要值的Map类
-headerValues把请求头的所有值作为一个String数组来存储的Map类
Cookiecookie根据名称存储请求附带的cookie的Map类
初始化参数initParam根据名称存储Web应用程序上下文初始化参数的Map类

常见的运算符:
条件运算符 : ${条件表达式? 语句1 : 语句2}
验证运算符 :

	${empty 表达式} 
	返回布尔值判断表达式是否为"空"值,null值、无元素的集合或数组、长度为零的String被认为是空值。

JSTL标签

基本概念 : JSTL( JSP Standard Tag Library ) 被称为JSP标准标签库

常用核心标签:

输出标签

	<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" %>

Filter+Listener核心技术

Filter过滤器

基本概念

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

使用方式
自定义类实现Filter接口并重写doFilter方法。
在web.xml文件中配置过滤器

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

常用的方法

方法声明功能介绍
void init(FilterConfig filterConfig)实现过滤器的初始化操作
void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)执行过滤操作的功能
void destroy()实现过滤器的销毁操作

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

常用的方法

方法声明功能介绍
String getFilterName()获取过滤器的名字
String getInitParameter(String name)获取指定的初始化参数信息
Enumeration getInitParameterNames()获取所有的初始化操作名称
ServletContext getServletContext()获取ServletContext对象

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

Listener监听器

** 基本概念**:

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

基本分类

监听器类型功能介绍
javax.servlet.ServletRequestListener监听request作用域的创建和销毁
javax.servlet.ServletRequestAttributeListener监听request作用域的属性状态变化
javax.servlet.http.HttpSessionListener监听session作用域的创建和销毁
javax.servlet.http.HttpSessionAttributeListener监听session作用域的属性状态变化
javax.servlet.ServletContextListener监听application作用域的创建和销毁
javax.servlet.ServletContextAttributeListener监听application作用域的属性状态变化
javax.servlet.http.HttpSessionBindingListener监听对象与session的绑定和解除
javax.servlet.http.HttpSessionActivationListener监听session数值的钝化和活化

监听器详解
(1)ServletRequestListener监听器
在ServletRequest创建和关闭时都会通知ServletRequestListener监听器。

方法声明功能介绍
void requestInitialized(ServletRequestEvent sre)实现ServletRequest对象的初始化
void requestDestroyed(ServletRequestEvent sre)实现ServletRequest对象的销毁

(2)ServletRequestAttributeListener监听器
向ServletRequest添加、删除或者替换一个属性的时候,将会通知
ServletRequestAttributeListener监听器。

方法声明功能介绍
void attributeAdded(ServletRequestAttributeEvent srae)增加属性时触发
void attributeReplaced(ServletRequestAttributeEvent srae)修改属性时触发
void attributeRemoved(ServletRequestAttributeEvent srae)删除属性时触发

(3)HttpSessionListener监听器
当一个HttpSession刚被创建或者失效(invalidate)的时候,将会通知HttpSessionListener监听器。

方法声明功能介绍
void sessionCreated(HttpSessionEvent se)当一个HttpSession对象被创建时会调用这个方法
void sessionDestroyed(HttpSessionEvent se)当一个HttpSession超时或者调用HttpSession的invalidate()方法让它销毁时,将会调用这个方法

(4)HttpSessionAttributeListener监听器
HttpSession中添加、删除或者替换一个属性的时候,将会通知HttpSessionAttributeListener监听器。

方法声明功能介绍
void attributeAdded(HttpSessionBindingEvent se)当往会话中加入一个属性的时候会调用这个方法
void attributeRemoved(HttpSessionBindingEvent se)当从会话中删除一个属性的时候会调用这个方法
void attributeReplaced(HttpSessionBindingEvent se)当改变会话中的属性的时候会调用这个方法

(5)ServletContextListener监听器
在ServletContext创建和关闭时都会通知ServletContextListener监听器。

方法声明功能介绍
void contextInitialized(ServletContextEvent sce)当ServletContext创建的时候,将会调用这个方法
void contextDestroyed(ServletContextEvent sce)当ServletContext销毁的时候(例如关闭应用服务器或者重新加载应用),将会调用这个方法

(6)ServletContextAttributeListener监听器
向ServletContext添加、删除或者替换一个属性的时候,将会通知ServletContextAttributesListener监听器

方法声明功能介绍
void attributeAdded(ServletContextAttributeEvent scae)往ServletContext中加入一个属性的时候触发
void attributeRemoved(ServletContextAttributeEvent scae)从ServletContext中删除一个属性的时候触发
void attributeReplaced(ServletContextAttributeEvent scae)改变ServletContext中属性的时候触发

(7)HttpSessionBindingListener监听器
HttpSession中绑定和解除绑定时,将会通知HttpSessionListener监听器。

方法声明功能介绍
void valueBound(HttpSessionBindingEvent event)有对象绑定时调用该方法
void valueUnbound(HttpSessionBindingEvent event)有对象解除绑定时调用该方法

(8)HttpSessionActivationListener监听器
当有session数值的钝化和活化操作时,将会通知HttpSessionActivationListener监听器。

方法声明功能介绍
void sessionWillPassivate(HttpSessionEvent se)有钝化操作时调用该方法
void sessionDidActivate(HttpSessionEvent se)有活化操作时调用该方法

配置context.xml文件:

Linux系统常用命令

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

命令 [-选项] [参数]

常用命令:
(1)查看目录下文件/目录

命令功能描述
lslist显示文件
ls -l 或 lllist -list显示详细信息
ls -alist -all显示全部(包含隐藏文件)文件
ls -allist -all list 上两个合体
ls目录名 查看目录下有什么东西

(2)目录切换

命令功能描述
cd …上一级目录
cd dirname进入目录
cd 或 cd ~直接回到用户的家目录
cd /回到系统根目录

(3)查看完整路径

命令功能描述
pwd查看当前目录所在的位置

(4)查看当前用户

命令功能描述
whoami查看当前用户的名称

(5)用户切换

命令功能描述
su普通用户切换到root用户
su root切换到root用户
su 用户名切换到普通用户
exit退回到原来用户

(6)管理用户

命令功能描述
useradd xxx创建用户
passwd xxx为创建的用户设置密码
userdel删除用户

(7)查看命令的所在目录

命令功能描述
which 命令查看指定命令所在的路径信息

(8)文件操作

命令功能描述
touch fileName创建名字为fileName的文件
touch dir/fileName在dir目录下创建名字为fileName的文件
echo 内容 > fileName把内容覆盖写到文件中,若文件不存在则创建
echo 内容 >> fileName把内容追加到文件中
cat fileName打印文件内容到终端
more fileName分屏查看文件各行内容,不支持回看
less fileName查看文件各部分内容,支持回看
head -n fileName查看文件的前n行内容
tail -n fileName查看文件末尾n行内容
wc fileName查看文件的行数

(9)目录操作

命令功能描述
mkdir 目录名创建普通文件夹
mkdir -p 目录/目录/目录递归方式创建多级父子文件夹
mv dir1 dir2将dir1移动到dir2中
mv dir1/dir2 ./将dir1中dir2移动到当前目录下
mv dir1 name将dir1改名为name
cp dir1 name将dir1拷贝为name
cp -r dir1 dir2需要设置参数 -r (recursive递归) 无视目录层次
rm 文件删除文件
rm -r 目录递归删除目录(无视目录层次)
rm -rf 文件/目录-r force(强制) 删除文件/目录

(10)查找操作

命令功能描述
find / -namepasswd[完整名称] 查找passwd文件
find ./ -name“p*” 查找带”p”的文件
find ./ -typef 查找所有文件
grep 内容 fileName从指定文件中查找指定的内容

(11)权限管理

命令功能描述
chmod 权限文件/目录名 管理指定文件的权限信息,r读:4 w写:2 x执行:1

(12)进程管理

命令功能描述
ps查看当前终端窗口里的进程
ps -aux查看系统中的所有进程
ps -ef查看进程列表
kill 进程号杀死指定的进程
kill -9 进程号强制杀死指定的进程

(13)其它命令

命令功能描述
ifconfig查看当前系统的IP地址等信息
tar zcvf 压缩文件名.tar.gz 路径1 路径2 …实现一组文件或文件夹的打包
tar zxvf 压缩文件名.tar.gz实现解压缩解包
man [章节号] 命令/函数名查询指定的命令或函数

vi工具的使用:
vi和vim是Linux系统命令行下的文本编辑器,通常格式为:vi 文件名 或 vim 文件名

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

命令功能描述
i在当前位置之前插入
a在当前位置之后插入
o在当前行下插入

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

命令功能描述
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替换每一行中的所有

使用vimtutor 命令用来练习vi命令

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值