一、HTML/CSS/JS基础(1 - 2周)
-
HTML(超文本标记语言)
- 学习HTML文档结构,包括DOCTYPE声明、html标签、head标签和body标签的作用。
- 掌握常见的HTML标签,如标题标签(h1 - h6)、段落标签(p)、链接标签(a)、图像标签(img)、列表标签(ul、ol、li)等。
- 学习表格标签(table、tr、td)用于数据展示,表单标签(form、input、select、textarea)用于数据收集。
- 通过简单的网页布局案例,如个人简历网页、产品展示网页,巩固HTML知识。
-
CSS(层叠样式表)
- 理解CSS的引入方式,包括内联样式、内部样式表和外部样式表。
- 学习CSS选择器,如标签选择器、类选择器、id选择器、后代选择器、伪类选择器(如:hover、:active)等。
- 掌握CSS的盒模型(content、padding、border、margin),用于布局和元素尺寸控制。
- 学习CSS的布局属性,如display(block、inline、inline - block)、float、position(relative、absolute、fixed)等,能够实现简单的网页布局,如两栏布局、导航栏布局。
-
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周)
-
XML(可扩展标记语言)
- 理解XML的基本概念和用途,与HTML的区别。
- 学习XML的语法规则,包括标签定义、属性使用、实体引用。
- 掌握XML的文档结构,如根元素、子元素的关系。
- 学习使用DOM或SAX解析XML文档,了解它们的优缺点。
- 通过实际案例,如配置文件的读取和解析,理解XML在数据存储和传输中的应用。
-
Tomcat中间件
- 了解Tomcat的基本概念和作用,作为Web服务器和Servlet容器的功能。
- 学习Tomcat的安装和配置,包括端口设置、虚拟主机配置。
- 理解Web应用在Tomcat中的部署方式,包括目录结构(如WEB - INF目录的作用)。
- 简单了解Tomcat的管理控制台的使用,如部署、启动、停止应用。
三、HTTP协议(1 - 2周)
-
HTTP协议基础
- 学习HTTP协议的概念、作用和历史发展。
- 理解HTTP请求的组成部分,包括请求行(方法、URL、协议版本)、请求头(如User - Agent、Accept、Content - Type)和请求体(如POST请求的数据)。
- 掌握HTTP响应的组成部分,包括响应行(协议版本、状态码、状态消息)、响应头(如Content - Length、Content - Type、Set - Cookie)和响应体(返回的网页内容或数据)。
- 了解常见的HTTP方法(GET、POST、PUT、DELETE)及其适用场景。
-
HTTP状态码
- 深入学习HTTP状态码的分类,如1xx(信息性状态码)、2xx(成功状态码)、3xx(重定向状态码)、4xx(客户端错误状态码)、5xx(服务器错误状态码)。
- 记住一些常见的状态码,如200(OK)、301(永久重定向)、302(临时重定向)、404(未找到)、500(内部服务器错误),并理解它们在实际Web应用中的含义。
-
工具使用与实践
- 学习使用浏览器开发者工具(如Chrome DevTools)查看HTTP请求和响应的详细信息。
- 通过编写简单的命令行工具(如使用Python的requests库)发送HTTP请求,加深对HTTP协议的理解。
四、GIT版本控制(1 - 2周)
-
GIT基础概念
- 理解版本控制的重要性和GIT在其中的地位。
- 学习GIT的基本命令,如git init(初始化仓库)、git add(添加文件到暂存区)、git commit(提交更改到本地仓库)。
- 掌握GIT的分支概念,包括创建分支(git branch)、切换分支(git checkout)、合并分支(git merge)。
-
远程仓库协作
- 学习将本地仓库与远程仓库(如GitHub、GitLab)关联(git remote add)。
- 掌握推送(git push)和拉取(git pull)更改的操作,理解远程分支和本地分支的关系。
- 了解团队协作中的分支策略,如主分支(master或main)和开发分支(dev)的使用,以及如何通过拉取请求(Pull Request)进行代码审查和合并。
-
GIT高级主题(可选)
- 学习GIT的标签(git tag)用于版本标记。
- 理解GIT的工作流,如Git Flow、GitHub Flow等。
- 学习如何解决GIT中的冲突(git rebase或git merge解决冲突的方法)。
五、Servlet与JSP(2 - 3周)
-
Servlet基础
- 理解Servlet的概念和作用,作为服务器端小程序的工作原理。
- 学习Servlet的生命周期,包括初始化(init)、服务(service)和销毁(destroy)方法。
- 掌握如何编写简单的Servlet类,继承HttpServlet,并重写doGet和doPost方法。
- 学习在web.xml文件中配置Servlet,包括Servlet的映射路径。
-
JSP(Java Server Pages)基础
- 理解JSP的概念和特点,作为动态网页技术的优势。
- 学习JSP的基本语法,包括脚本元素(<% %>、<%= %>、jsp:scriptlet等)、指令(<%@ page %>、<%@ include %>)和动作标签(jsp:forward、jsp:useBean等)。
- 掌握JSP与Servlet的关系,如JSP如何被转换为Servlet进行处理。
- 通过简单的示例,如用户登录验证、数据展示页面,实现JSP和Servlet的结合使用。
六、Filter与Listener(1 - 2周)
-
Filter(过滤器)
- 理解Filter的概念和用途,如用于请求过滤、资源访问控制、数据加密等。
- 学习Filter的生命周期,包括初始化(init)、过滤(doFilter)和销毁(destroy)。
- 掌握如何编写Filter类,实现Filter接口,并重写doFilter方法。
- 学习在web.xml文件或通过注解方式配置Filter,包括过滤的URL模式。
-
Listener(监听器)
- 理解Listener的概念和应用场景,如用于监听ServletContext、HttpSession、ServletRequest的生命周期事件。
- 学习常见的Listener接口,如ServletContextListener、HttpSessionListener、ServletRequestListener等。
- 掌握如何编写Listener类,实现相应的接口,并重写接口中的方法。
- 通过实际案例,如统计在线人数(使用HttpSessionListener),理解Listener的作用。
七、Session与Cookie(1 - 2周)
-
Session(会话)
- 理解Session的概念和作用,用于跟踪用户的会话状态。
- 学习Session的创建、获取和销毁方法,如通过HttpSession接口的方法。
- 掌握Session的存储机制,如在服务器端存储用户相关信息。
- 理解Session的安全性问题,如防止Session劫持的方法。
-
Cookie(小甜饼)
- 理解Cookie的概念和用途,作为在客户端存储少量数据的方式。
- 学习Cookie的创建、设置和读取方法,如通过HttpServletResponse和HttpServletRequest的方法。
- 掌握Cookie的属性,如名称、值、有效期、路径、域等。
- 理解Cookie与Session的配合使用,如通过Cookie存储Session ID。
八、MVC(2 - 3周)
-
MVC概念基础
- 深入理解MVC(Model - View - Controller)架构模式的概念、优点和应用场景。
- 学习MVC各个组件的职责,如Model负责数据处理和存储、View负责展示数据、Controller负责业务逻辑和流程控制。
- 理解MVC在JavaWeb中的实现方式,如通过Servlet作为Controller、JSP作为View、JavaBean作为Model。
-
MVC框架实践(可选)
- 学习使用流行的MVC框架,如Spring MVC,包括框架的基本架构、配置和使用。
- 掌握如何在Spring MVC中定义Controller、Model和View,以及它们之间的交互方式。
- 通过简单的Web应用项目,如博客系统、电商系统的部分功能,实践Spring MVC的应用。
九、AJAX、JQuery、Bootstrap(2 - 3周)
-
AJAX(异步JavaScript和XML)
- 理解AJAX的概念和作用,用于在不刷新整个页面的情况下与服务器进行数据交互。
- 学习使用原生JavaScript实现AJAX请求,包括XMLHttpRequest对象的使用。
- 掌握AJAX的应用场景,如实时数据更新、表单异步提交。
-
JQuery(JavaScript库)
- 了解JQuery的基本概念和优势,简化JavaScript开发。
- 学习JQuery的基本选择器、事件处理和动画效果。
- 掌握JQuery的AJAX方法,更加方便地实现数据交互。
- 通过实际案例,如动态加载数据、菜单交互,使用JQuery进行开发。
-
Bootstrap(前端框架)
- 理解Bootstrap的概念和用途,用于快速构建响应式网页。
- 学习Bootstrap的网格系统,用于页面布局。
- 掌握Bootstrap的组件(如导航栏、按钮、表单、模态框等)和插件(如轮播图、下拉菜单等)的使用。
- 通过模仿一些知名网站的页面,使用Bootstrap进行设计和实现。
十、Vue(2 - 3周)
-
Vue基础概念
- 理解Vue的基本概念和特点,如数据驱动、组件化开发。
- 学习Vue的基本语法,包括插值表达式({{ }})、指令(v - bind、v - on、v - if、v - for等)。
- 掌握Vue实例的创建和属性,如data、methods、computed等。
- 通过简单的示例,如待办事项列表、计数器,学习Vue的基本应用。
-
Vue组件开发
- 深入理解Vue组件的概念和作用,组件的定义和注册方式。
- 学习组件之间的通信方式,如父子组件通信(props和$emit)、非父子组件通信(事件总线、Vuex)。
- 掌握Vue的路由(Vue Router)概念和基本使用,用于构建单页面应用(SPA)。
- 通过一个小型的Web应用项目,如简单的管理系统前端部分,实践Vue组件开发和路由应用。
十一、从0到1开发Web项目(贯穿整个学习过程)
-
项目规划与需求分析
- 在学习各个技术点的过程中,开始构思一个Web项目,如小型电商网站、企业内部管理系统等。
- 进行需求分析,确定项目的功能模块,如用户管理、商品管理、订单管理等。
-
技术选型与架构设计
- 根据项目需求,选择合适的技术栈,如前端框架(Bootstrap、Vue)、后端技术(Servlet、JSP、Spring MVC等)。
- 设计项目的架构,如采用MVC架构模式,确定各层的职责和交互方式。
-
项目开发与测试
- 逐步开发项目的各个功能模块,按照先后端再前端的顺序,或者前后端并行开发。
- 进行单元测试和集成测试,确保各个功能的正确性,如使用JUnit进行后端代码测试,使用Selenium或Jest进行前端代码测试。
-
项目部署与优化
- 将项目部署到服务器上,如使用Tomcat部署到本地服务器或者云服务器。
- 对项目进行性能优化,如优化数据库查询、压缩前端资源、缓存数据等。