正式学习Servlet之前,先要知道什么是maven maven是Java世界中非常知名的"工程管理工具/构建工具" marven的核心功能是: 1.管理依赖 依赖就是,进行一个A操作之前,先要进行一个B操作 我们以后写的代码经常会依赖标准库或者一些第三方库(引入的一些其他jar包) 2.构建/编译(调用jdk) 3.打包 打包就是把java代码给构造成jar(就是一个特殊的压缩包,类似于rar,里面就是把各种.class文件放到一起)或war
我们使用的IDEA中内置了现成的maven,因此不用单独下载安装maven了~
下面我们来讲下如何搭配IDEA使用maven
到这里一个maven项目就建立好了 下面我们看看maven怎么引入依赖------->使用maven帮我们下载安装第三方库(以mysql驱动包为例)
好了说完maven 下面我们正式介绍Servlet 要想完成一个Servlet的hello world需要七个步骤 1.创建一个maven项目 2.引入依赖 需要在pom.xml中引入Servlet api(这个步骤和上面引入mysql驱动包的一样)
注意:像pom.xml中原始需要的代码,内容比较繁琐,同时又相对固定,不用背,可以写一份传到码云上,用的时候直接复制粘贴就行
3.创建目录结构4.0.0 org.example servlet_project1.0-SNAPSHOT 8 8
虽然当下maven已经帮我们创建了一些目录,但还是不够,还不足以支撑我们写一个Servlet项目,因此需要我们手动再创建一些目录和文件
我们在main文件夹下创建一个webapp文件夹,然后在webapp文件夹下的web.xml中写点内容(不能是空的)Archetype Created Web Application
如果在已经下载以来的情况下还标红,可以通过这种方式让红色消失,看得更顺眼点~
4.编写Servlet代码我们在main文件夹下的java文件夹下建一个HelloServlet(以他为例我们看看怎么编写Servlet代码)
我们这里演示的是doGet方法
第一步:写doGet方法 第二步:写响应内容 第三步:写注释 5.打包 当前的代码是不能单独运行的(没有main方法),需要把当前的代码打包,部署到Tomcat上,由Tomcat来进行调用这里解释下为什么------>如果把一个完整的应用程序理解成一个汽车,当前写的Servlet代码就相当于车斗(自己不能跑),可以把车斗挂到车头上(Tomcat就是车头)
第一步:修改pom.xml,往pom.xml中添加如下内容 第二步:双击package触发打包看到BUILD SUCCESS就说明打包成功,如下图
然后你在左边的目录中的target下就能看到你打包的war包了
6.部署 把war包拷贝到Tomcat的webapps目录下
7.验证程序 第一步:双击startup.bat启动Tomcat 第二步在网页中输入路径 访问Tomcat的时候需要指定两级目录,第一级路径是war包名字,第二级路径是我们在HelloServlet中写的注释内容 可以这样认为:一个Tomcat上可以同时部署多个网站,一个网站上又有多个页面。一个请求中的第一级路径就告诉Tomcat要访问的网站是哪个;第二级路径就告诉Tomcat要访问的页面是这个网站中的哪个页面
看下图:
完成这两部以后我们就能在网页上查看结果和我们预期的又不一样了,验证程序写的对不对
预期:
实际:
同时,每刷新一次我们都能在Tomcat启动的黑框框中看到一次hello world
上述这七个步骤是针对一个新项目,项目创建好之后,后续修改代码,前3步就不用重复了,直接从4-7进行操作即可 当然上面介绍的步骤是最为朴素的操作,如果想提高上述流程的效率也可以通过一些第三方工具来简化5和6的操作-------->使用smart tomcat(idea的一个插件),有了它就可以代替上面步骤中的5和6了
注意:当使用smart Tomcat之后,Context Path就不是war包名字了,而是在Smart Tomcat配置页面中指定的名字(你也可以把Smart Tomcat配置页面中指定的名字指定的和war包名字一样,这样就不容易乱了嘛~)
我们需要注意的一点是:Tomcat和IDEA是两个独立的程序!!
下面说下常见问题汇总 1.页面出现404:404 表示用户访问的资源不存在. 大概率是 URL 的路径写的不正确.
2.页面出现405:405 表示对应的 HTTP 请求方法没有实现 3.页面出现500:往往是 Servlet 代码中抛出异常导致的 4.出现空白页面 5.页面出现“无法访问此网站”:一般是 Tomcat 启动就失败了 小结:



