【web概念】
1软件架构
C/S 客户端/服务器
B/S 浏览器/服务器
2资源分类
〈静态资源〉:所有用户访问得到相同结果
〈动态资源〉:每个用户访问相同资源,可能得到不同结果 如 servlet /jsp
3网络通信三要素
〈ip〉电子设备(计算机)在网络中唯一标识
〈端口〉应用程序在计算机中标识
〈传输协议〉数据传输的规则
1)基础协议
◎tcp 安全 三次握手 速度慢
◎udp 不安全 速度快
【常见web服务器软件】
1) webLogic
2)webSphere
3)JBOSS
4)Tomcat ✧
【Tomcat 安装】
1.官网下载tomcat
2.将下载的.zip 压缩包解压到系统目录
3.bin目录下startup.bat 启动shutdown.bat关闭 .sh结尾的(linux命令).bat结尾的(windows命令)通过在浏览器中输入localhost:8080/测试浏览器是否开启
conf目录 logging.properties 日志记录 server.xml可以设置端口号 tomcat-users.xml用户信息
web.xml可以设置tomcat支持的文件类型
lib目录存放依赖jar包
logs目录用来存放tomcat在运行过程中产生的日志文件
webapps目录用来存放应用程序,当tomcat启动时会去加载webapps目录下的应用程序。可以以文件夹、war包、jar包的形式发布应用。
work目录用来存放tomcat在运行时的编译后文件
【Tomcat idea运行】
1.解压zip压缩包 将tomcat 粘贴在创建项目下
2.进入解压目录,创建一个home目录 将conf 和webapps目录移入home目录
3.在tomcat目录下创建pom.xml 引入tomcat依赖
4.导入工程(检查maven)
下载源码apache-tomcat-8.5.42-src
在源码目录下编写 pom.xml 文件
-
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.apache.tomcat</groupId> <artifactId>Tomcat8.5</artifactId> <name>Tomcat8.5</name> <version>8.5</version> <build> <finalName>Tomcat8.5</finalName> <sourceDirectory>java</sourceDirectory> <testSourceDirectory>test</testSourceDirectory> <resources> <resource> <directory>java</directory> </resource> </resources> <testResources> <testResource> <directory>test</directory> </testResource> </testResources> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.4</version> <configuration> <encoding>UTF-8</encoding> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> <dependencies> <dependency> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.4</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <dependency> <groupId>org.easymock</groupId> <artifactId>easymock</artifactId> <version>3.4</version> </dependency> <dependency> <groupId>ant</groupId> <artifactId>ant</artifactId> <version>1.7.0</version> </dependency> <dependency> <groupId>wsdl4j</groupId> <artifactId>wsdl4j</artifactId> <version>1.6.2</version> </dependency> <dependency> <groupId>javax.xml</groupId> <artifactId>jaxrpc</artifactId> <version>1.1</version> </dependency> <dependency> <groupId>org.eclipse.jdt.core.compiler</groupId> <artifactId>ecj</artifactId> <version>4.5.1</version> </dependency> </dependencies> </project>
选择tomcat下新建的pom.xml导入
5. 路径:tomcat_original\apache-tomcat-8.5.84-src\java\org\apache\catalina\startup\Bootstrap.java
6.配置启动类
运行-->编辑配置.
Main class设置为org.apache.catalina.startup.Bootstrap 添加VM options
-
-Dcatalina.home=D:/MyJava/tomcat_note/apache-tomcat-8.5.42-src/home -Dcatalina.base=D:/MyJava/tomcat_note/apache-tomcat-8.5.42-src/home -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=D:/MyJava/tomcat_note/apache-tomcat-8.5.42-src/home/conf/logging.properties -Duser.language=en -Duser.region=US -Dfile.encoding=UTF-8
7.在tomcat的源码org.apache.catalina.startup.ContextConfig中的configureStart函数中手动将JSP解析器初始化
webConfig();
//加上下面这一行
context.addServletContainerInitializer(new JasperInitializer(), null);
8.访问 http://localhost:8080/