【8】Servlet高级程序设计:过滤器和监听器

一、项目工程目录

【8】Servlet高级程序设计:过滤器和监听器
图 项目工程目录

二、说明

  • 使用过滤器实现了用户登录状态验证
  • 使用监听器实现了在线用户统计
  • 雇员添加、雇员信息修改、登录、注销、查询均使用servlet实现
  • 本实验基于实验六,通过使用servlet,简化了jsp页面中的代码量

三、需要注意的问题

1、因为文件重命名用到IPTimeStamp类,此类通过接收的IP地址与时间戳来进行文件重命名,获取客户端IP地址使用的代码为:request.getRemoteAddr(),所以当访问形式为:http://localhost:8080/xxxxxxxx/xxx.jsp,request.getRemoteAddr()得到的值会有问题,所以访问时url地址改为:http://127.0.0.1:8080/xxxxxxxx/xxx.jsp,可以通过IP地址校验来修正这个错误

2、修复bug:不手动在发布目录下创建upload会报错,本次修改为程序运行时自动创建文件目录

三、文件下载项目工程文件:

1、工程文件:

2、数据库文件:

3

3、web.xml文件内容

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0">
  <display-name>57.实验八-过滤器和监听器-基于实验六-包含头像操作</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  
  <servlet>
    <servlet-name>LoginCheck</servlet-name>
    <servlet-class>
			witersen.servlet.LoginCheck
		</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>LoginCheck</servlet-name>
    <url-pattern>/LoginCheck</url-pattern>
  </servlet-mapping>
  
  
    <servlet>
    <servlet-name>logout</servlet-name>
    <servlet-class>
			witersen.servlet.logout
		</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>logout</servlet-name>
    <url-pattern>/logout</url-pattern>
  </servlet-mapping>
  
  
  <servlet>
    <servlet-name>AddEmp</servlet-name>
    <servlet-class>
			witersen.servlet.AddEmp
		</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>AddEmp</servlet-name>
    <url-pattern>/AddEmp</url-pattern>
  </servlet-mapping>
  
  
  <servlet>
    <servlet-name>UpdateEmp</servlet-name>
    <servlet-class>
			witersen.servlet.UpdateEmp
		</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>UpdateEmp</servlet-name>
    <url-pattern>/UpdateEmp</url-pattern>
  </servlet-mapping>
  
  
  <servlet>
    <servlet-name>query</servlet-name>
    <servlet-class>
			witersen.servlet.query
		</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>query</servlet-name>
    <url-pattern>/query</url-pattern>
  </servlet-mapping>
  
  
  <filter>
    <filter-name>loginFilter</filter-name>
    <filter-class>witersen.servlet.LoginFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>loginFilter</filter-name>
    <url-pattern>/index.jsp</url-pattern>
  </filter-mapping>
  <filter-mapping>
    <filter-name>loginFilter</filter-name>
    <url-pattern>/query.jsp</url-pattern>
  </filter-mapping>
  <filter-mapping>
    <filter-name>loginFilter</filter-name>
    <url-pattern>/list.jsp</url-pattern>
  </filter-mapping>
  
  
  <listener>
    <listener-class>witersen.servlet.OnlineUserList</listener-class>
  </listener>
</web-app>

原创文章,作者:witersen,如若转载,请注明出处:https://www.witersen.com

(8)
witersen的头像witersen
上一篇 2020年11月25日 下午9:49
下一篇 2020年12月2日 下午1:41

相关推荐

发表回复

登录后才能评论