创建第一个Servlet程序

来源:互联网 发布:天刀怎样导入捏脸数据 编辑:程序博客网 时间:2024/05/17 07:43


   引言


   小编现在是心在曹营身在汉啊,因为虽然小编在工作岗位上干的是.net方面的活,但是小编却无时无刻不在思


念java啊,学习java不是因为小编在.net方面已经超神了,没有什么挑战性了。如果小编真的是这样的话,我早就直


接在曹营吃吃喝喝了,谁还回去啊。只是小编在以后的工作方向上还是比较偏向java方面的。所以小编需要学习点


java知识为以后北漂储备点粮食。


   虽然小编对servlet的工作原理还不是很清楚,但是这并不影响我们使用哈,这个东西就像我们平时生活中的一


些工具一样,像computer,ipad,phone。。。一样,我们也不知道他们具体是怎样的原理,但是这并不耽误我们使


用和快乐啊,学习心得东西需要先会用然后再研究原理和扩展他们。


   第一个程序


   小编在这个简单的程序中使用Tomcat作为服务器,其实这个东西和我们平时用的IIS和Apache一样,只不过


Tomcat除了可做web服务器以外还可以作为应用服务器。下面简单介绍一些Tomca的几个需要用到的文件。


   首先我们在Tomcat的webapps文件夹中创建一个文件夹存放我们的项目中用到的东西我这叫test_servlet;然后


里面在新建一个文件夹叫WEB-INF,和WEB-INF平级的存放HTML文件,也就是我们的页面。然后在WEB-INF的内部分别有


两个文件夹:classes用来存放我们编译好的java类,lib文件夹用来存放我们需要依赖的jar包等,还有一个web.xml


文件,里面是关于servlet的映射。我们这个小程序大概就用到这么几个文件。


   一次完整的请求过程图



  代码展示


   看我们界面代码:


<html><head><title>登录</title><body><form action="loginServlet">用户:<input type="text" name="username"><br>密码:<input type="text" name="password"><br><input type="submit" value="登录"></form><body></head></html>


   servlet类代码


 

import java.io.*;import javax.servlet.*;import javax.servlet.http.*;public class LoginServlet extends HttpServlet{    public void doGet(HttpServletRequest request,                     HttpServletResponse response)              throws ServletException,                     IOException{      String username=request.getParameter("username");      String password=request.getParameter("password");      System.out.println("username=" + username);      System.out.println("password=" + password);            response.setContentType("text/html;GB18030");      response.getWriter().println("登录成功!");                                        }                     }

   web.xml文件代码


 

<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"><servlet><servlet-name>MyServlet</servlet-name><servlet-class>LoginServlet</servlet-class></servlet><servlet-mapping>    <servlet-name>MyServlet</servlet-name>    <url-pattern>/loginServlet</url-pattern>  </servlet-mapping></web-app>

  在这里主要介绍一些web.xml文件,其余的两个我们都能看懂,代码非常的简单,在xml文件中每一个web应用都会


对应类似上面的一组映射。这两个节点的名称是不能改变的,只能是<servlet></servlet>和<servlet-mapping>


</servlet-mapping>否在tomcat不能解读这个xml文件。其中<servlet-name>MyServlet</servlet-name>中Myservlet


是我们给自己的那个servlet类起的一个别名,这个名称随便起。<servlet-class>LoginServlet</servlet-class>需


要填写这个类的完成路径,在上面的代码中我们可以看出这个类没有包只有一个类名,所以这里只写一个类名就够


了。

   <servlet-mapping></servlet-mapping>节点之间填写对这个类的映射,首先我们需要知道对那个类进行映射,


这里通过别名来查找所以<servlet-name>MyServlet</servlet-name>应该填写上一个节点的别名,因为我们传输是通


过HTTP协议进行的,所以在<url-pattern>/loginServlet</url-pattern>应该填写这个类的URL请求形式,这个节点


之间也是我们任意填写的,我们可以写成<url-pattern>/exam/LoginServlet</url-pattern>,只要我们和form表单的


action中填写这个地址就没有问题。


   以上基本上是这个小程序中的内容,只要我们编译完成以后将对应的文件放在指定的文件夹中,然后启动


tomcat后在浏览器中输入localhost:8080/test_servlet/Login.html就可以正常启动了。


   小结


   通过这个小程序对servlet的位置和使用有了一定的了解,可以说迈出了屌丝的第一步,当然如果我们学习一个


新东西止步于此的话,那就永远的一身屌丝气质了,所以我们还需要研究它的原理以及和Tomcat的关系,这样我们才


能屌丝逆袭,所以在以后的学习中会分享对servlet原理的研究。

0 0
原创粉丝点击