最近看了写http协议的学习资料,因此想要实现下andriod平台和服务器通信,那就servlet吧,哎哟,还不错哦!顺便说下,我这个servlet服务是想获得用户名和密码进行校验,然后反给客户端状态码;数据库啥的没来得及做,周末时间还是短了点......

Eclipse的java环境搭建好了
    1.下载tomcat,解压版的,这里我用的是以前下载的apache-tomcat-6.0.35,解压到任意盘=>C:\apache-tomcat-6.0.35;
    2.下载tomcat插件,解压到Eclipse插件目录=>H:\eclipse\plugins目录,启动Eclipse就可以看见小猫了;
    3.Eclipse下的Window->Preferences->Tomcat设置下版本和tomcat主目录,版本别搞错了!省的麻烦...
    
    完成,其实就是这么简单,点击下“启动小猫”就可以启动了,只要没显示什么异常,没显示空指针的log;而是显示了启动时间就ok了;

4.新建一个tomcat工程,我的是TaxiServlet;
    5.在 TaxiServlet/WEB-INF/src下新建一个包,我的是com.servlet.login;
    6.在包下新建类,我的是LoginAction.java,内容稍后说;
    7.在WEB-INF下新建web.xml文件;

8.首先LoginAction.java内容可以如下:
    9.web.xml内容:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app>
<servlet>
<servlet-name>login</servlet-name> <!-- 名字随便 -->
<servlet-class>com.servlet.login.LoginAction</servlet-class> <!-- servlet类名-->
</servlet> <servlet-mapping>
<servlet-name>login</servlet-name>
<url-pattern>/login</url-pattern> <!-- url访问虚拟路径,最后我们就是通过工程名/login进行访问的,像这样http://127.0.0.1:8000/LoginAction/login-->
</servlet-mapping> </web-app>

这里我客户端的用户名和密码是通过post请求的,因此doPost方法会被调用;doGet方法可以测试下网页,用http://127.0.0.1:port/servlet工程名称/url-pattern虚拟路径  进行测试;
   
    我的工程:

package com.servlet.login;

import java.io.*;
import javax.servlet.http.*;
import javax.servlet.*; /**
* 登录模块校验Servlet
* @author Administrator
*
*/
public class LoginAction extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L; public LoginAction()
{
super();
} protected void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
res.setContentType("text/html;charset=utf-8");
req.setCharacterEncoding("utf-8");
res.setCharacterEncoding("utf-8"); PrintWriter out = res.getWriter();
out.println("Hello, Brave new World!");
out.close();
} protected void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
if (null == req)
{
return;
}
res.setContentType("text/html;charset=utf-8");
req.setCharacterEncoding("utf-8");
res.setCharacterEncoding("utf-8"); PrintWriter out = res.getWriter();
String username = req.getParameter("user_name");
String password = req.getParameter("password");
if (username.equals("admin"))
{
if (password.equals("123"))
{
out.println("0"); ///< 正确
}
else
{
out.println("2"); ///< 密码错误
}
}
else
{
out.println("1"); ///< 用户名错误
}
out.flush();
out.close();
}
}

测试以下:http://127.0.0.1:8000/TaxiServlet/login 
    

web.xml的详细配置大家可以网上搜搜,我也是经过测试才了解怎么回事的,很多网络并没有说明到底怎么回事?因此对于我这样的初学者总是很疑惑的,相信只有了解了本质才知道,也才能写出好的code...也进步最快,,,,,,
   
    我的doPost方法将用于andriod应用程序登录时校验,数据库校验慢慢完善...先这样
        感谢网友的分享,通过你们我学到了很多东西.... 网友http://www.linuxidc.com/Linux/2012-06/63935.htm,其它就不举例了,嘿嘿...

对了还要说下tomcat的配置,不然可能会出现404错误;C:\apache-tomcat-6.0.35\conf\tomcat-users.xml文件一般来说默认用户配置都是注释着的,你需要配置至少一个用户,我的如下:

点击(此处)折叠或打开

<?xml version='1.0' encoding='utf-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<tomcat-users>
<!--
NOTE: By default, no user is included in the "manager-gui" role required
to operate the "/manager/html" web application. If you wish to use this app,
you must define such a user - the username and password are arbitrary.
-->
<!--
NOTE: The sample user and role entries below are wrapped in a comment
and thus are ignored when reading this file. Do not forget to remove
<!.. ..> that surrounds them.
-->
<!--
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<user username="admin" password="admin" roles="manager"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
-->
<role rolename="manager"/>
<user username="admin" password="admin" roles="manager"/>
</tomcat-users>

其它的根据需要来吧....

配置端口号:
    C:\apache-tomcat-6.0.35\conf\server.xml用来配置端口号,如果你电脑安装了n多软件,可能默认的8080端口无法使用,记得进去找到它,改改哈!多练习练习就熟了,,,编程也是写字..

 Eclipse下tomcat不能指定发布ServerLocation的问题

  在Eclipse下建立了Web应用,但发布的时候却发现,只能发布到eclipse的目录下。而且双击服务器,发现“Server Locations中选项都是灰色”,不让指定自己希望的发布路径。

  解决方法是:首先删除当前Eclipse下建立的所有Server,并且将服务器与应用的关联也要一并彻底删除。然后重新添加一个外部服务器。先不要将应用与该Server绑定,双击该服务器,进入属性编辑器中,这时会发现“Server Locations”中选项都是可选的了,可以选择一个你希望发布到的路径。如我希望将项目发布到我本地自行安装的tomcat下。即可

【转】Eclipse中创建并运行Servlet项目的更多相关文章

  1. 在Eclipse中创建Maven多模块项目

    在Eclipse中创建Maven多模块项目1,创建多模块项目选择File>New>Project,打开New Project窗口,选择Maven>Maven Project,选择下一 ...

  2. Eclipse中创建新的SpringBoot项目(打包并且部署到tomcat)

    Spring-boot因为其对jar包的高度集成以及简化服务配置,快速部署等的优点,逐渐成为Java开发人员的热衷的框架.下面演示一下怎么在Eclipse中新建Spring-boot项目以及打包部署. ...

  3. eclipse中创建完整的maven项目

    使用eclipse插件创建一个web project 首先创建一个Maven的Project如下图 我们勾选上Create a simple project (不使用骨架) 这里的Packing 选择 ...

  4. SpringBoot学习 (一) Eclipse中创建新的SpringBoot项目

    1. Eclipse中安装STS插件 (1)在线安装 Help--Eclipse Marketplace... 搜索“STS”,点击“install”安装    (2)本地安装 打开网页 http:/ ...

  5. Maven 梳理 -eclipse中创建Maven的web项目

    已验证成功: 1.创建Maven的Web工程 新建Maven工程:File -> New -> Maven Project,具体如下所示: 点击Next进入下述页面,下方的窗口是我们选择所 ...

  6. 在Eclipse中配置Tomcat 创建和运行Servlet/JSP

    在Eclipse中配置Tomcat 创建和运行Servlet/JSP 步骤一:在Eclipse中配置Tomcat(注意下载Eclipse IDE for Java EE Developers) (1) ...

  7. 在命令行中运行eclipse中创建的java项目

    在命令行中运行eclipse中创建的java项目 博客分类: java相关 javaeclipse命令行  由于项目要求,需要对eclipse中的项目进行打包,似的可以在客户机上不装eclipse的情 ...

  8. 在Eclipse中创建Django项目

    在以前的分享中,我们是在命令行模式下创建Django项目的,那么,如何在IDE中使用Django呢? 本文将介绍如何在Eclipse中创建Django项目. 首先,新建Django项目mysite,如 ...

  9. (3)Maven快速入门_3在Eclipse中创建Maven项目打包成jar

    Eclipse中创建Maven项目 new ---> maven project  ----> next 如下 普通java项目 选择  如下 quickstart 创建项目 : 输入 G ...

随机推荐

  1. 单向链表JAVA代码

        //单向链表类 publicclassLinkList{       //结点类     publicclassNode{         publicObject data;         ...

  2. 查看linux系统版本

    1.查看内核版本 #cat /proc/version Linux version 2.6.18-164.el5 (mockbuild@x86-003.build.bos.redhat.com) (g ...

  3. U1总结

    import java.io.Writer; import java.util.Iterator; import javax.xml.transform.TransformerFactory; imp ...

  4. css02基本选择器

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  5. C# DBNULL与NULL之间的区别【转】

    null是.net中无效的对象引用.DBNull是一个类.DBNull.Value是它唯一的实例.它指数据库中数据为空(<NULL>)时,在.net中的值.null表示一个对象的指向无效, ...

  6. DotNet中的计时器线程计时器

    转载自:http://hi.baidu.com/wingingbob/item/9f1c9615f3b24d5f2b3e225c 基于多线程设计,计时器工作在ThreadPool线程上,存在事件的重入 ...

  7. css文件和js文件后面带一个问号

    经常看一些网站页面源代码中的css文件和js文件后面带一个问号,后面跟着一连串数字或字符,这是干什么用的? 这个方法我也用过,而且很好用?,它的作用有两个:1.作为版本号,让自己方便记忆.查找:2.作 ...

  8. CSS中的盒子模型详解

    很多人对盒子模型搞晕头了,下面通过一个简单的代码来分析盒子模型的结构! 为了方便方便观看!在第一个div中画了一个表格,并将其尺寸设置成与div内容大小一样!且设置body的margin和paddin ...

  9. 商务智能(BI)技术

    以下内容仅为兴趣爱好. 商务智能技术是将数据仓库.联机分析处理(OLAP)和数据挖掘等结合起来应用到商业活动中,从不同的数据源收集数据,经过抽取(Extract).转换(Transform)和加载(L ...

  10. DOM---documentFragment

    代码暂时寄存 创建:document.createDocumentFragment() 案例: var a=document.createDocumentFragment(); var b=docum ...