立个flag,之后都用markdown写了!第一次不会用,写的太难看,但是上一篇写的那叫一个美。
回到主题,写博客是为了复习,这几天简单的对web部分学习了一下。整理了一些,先把这些已经整理的发出来吧。
1. Tomcat
依旧老规矩 Xmind :
作为一个服务器,tomcat主要学习的是使用,而使用间就需要包含与其进行交互的工程项目。
1. javaweb中项目是由大多由java进行后台书写逻辑,html等进行页面显示等的编写。而这样一个工程需要进行交互,即java与tomcat的交互需要使用到一个规则——servlet。
2. 另一方面,在tomcat执行这个项目之后,外部客户端通过浏览器能够访问这个页面了,这时候客户端显示与获取服务端的数据就需要使用另一个规则——http。
2. Servlet
第一次接触servlet,有点难以理解,不明白这东西的具体功能,javaweb部分的知识是有几个大块一起组成的,这之间这些交互方式,协议等太重要了。http在平常生活中有一些接触能够有一些理解,JDBC在代码书写时候能够很清晰的表达其交互方式的思想,servlet确实是第一次接触,看见程序的时候都不是很明白他为什么是这样的。
Xmind先上:
- 概述
开发web项目后,我们都需要把这个项目交由服务器运行,在这里就是tomcat了,但是这个web项目,最简单的html格式的页面tomcat能够直接识别运行,之后浏览器就能够显示相应的页面,但在工程中,我们都需要对数据进行处理,以及使用java对前后端做一个主要的数据处理工作,这对java与其他部分交互有了很高的要求,而java语言tomcat无法直接识别,所以需要这样一个servlet这样一个协议。
那么servlet里面到底是做什么的?
从开发步骤开始吧
- 定义一个类继承HttpServlet
/**继承了HttpServlet需要实现其两个方法,这两个方法用于http提交方式的交互*/ public class ServletDemo extends HttpServlet{ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response){ System.out.println("get"); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response){ System.out.println("post"); } }
- 配置web.xml文件
<servlet> <servlet-name>demo</servlet-name> <servlet-class>com.servletTest.ServletDemo</servlet-class> </servlet> <servlet-mapping> <servlet-name>demo</servlet-name> <url-pattern>/test</url-pattern> </servlet-mapping>
- 之后发布项目,运行tomcat,使用浏览器访问:http:/localhost:8080/web/test
不懂所以从轮子开始,再一步一步分析他的过程:
a.浏览器访问地址:http:/localhost:8080/web/test
b.以http的get方法想服务器发送请求
c.tomcat将先识别web.xml文件
1.访问至url-pattern
2.匹配servlet-name,找到servlet程序
d. 转到servlet程序中,运行get方法,之后响应。
PS:
servlet单独这样其实还是有一些模糊,不过再加入了jsp之后应该能够理解了- JSP
java servlet page:
这是一个能够写java的html文件,但其内部源码是一个java程序,使用打印流写出一个html文件,这是一个页面布局文件与数据处理的java整合的新格式文件。
在浏览器访问这个文件在web.xml文件中匹配的路径时,会自动找到这个文件路径,进行显示以及其相关的servlet的java文件。以这样一步一步相关的方式进行交互关联。- JSP
3. Http协议
Xmind:
上面的思维导图做的比较具体,多的就不赘述了。
其实http进行传输过程中有一系列的编码解码过程,这之间如果传输的是中文,在没有进行特殊处理就会出现乱码,这一点之后将会再开一章进行叙述。
未完待续….