标签:结构 lib 运行 需要 connector 复习 ase time protoc
进入bin目录,双击startup.bat,运行该文件
访问浏览器,输入:http://localhost:8080 访问自己;
? 输入:http://别人的ip:8080 访问别人(8080为Tomcat的端口号)
*原因:没有正确配置JAVA_HOME变量;
*暴力解决:在cmd中输入netstat -ano找到占用端口号的对应进程并杀死
*在Tomcat的config\server.xml下找到
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="8445" />
*一般将端口号修改为80(浏览器默认端口号)
? *好处:使用浏览器,在访问时就不用输入端口号了
正常关闭:
bin\shutdow.bat
ctrl+c
强制关闭:
*点击启动窗口的 x
部署项目的方式:
直接将项目放到webapps目录下即可。
*项目的访问路径(即保存项目的文件名)就是浏览器访问的虚拟目录
*简化部署:可以将项目打包成一个war包,再将war包放置在webapps目录下。
? *war包会自动解压缩
配置conf\server.xml文件:
找到
<Context docBase="C:\项目存放的路径" path="/虚拟目录" />
? *优点:不用将项目部署在webapps下了,可以放置在任何位置
? *缺点:需要修改server.xml文件,可能造成破坏
在config\Catalina\localhost下创建任意名称的xml文件,在文件中编写
<Context docBase="C:\项目存放的位置"
? *虚拟路径就是此xml文件的名称
? *优点:相比于第二种配置方法,可以避免破坏server.xml文件
静态项目和动态项目:
? *Servlet就是一个接口,定义了Java类被浏览器访问到(Tomcat识别)的规则。
创建一个JavaEE项目
定义一个Java类,实现(implement)Servlet接口
复习Servlet接口中的抽象方法(Servlet的生命周期方法)
配置Servlet
*在web.xml中进行配置:
<servlet>
<servlet-name>自定义名称</servlet-name>
<servlet-class>对应类的全类名</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>自定义的名称</servlet-name>
<url-pattern>访问的资源路径</url-pattern>
</servlet-mapping>
当服务器接收到客户端浏览器的请求后,会解析URL路径,访问获取的Servlet的资源路径
查找web.xml文件,是否有对应的
如果有,则找到对应的
Tomcat会将字节码文件加载进内存,并且创建对象
调用其方法
init方法:
*在Servlet被创建时执行,并只执行一次。
*Servlet什么时候被执行?
? *默认情况下,第一次被访问时,Servlet被创建
? *可以配置创建Sevlet的时机:
? 在web.xml的
<load-on-startup>负数或正数</load-on-startup>
? *如果是负数,则Servlet在被访问时创建
? *如果时正数,则Servlet在服务器(Tomcat)启动时创建
?
service方法:
*每次访问Servlet时,便会别调用一次
destory方法:
*Servlet被销毁时执行,并且只执行一次
*只有当服务器正常关闭时,才会执行
*destory方法在Servlet被销毁之前执行,相当于释放资源,而init相当于加载资源
好处:支持直接配置。可以不需要web.xml了
步骤:
创建一个JavaEE项目,选择Servlet的版本为3.0以上,可以不创建web.xml
定义一个Java类,实现Servlet接口
复写方法
在类上使用@WebServlet注解,进行配置
*@WebServlet("资源路径")
标签:结构 lib 运行 需要 connector 复习 ase time protoc
原文地址:https://www.cnblogs.com/lilyen/p/12681281.html