有关环境配置的知识: JAVA SE11环境变量配置(Windows) Java中设置环境变量CLASSPATH的意义html
熟悉IDEA最基本操做: IDEA为新手专业打造前端
四 级标题java
HTTP协议详解 - 小坦克 - 博客园 (建议看完他的HTTP专题) [get是requset的一种]node
HTML from 表单提交请求到servlet 实例git
Http响应Response详解 - 勇敢的心 - CSDN博客github
利用HTML的表单get提交功能,后台Servlet处理request / response web
[response就是平时HTTP把html文件“送”到浏览器的方式ajax
抓包中看到的各类元素数据库
JSP与servlet的关系:javaweb学习总结(十四)——JSP原理
既然开发Java Web项目,那就默认会HTML开发了
事实上关于网页的语言学习均可以看一下国内两个W3cschool网站
若是想抓包一下,能够用现代浏览器如Chrome Firefox打开一个网页,而后F12开发者工具 - NetWork 勾上“”Preserve log”,F5刷新一下,能够看到一堆文件,随便点一个,点击Header或Response
首先按以下方法建立JavaEE Web Application项目
Intellij idea建立javaWeb以及Servlet简单实现 - yhao2014的专栏 - CSDN博客
Ps.记得让防火墙放过IntelliJ idea,Idea的代码提示错误是在右侧边栏,没有窗口的...
(若是Application Server选项里没有Tomcat,能够点击旁边的NEW 选择Tomcat Server,而后JIDEA会自动识别你的环境变量)
而后开始代码实现
若是只改动了资源文件,须要刷新Tomcat
在InteliJ Idea里运行Servlet有个坑,
事实上调试栏上的开始是使用Tomcat 8080端口,这个会使得web.xml生效
而浏览器那一栏是单元测试,是用来测试网页的,修改html后刷新就会生效,和Tomcat无关。默认是使用InteliJ Idea的服务器,不会使用你的web.xml.........
(建议,网页编辑部分用VSCode+Live Server插件,保存便可自动刷新预览)
Ps. 若是修改了 web.xml ,则须要Redeploy从新部署 (直接Update classes and resources是没用的,毕竟Tomcat说了算)
另外,我作了一个示例(JDK11 Tomcat9)
度盘连接: https://pan.baidu.com/s/1smw_cTgQXvV8NkB9HaHtOQ
(因为过小,放github浪费,就丢网盘了)提取码: tasz
稍微深刻地理解一下Servlet:Java Web(一) Servlet详解!! [很是重要]
若是看不懂,请看此处解释:
其实就是利用HTML的<form>表单功能:
填写完HTML表单点击“登陆”或“取消”(其实我偷懒,因此取消和登陆功能写同样了)
而后就会触发表单的submit,这时通知浏览器发送表单内容
其实就是使用表单指定的方法(这里是GET)发送,其实和你直接浏览器访问
http://localhost/Login?username=a&password=2 是同样的 而后做为 实现了Servlet和Web等功能的服务器Tomcat,Tomcat 就会按照WEB.xml里描述的去拦截Login这个路径并转由 LoginServlet 这个类处理,这样就使得LoginServlet类并启动并执行。 以后LoginServlet类就接收Request,根据函数体定义处理,最后发回Response 而后浏览器收到了Response 注:Response能够是一个HTML资源,也能够是其余的,最后浏览器根据Response来生成并显示网页内容
我参考了:http://www.w3school.com.cn/ajax/index.asp 短短几页,请务必看完
固然,目前还有一种新技术Fetch能够用
1 function loadXMLDoc() { 2 var xmlhttp = new XMLHttpRequest(); 3 console.log("Good"); 4 xmlhttp.open("GET","Login?username=Bill&passwd=jkkdsf",true); 5 xmlhttp.send(); 6 7 xmlhttp.onreadystatechange=function() { /*必须先判断状态*/ 8 if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 9 document.getElementById("datalist").innerHTML = xmlhttp.responseText; 10 } 11 } 12 13 }
<!-- </form>标签后面 --> <div id="datalist"></div> <!-- JS部分放在后面,便于页面内容更快加载展现 --> <script src="script/ajax-demo.js"></script> <!--- </body>以前 -->
因为JS里的get内容是错误的用户名密码,因此LoginServlet类会转发LoginError.html的全部内容到浏览器,
而后JS把response的Text内容都写到id为datalist的元素里
效果(很是粗暴的把LoginError.html所有加载进来了,可是去掉了一些html标签,我猜想是 浏览器自动去掉的)
因而可知,咱们能够轻轻松松地用 JDBC Servlet AJAX 来作一个动态加载数据库内容的Java Web项目
安全方面(web.xml分角色权限)
java - 使用一个JDBC领域,Glassfish 3安全- 基于表单 认证
使用JDBC读写数据库与网页交互
因为我要作管理员界面,因此不考虑SEO,所以所有先后端分离
关于先后端分离:JavaWeb项目为何咱们要放弃jsp?为何要先后端解耦?为何要先后端分离?2.0版,为分布式架构打基础。
先后端分离后对http地址路径的处理:用nginx的反向代理机制解决前端跨域问题
很是好很是基础的JavaWeb入门教程(Servlet JSP SSH SSM都讲到了):https://skyline75489.github.io/Heart-First-JavaWeb/
经过浏览器打开网页的底层故事:What-happens-when 的中文翻译
JS函数式编程学习:https://skyline75489.github.io/learnrx-zh-cn/
AJAX读取JSON的思路和AJAX读取XML差很少
[感想]原来XML和HTML相近的好处:用JS处理时,调用方法同样 如getElementsByTagName("TITLE");
<待写内容>
介绍MVC等抽象模型概念 从Script到Code Blocks、Code Behind到MVC、MVP、MVVM
框架 架构 设计模式的区别: 架构、框架和设计模式关系
【架构】 简单的说架构就是一个蓝图,是一种设计方案,将客户的不一样需求抽象成为抽象组件,而且可以描述这些抽象组件之间的通讯和调用。
【框架】 软件框架是项目软件开发过程当中提取特定领域软件的共性部分造成的体系结构,不一样领域的软件项目有着不一样的框架类型。框架不是现成可用的应用系统。而是一个半成品,提供了诸多服务,开发人员进行二次开发,实现具体功能的应用系统。
【设计模式】 是一套被反复使用、多数人知晓的、通过分类编目的、代码设计经验的总结,它强调的是一个设计问题的解决方法。
------------- lfsf802
JSON
<待了解概念>
Java设计模式
设计模式