工具/原料:
前言
配置Servlet环境的前提是配置好java环境,不过既然开始学习servlet,相信大家都有了java的基础,肯定也配置好了java环境,所以我们直接进入下一步。
tomcat的安装及配置:
安装:笔者之前安装的是tomcat7.0的安装版版本,所以后续配置过程也就以该版本为例配置servlet环境,不过读者大可选择其他版本进行下载安装。由于笔者已经安装好了,在这里百度来了一个教程,大家根据自己的情况选择合适的版本。
配置:打开tomcat目录,点击conf文件夹,用记事本的方式打开server.xml 文件,找到
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
再后面添上一句:URIEncoding="utf-8"
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="utf-8"/>
如图
注意:
1.上面的百度经验教程提到“不要安装在c盘”,笔者也不理解为什么这样说,因为笔者的tomcat就是安装在C盘的,也能正常运行,也许是我没发现有什么问题吧。不过安装路径本身并不重要。
2. 压缩包版可以通过bin目录下的startup.bat和shutdown.bat启动和关闭tomcat,但是安装版的没有这两个文件,但相应的在bin目录下有两个可执行文件,tomcat7.exe和tomcat7w.exe,前者是命令行窗口,双击可以启动tomcat,关闭命令行窗口tomcat会自动关闭;后者是图形化控制窗口,可以通过不同的按钮来控制tomcat的状态。
在eclipese中配置servlet
下载解压
下载eclipse EE 版:https://www.eclipse.org/downloads/eclipse-packages/
下载后直接解压就好了,路径无所谓。然后,鼠标单击选择eclipse.exe,右键-->发送-->桌面快捷方式。这样以后就可以直接在桌面打开了。
导入servlet包
在编写代码过程中,我们需要引入javax.servlet这个包,但是,在我们的jdk里没有包含这个包,所以我们现在需要手动引入这个包。
首先,我们先找到这个包:
在你电脑里tomcat目录下的lib文件里找到servlet-api.jar这个压缩包
然后,找到你jdk的目录,依次进入 jdk1.80_144(jdk版本可能不同)-->jre-->lib-->ext,然后把之前找到的
这样,即使我们用命令行也可以编译带servlet包的java程序了。
将tomcat与eclipse关联
现在,我们打开eclipese,在菜单栏上依次点击Window -> Preferences-->Server-->Runtime Enviroments,然后点击右边的add。(如果你使用的不是eclipse EE的版本,可能看不到Server选项。所以请下载eclipse EE 版本)
选择与你电脑里相应的版本(比如我下的tomcat7.0),并勾选下面的框,然后点击Next
在Tomcat installation directory框里填入你电脑tomcat的绝对路径,JRE也选择你配置的java环境。
然后点击finish。
现在,我们来新建一个Servlet项目: 点击file-->new-->Dynamic Web Project。
如果找不到,选择最下面的other,然后在搜索框输入web查找就可以看到了。
输入项目名字,比如我这里写了Servlet。其他的默认就行,然后Next
打上勾,然后点Finish
如果不出意外,你新建的项目应该是这样子
Servlet 的简单实例
现在,我们在Java Resources下的src新建一个包test,然后再新建一个类HelloWorld,代码如下。
package test; // 导入必需的 java 库 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; // 扩展 HttpServlet 类 public class HelloWorld extends HttpServlet { private String message; public void init() throws ServletException { // 执行必需的初始化 message = "Hello World"; } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 设置响应内容类型 response.setContentType("text/html"); // 实际的逻辑是在这里 PrintWriter out = response.getWriter(); out.println("<h1>" + message + "</h1>"); } public void destroy() { // 什么也不做 } }
如果引入的servlet包还报错,可以试试下面的方法。
鼠标右键点击项目名称(即Servlet)-->properties-->targeted Runtimes,然后勾选我们刚刚新建的tomcat(为了演示教程,我一共建了两个),然后apply就可以。
Servlet部署
打开WebContent-->WEB-INF下的web.xml,在<web-app></web-app>标签之间加上下面几行字
<servlet> <servlet-name>HelloWorld</servlet-name> <servlet-class>test.HelloWorld</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloWorld</servlet-name> <url-pattern>/HelloWorld</url-pattern> </servlet-mapping>
然后运行HelloWorld(在左边目录栏里,右键单击Helloworld.java源文件-->Run As-->1 Run on Server)
点击finish
HelloWorld。。
就先这样了,关于中文乱码问题,下篇教程再讲了。。。。