Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。
启动:apache-tomcat-7.0.82 —> bin —> startup.bat
浏览器中测试: http://localhost:8080/ 或 http://127.0.0.1:8080/
关闭: apache-tomcat-7.0.82 —> bin —> shutdown.bat 或 Ctrl+C 或直接关闭
闪退: java环境变量没有配置
查看是否配置java环境变量: cmd中 —> java -version
java环境变量配置: 这台电脑 —> 属性 —> 高级系统设置 —> 环境变量 —> 变量名: JAVA_HOME
变量值: C:\ProgramFiles\Java\jdk1.8.0_45 —> 变量名: Path 变量值的最后面写: ;%JAVA_HOME%\bin
esc键: 退出焦点,继续执行
webapps:存放web项目的, 静态资源(html、css、js、img...), META-INF(项目配置信息), WEB-INF(项目内层,不能直接被访问) —> classes(java代码存放处)、lib(项目依赖内裤jar)、web.xml(核心配置文件)
更改端口号: apache-tomcat-7.0.82 —> conf —> server.xml中的第71行 port: 8005/8080/8009
查看已经占用的端口号: cmd -> netstat -ano
查看8080端口是否被占用: cmd -> netstat -ano | find "8080"
init 初始化方法
destroy 销货方法
service 核心方法
getServletConfig() 获取servlet配置
getServletInfo() 获取servlet信息
init(ServletConfig config)方法 初始化servlet调用的方法 、 tomcat执行 、 一次 、 默认第一次访问时
service(ServletRequest req, ServletResponse res)方法 核心服务方法 、 执行者是tomcat 、 执行次数是每次访问都执行 、 执行时机是每次请求
destroy()方法 销毁方法 、 tomcat 、 1次 、 tomcat正常关闭活着项目移除
关联源码: ctrl+左键添加源码,选择文件
String getInitParameter(String name) 获取servlet初始化参数 T02_Constractor com.hx.web1.web.T02_Constractor encoding utf-8
getInitParameterNames() 获取初始化所有参数的名字
getServletName() 获取servlet配置名
getServletContext() 获取整个应用的app,上下文
四大域对象之一(最大),作用在整个应用
获取mimeType
String fileName = "xx.jpg"; // js -> text/javascript zip txt
String mimeType = servletContext.getMimeType(fileName);
System.out.println(mimeType);
String fileName2 = "txt"; // js -> text/javascript zip txt
String mimeType2 = servletContext.getMimeType(fileName2);
System.out.println(mimeType2);//null
获取项目真实路径(文件上传) 上传图片,保存在tomcat下面
String realPath = servletContext.getRealPath("/upload");
System.out.println(realPath);
String realPath2 = servletContext.getRealPath("upload");
System.out.println(realPath2);
servlet单实例,多线程 service很多次 多线程-> 线程安全问题 最好不要用全局变量!