JavaWeb核心技术阶段的详细学习路线

news/2024/12/18 17:36:31/文章来源:https://www.cnblogs.com/java-note/p/18615524

一、HTML/CSS/JS基础(1 - 2周)

  1. HTML(超文本标记语言)

    • 学习HTML文档结构,包括DOCTYPE声明、html标签、head标签和body标签的作用。
    • 掌握常见的HTML标签,如标题标签(h1 - h6)、段落标签(p)、链接标签(a)、图像标签(img)、列表标签(ul、ol、li)等。
    • 学习表格标签(table、tr、td)用于数据展示,表单标签(form、input、select、textarea)用于数据收集。
    • 通过简单的网页布局案例,如个人简历网页、产品展示网页,巩固HTML知识。
  2. CSS(层叠样式表)

    • 理解CSS的引入方式,包括内联样式、内部样式表和外部样式表。
    • 学习CSS选择器,如标签选择器、类选择器、id选择器、后代选择器、伪类选择器(如:hover、:active)等。
    • 掌握CSS的盒模型(content、padding、border、margin),用于布局和元素尺寸控制。
    • 学习CSS的布局属性,如display(block、inline、inline - block)、float、position(relative、absolute、fixed)等,能够实现简单的网页布局,如两栏布局、导航栏布局。
  3. JavaScript(脚本语言)

    • 了解JavaScript的基本语法,包括变量声明(var、let、const)、数据类型(number、string、boolean、object、function、undefined、null)。
    • 学习操作符(算术、比较、逻辑)和控制语句(if - else、for、while、do - while)。
    • 掌握函数的定义和调用,包括匿名函数、箭头函数。
    • 学习DOM(文档对象模型)操作,如获取元素(document.getElementById、document.querySelector)、修改元素属性(style、innerHTML)、添加和删除元素(appendChild、removeChild)。
    • 通过JavaScript实现简单的交互效果,如表单验证、图片轮播、菜单展开收起。

二、XML与Tomcat中间件(1周)

  1. XML(可扩展标记语言)

    • 理解XML的基本概念和用途,与HTML的区别。
    • 学习XML的语法规则,包括标签定义、属性使用、实体引用。
    • 掌握XML的文档结构,如根元素、子元素的关系。
    • 学习使用DOM或SAX解析XML文档,了解它们的优缺点。
    • 通过实际案例,如配置文件的读取和解析,理解XML在数据存储和传输中的应用。
  2. Tomcat中间件

    • 了解Tomcat的基本概念和作用,作为Web服务器和Servlet容器的功能。
    • 学习Tomcat的安装和配置,包括端口设置、虚拟主机配置。
    • 理解Web应用在Tomcat中的部署方式,包括目录结构(如WEB - INF目录的作用)。
    • 简单了解Tomcat的管理控制台的使用,如部署、启动、停止应用。

三、HTTP协议(1 - 2周)

  1. HTTP协议基础

    • 学习HTTP协议的概念、作用和历史发展。
    • 理解HTTP请求的组成部分,包括请求行(方法、URL、协议版本)、请求头(如User - Agent、Accept、Content - Type)和请求体(如POST请求的数据)。
    • 掌握HTTP响应的组成部分,包括响应行(协议版本、状态码、状态消息)、响应头(如Content - Length、Content - Type、Set - Cookie)和响应体(返回的网页内容或数据)。
    • 了解常见的HTTP方法(GET、POST、PUT、DELETE)及其适用场景。
  2. HTTP状态码

    • 深入学习HTTP状态码的分类,如1xx(信息性状态码)、2xx(成功状态码)、3xx(重定向状态码)、4xx(客户端错误状态码)、5xx(服务器错误状态码)。
    • 记住一些常见的状态码,如200(OK)、301(永久重定向)、302(临时重定向)、404(未找到)、500(内部服务器错误),并理解它们在实际Web应用中的含义。
  3. 工具使用与实践

    • 学习使用浏览器开发者工具(如Chrome DevTools)查看HTTP请求和响应的详细信息。
    • 通过编写简单的命令行工具(如使用Python的requests库)发送HTTP请求,加深对HTTP协议的理解。

四、GIT版本控制(1 - 2周)

  1. GIT基础概念

    • 理解版本控制的重要性和GIT在其中的地位。
    • 学习GIT的基本命令,如git init(初始化仓库)、git add(添加文件到暂存区)、git commit(提交更改到本地仓库)。
    • 掌握GIT的分支概念,包括创建分支(git branch)、切换分支(git checkout)、合并分支(git merge)。
  2. 远程仓库协作

    • 学习将本地仓库与远程仓库(如GitHub、GitLab)关联(git remote add)。
    • 掌握推送(git push)和拉取(git pull)更改的操作,理解远程分支和本地分支的关系。
    • 了解团队协作中的分支策略,如主分支(master或main)和开发分支(dev)的使用,以及如何通过拉取请求(Pull Request)进行代码审查和合并。
  3. GIT高级主题(可选)

    • 学习GIT的标签(git tag)用于版本标记。
    • 理解GIT的工作流,如Git Flow、GitHub Flow等。
    • 学习如何解决GIT中的冲突(git rebase或git merge解决冲突的方法)。

五、Servlet与JSP(2 - 3周)

  1. Servlet基础

    • 理解Servlet的概念和作用,作为服务器端小程序的工作原理。
    • 学习Servlet的生命周期,包括初始化(init)、服务(service)和销毁(destroy)方法。
    • 掌握如何编写简单的Servlet类,继承HttpServlet,并重写doGet和doPost方法。
    • 学习在web.xml文件中配置Servlet,包括Servlet的映射路径。
  2. JSP(Java Server Pages)基础

    • 理解JSP的概念和特点,作为动态网页技术的优势。
    • 学习JSP的基本语法,包括脚本元素(<% %>、<%= %>、jsp:scriptlet等)、指令(<%@ page %>、<%@ include %>)和动作标签(jsp:forward、jsp:useBean等)。
    • 掌握JSP与Servlet的关系,如JSP如何被转换为Servlet进行处理。
    • 通过简单的示例,如用户登录验证、数据展示页面,实现JSP和Servlet的结合使用。

六、Filter与Listener(1 - 2周)

  1. Filter(过滤器)

    • 理解Filter的概念和用途,如用于请求过滤、资源访问控制、数据加密等。
    • 学习Filter的生命周期,包括初始化(init)、过滤(doFilter)和销毁(destroy)。
    • 掌握如何编写Filter类,实现Filter接口,并重写doFilter方法。
    • 学习在web.xml文件或通过注解方式配置Filter,包括过滤的URL模式。
  2. Listener(监听器)

    • 理解Listener的概念和应用场景,如用于监听ServletContext、HttpSession、ServletRequest的生命周期事件。
    • 学习常见的Listener接口,如ServletContextListener、HttpSessionListener、ServletRequestListener等。
    • 掌握如何编写Listener类,实现相应的接口,并重写接口中的方法。
    • 通过实际案例,如统计在线人数(使用HttpSessionListener),理解Listener的作用。

七、Session与Cookie(1 - 2周)

  1. Session(会话)

    • 理解Session的概念和作用,用于跟踪用户的会话状态。
    • 学习Session的创建、获取和销毁方法,如通过HttpSession接口的方法。
    • 掌握Session的存储机制,如在服务器端存储用户相关信息。
    • 理解Session的安全性问题,如防止Session劫持的方法。
  2. Cookie(小甜饼)

    • 理解Cookie的概念和用途,作为在客户端存储少量数据的方式。
    • 学习Cookie的创建、设置和读取方法,如通过HttpServletResponse和HttpServletRequest的方法。
    • 掌握Cookie的属性,如名称、值、有效期、路径、域等。
    • 理解Cookie与Session的配合使用,如通过Cookie存储Session ID。

八、MVC(2 - 3周)

  1. MVC概念基础

    • 深入理解MVC(Model - View - Controller)架构模式的概念、优点和应用场景。
    • 学习MVC各个组件的职责,如Model负责数据处理和存储、View负责展示数据、Controller负责业务逻辑和流程控制。
    • 理解MVC在JavaWeb中的实现方式,如通过Servlet作为Controller、JSP作为View、JavaBean作为Model。
  2. MVC框架实践(可选)

    • 学习使用流行的MVC框架,如Spring MVC,包括框架的基本架构、配置和使用。
    • 掌握如何在Spring MVC中定义Controller、Model和View,以及它们之间的交互方式。
    • 通过简单的Web应用项目,如博客系统、电商系统的部分功能,实践Spring MVC的应用。

九、AJAX、JQuery、Bootstrap(2 - 3周)

  1. AJAX(异步JavaScript和XML)

    • 理解AJAX的概念和作用,用于在不刷新整个页面的情况下与服务器进行数据交互。
    • 学习使用原生JavaScript实现AJAX请求,包括XMLHttpRequest对象的使用。
    • 掌握AJAX的应用场景,如实时数据更新、表单异步提交。
  2. JQuery(JavaScript库)

    • 了解JQuery的基本概念和优势,简化JavaScript开发。
    • 学习JQuery的基本选择器、事件处理和动画效果。
    • 掌握JQuery的AJAX方法,更加方便地实现数据交互。
    • 通过实际案例,如动态加载数据、菜单交互,使用JQuery进行开发。
  3. Bootstrap(前端框架)

    • 理解Bootstrap的概念和用途,用于快速构建响应式网页。
    • 学习Bootstrap的网格系统,用于页面布局。
    • 掌握Bootstrap的组件(如导航栏、按钮、表单、模态框等)和插件(如轮播图、下拉菜单等)的使用。
    • 通过模仿一些知名网站的页面,使用Bootstrap进行设计和实现。

十、Vue(2 - 3周)

  1. Vue基础概念

    • 理解Vue的基本概念和特点,如数据驱动、组件化开发。
    • 学习Vue的基本语法,包括插值表达式({{ }})、指令(v - bind、v - on、v - if、v - for等)。
    • 掌握Vue实例的创建和属性,如data、methods、computed等。
    • 通过简单的示例,如待办事项列表、计数器,学习Vue的基本应用。
  2. Vue组件开发

    • 深入理解Vue组件的概念和作用,组件的定义和注册方式。
    • 学习组件之间的通信方式,如父子组件通信(props和$emit)、非父子组件通信(事件总线、Vuex)。
    • 掌握Vue的路由(Vue Router)概念和基本使用,用于构建单页面应用(SPA)。
    • 通过一个小型的Web应用项目,如简单的管理系统前端部分,实践Vue组件开发和路由应用。

十一、从0到1开发Web项目(贯穿整个学习过程)

  1. 项目规划与需求分析

    • 在学习各个技术点的过程中,开始构思一个Web项目,如小型电商网站、企业内部管理系统等。
    • 进行需求分析,确定项目的功能模块,如用户管理、商品管理、订单管理等。
  2. 技术选型与架构设计

    • 根据项目需求,选择合适的技术栈,如前端框架(Bootstrap、Vue)、后端技术(Servlet、JSP、Spring MVC等)。
    • 设计项目的架构,如采用MVC架构模式,确定各层的职责和交互方式。
  3. 项目开发与测试

    • 逐步开发项目的各个功能模块,按照先后端再前端的顺序,或者前后端并行开发。
    • 进行单元测试和集成测试,确保各个功能的正确性,如使用JUnit进行后端代码测试,使用Selenium或Jest进行前端代码测试。
  4. 项目部署与优化

    • 将项目部署到服务器上,如使用Tomcat部署到本地服务器或者云服务器。
    • 对项目进行性能优化,如优化数据库查询、压缩前端资源、缓存数据等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/854893.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VLM中的适配器adapter起什么作用

An Introduction to VLMs: The Future of Computer Vision Models | by Ro Isachenko | Nov, 2024 | Towards Data Science

模型参数量计算(以transformer为例)

前言 模型中常见的可训练层包括卷积层和线性层,这里将给出计算公式并在pytorch下进行验证。 计算模型的参数: import torch.nn as nndef cal_params(model: nn.Module):num_learnable_params = sum(p.numel() for p in model.parameters() if p.requires_grad)num_non_learna…

文献解读:采用波浪前缘的风电机组翼型后缘降噪实验研究

在半消声室内进行了仿生正弦波形前缘控制风力机翼型尾缘自噪声的实验研究,基于声波束形成结果,展示了波浪前缘的噪声控制效果,波浪形前缘振幅越大、波长越小,对翼型后缘降噪效果越好。最大声压级降低可达33.9dB。题目:采用波浪前缘的风电机组翼型后缘降噪实验研究 关键词:…

活动策划还能这样做,效率提升看得见!

文档协同如何助力电商团队降本增效? 电商行业以快著称,活动运营的每一秒都可能决定销量的成败。然而,在紧张的时间表下,如何确保团队成员高效协同,是很多电商运营者面临的难题。文档协同成为破解这一问题的关键手段。 打破信息差,构建透明化流程 在大型电商活动中,信息孤…

用WPF实现桌面锁屏壁纸的应用

用WPF实现桌面锁屏壁纸的应用 目录用WPF实现桌面锁屏壁纸的应用需求分析需求方案实现App.xamlApp.xaml.csMainWindow.xamlMainWindow.xaml.csImportImageHelper.csKeyboardHookLib.cs壁纸 需求分析 需求存取数据库二进制文件轮播图片显示系统时间滑动解锁禁用键盘添加托盘图标开…

GaussDB技术解读高性能——分布式优化器

GaussDB技术解读高性能——分布式优化器 分布式数据库场景下表分布在各个节点上,数据的本地性Data Locality是分布式优化器中生成执行计划时重点考虑的因素,基于Share Nothing的分布式数据库中有一个很关键概念就是“移动数据不如移动计算”,之所以有数据本地性就是因为数据…

15隐藏元素-文本溢出-盒子模型的四个部分

一、元素隐藏方法 在HTML开发过程当中存在一些元素我们想要将一些元素隐藏起来,元素如果想要隐藏有哪些方式: (1)将display设置为none页面上不显示,但是HTML仍然存在 并且也不占据位置和空间了,后面的元素就会跑上来。 (2)visibility设置为hidden visibility这个单词是…

manim边学边做--突出显示

本篇介绍Manim中用于突出显示某些内容的动画类,主要包括:ApplyWave:让图形或文字产生连续波浪式变形的动画类,用于展示波动效果,参数可调节 Circumscribe:用于在几何场景中展示图形与其外接图形的关系,动画围绕对象生成外接图形 Flash:通过快速改变对象视觉属性产生闪烁…

今天是周三?

符合题墓的标题,朴实无华[WUSTCTF2020]朴实无华 首先打开页面,发现无信息含泪扫墓路,发现robots.txt访问其中的链接,此时发现http头中藏有一个路径直接访问,得到以下代码,有一点点乱码,用抓包软件打开即可发现代码分为三关,我们一关一关看 第一关:intval绕过 //level …

《刚刚问世》系列初窥篇-Java+Playwright自动化测试-7-元素基础定位方式-下篇 (详细教程)

1.简介 上一篇主要是讲解我们日常工作中在使用Playwright进行元素定位的一些比较常用的基础定位方式的理论基础知识以及在什么情况下推荐使用。今天这一篇讲解和分享一下剩下部分的基础定位方式。 2.过滤器定位 例如以下 DOM 结构,我们要在其中单击第二个产品卡的购买按钮。我…