JavaWeb核心知识点实战简单学生管理系统

简介: JavaWeb核心知识点实战简单学生管理系统

这个版本是没有数据库的,存储于文本需要用到IO流,用到的知识有:登录的form表单以及获取表单数据,bootstrap简单修饰界面,servlet相关知识点如:四大作用域对象存储数据进行交互,session销毁登录状态,cookie实现最后一次访问时间的记录,请求转发(请求域一次请求中有效)用作回显数据,重定向跳转页面,filter乱码过滤器和权限过滤器等等...

流程图:

纯手工作图感觉不错,这才像样么.以后多画.提示思路而且有方向.


Servlet是用来处理逻辑的,jsp是显示页面的,虽然说jsp也是Servlet但是显示页面还是jsp更专业,因为jsp就是个长得像html的Servlet.暂时没有使用mvc模式就contraller做逻辑吧.

登录效果:

登录成功:

查看学生:

记事本作为假数据库存储

登录失败:

登录失败回显数据至登录页面

filter乱码过滤器:

package com.zgl.web.filter;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;
@WebFilter("/*")
public class CharacterEncodingFilter implements Filter {
    public void destroy() {
    }
    public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException {
        req.setCharacterEncoding("utf-8");
        resp.setContentType("text/html;charset=utf-8");
        chain.doFilter(req, resp);
    }
    public void init(FilterConfig config) throws ServletException {
    }
}

filter权限过滤器:

package com.zgl.web.filter;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebFilter("/*")
public class LoginFilter implements Filter {
    public void destroy() {
    }
    public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException {
      HttpServletRequest request=(HttpServletRequest) req;
        HttpServletResponse response=(HttpServletResponse) resp;
        String url = request.getRequestURL().toString().toLowerCase();
        System.out.println(url);
        if (url.contains("css")||url.contains("fonts")||url.contains("login")){
            chain.doFilter(request,response);
        }else if (request.getSession().getAttribute("name")!=null){
            chain.doFilter(request,response);
        }else {
            response.sendRedirect(request.getContextPath()+"/login.jsp");
        }
        }
  /*      chain.doFilter(req, resp);*/
    public void init(FilterConfig config) throws ServletException {
    }
}
目录
相关文章
|
4天前
|
监控 Java 调度
探秘Java虚拟机(JVM)性能调优:技术要点与实战策略
【6月更文挑战第30天】**探索JVM性能调优:**关注堆内存配置(Xms, Xmx, XX:NewRatio, XX:SurvivorRatio),选择适合的垃圾收集器(如Parallel, CMS, G1),利用jstat, jmap等工具诊断,解决Full GC问题,实战中结合MAT分析内存泄露。调优是平衡内存占用、延迟和吞吐量的艺术,借助VisualVM等工具提升系统在高负载下的稳定性与效率。
18 1
|
6天前
|
数据采集 监控 前端开发
JAVA公立医院绩效考核管理系统源码-对接HIS数据
在医院的工作和管理上,院领导需要对院内工作人员的工作情况进行了解、评价和监控。 下面将对医院绩效管理系统的HIS数据流程加以阐述。
15 1
JAVA公立医院绩效考核管理系统源码-对接HIS数据
|
4天前
|
Java API 开发者
Java网络编程基础与Socket通信实战
Java网络编程基础与Socket通信实战
|
12小时前
|
并行计算 Java API
Java中的函数式编程实战与Lambda表达式应用
Java中的函数式编程实战与Lambda表达式应用
|
12小时前
|
监控 搜索推荐 Java
实战:基于Java的实时数据流处理平台
实战:基于Java的实时数据流处理平台
|
1天前
|
安全 Java 调度
Java并发编程:从基础到实战
【7月更文挑战第3天】在Java的世界中,并发编程是一块充满挑战与机遇的领域。本文将带领读者从理解并发编程的基本概念开始,逐步深入到Java并发工具的使用和高级技巧的应用。我们将一起探索如何在多线程环境下保证数据的一致性和程序的正确性,以及如何通过高效的并发策略来提升应用性能。准备好,让我们开启Java并发编程的旅程,掌握让应用飞一般运行的秘密。
11 1
|
2天前
|
Java API 开发者
Java网络编程基础与Socket通信实战
Java网络编程基础与Socket通信实战
|
3天前
|
监控 搜索推荐 Java
实战:基于Java的实时数据流处理平台
实战:基于Java的实时数据流处理平台
|
3天前
|
消息中间件 安全 Java
使用Java实现智能物流管理系统的关键技术
使用Java实现智能物流管理系统的关键技术
|
12小时前
|
传感器 数据采集 Java
Java串口通信的基础与实战应用
Java串口通信的基础与实战应用