Servlet的使用

原创 2015年11月18日 20:24:52

WebProject的建立

(建立一个服务器)

可以直接在MyEclipse下建一个web工程;方便很多。

我是在Eclipse 下建的,需要手动建

1.新建一个工程,一个包,一个类,

2.建一个lib文件夹,将servlet-api.jar(tomcat 安装目录下的lib文件夹下有)copy进去,通过buildpath导入这个三方包

3.然后这个类就可以继承HttpServlet,重写里面的doGet 或者doPost方法来进行响应

4.在工程下面建一个WebRoot(名字可以自定义)文件夹,下面建一个

WEB-INF(必须一致),里面有一个classes文件夹和一个web.xml,如果在其他html(action)需要向此servlet服务器发送请求,就将他copy到WebRoot文件夹下

5.依照下面的路径将class文件制定到classes文件夹下


6.下面就是web.xml里面的内容

访问url<url-pattern> <servlet-mapping>中的(eg:http:localhost:8080/WEBROOT/test)

获得他的<servlet-name>,再到<servlet>中通过这个名字找到他的class

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee">


	<servlet>
		<servlet-name>testapp</servlet-name>
		<servlet-class>com.android.app.MyApp</servlet-class>
	</servlet>

	<servlet-mapping>
		<servlet-name>testapp</servlet-name>
		<url-pattern>/test</url-pattern>
	</servlet-mapping>

</web-app>


7.class代码,服务器的响应

package com.android.app;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class MyApp extends HttpServlet {
	/*
	 * 客户端通过GET请求
	 */
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		// 处理乱码方式一
		resp.setContentType("text/html;charset=UTF-8");
		/* 通过这个key标签得到客户端传过来的参数 */
		// req.getParameter("key");
		/* 服务器给出的回应 */
		resp.getWriter().write("hello你好");

	}

	/*
	 * 客户端通过POST请求
	 */
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		doGet(req, resp);

	}
}

运行:

第一种方式:(更改一次,copy次,不推荐)

将这个文件夹WebRoot 复制到webapps下,启动tomcat,访问url

第二种方式:在tomcat目录下conf/server.xml 中做映射

<context path="/app"  docBase="WebRoot 的绝对路径">

访问:http://localhost:8080/app/test 这个就只是服务器做出响应的代码


乱码问题

get提交获取参数乱码解决方式:

1.更改server.xml

<connector  URlEncoding="UTF-8"></connector>

2.String user_Name = new String(userName.getBytes("ISO-8859-1"),"UTF-8");


post提交获取参数乱码解决方式

request.setCharacterEncoding("UTF-8");


做出响应乱码解决方式:

resp.setContentType("text/html;charset=UTF-8")

版权声明:本文为博主原创文章,未经博主允许不得转载。

关于Servlet的基本使用方法

一、第一个Servlet1、解压空站点,运行:http://localhost:8088/myweb/2、编写Java文件:import java.io.*;import javax.servlet....
  • leeshuqing
  • leeshuqing
  • 2009年02月16日 06:43
  • 9710

servlet 学习心得

servlet 学习心得servlet 学习心得 BS模式之前做项目的时候用到了struct2 框架,但是仅仅只是修改别人做好的东西,改前台的时候只改前台,改后台的时候只改后台,所以对前后台的数据交互...
  • xman4code
  • xman4code
  • 2016年12月21日 17:20
  • 236

Servlet常用操作(基础)

本文主要介绍servler的基本使用操作,是一些非常基础的知识,主要掌握servlet作用域、servlet映射、请求转发、ServletConfig配置、ServletContext等的使用,最后以...
  • sdksdk0
  • sdksdk0
  • 2016年07月19日 10:38
  • 3504

javaweb—servlet的简单入门使用

Servlet(Server Applet),全称JavaServlet,未有中文译文。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是...
  • u013468915
  • u013468915
  • 2016年07月22日 11:00
  • 16249

servlet线程安全问题——ThreadLocal模式

线程安全的概念范畴:        线程安全,指的是在多线程环境下,一个类在执行某个方法时,对类的内部实例变量的访问是安全的。如果代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代...
  • yx0628
  • yx0628
  • 2014年03月14日 10:01
  • 1948

【Servlet】在servlet中使用session

众所周知,在JSP页面上可直接通过session.setAttribute(name,object)设置session。 可如果想在servlet使用session 的话,就和在JSP有点区别了。 在...
  • oYunTaoLianWu
  • oYunTaoLianWu
  • 2013年08月30日 02:36
  • 13555

servlet简单用法和配置示例及说明

学习原因和目的: 我如今所接触的项目都是bs模式的web应用,而里边基本上都是用的spring MVC和前台交互,servlet貌似用的很少。 但是即便是用spring和spring MVC,...
  • tuzongxun
  • tuzongxun
  • 2016年05月06日 18:47
  • 3242

Servlet基本用法一基本配置

一、前言:   Java Servlet是一个基于Java技术的Web组件,运行在服务器端,由Servlet容器所管理,用于生成动态的内容。Servlet是平台独立的Java类,编写一个Servle...
  • xujian_2014
  • xujian_2014
  • 2015年05月26日 10:20
  • 3050

Servlet——使用myEclipse开发Servlet

本文介绍了通过IDE-MyEclipse开发Servlet的方法,介绍了如何在MyEclipse中创建应用、配置Tomcat服务器以及发布应用。...
  • ggGavin
  • ggGavin
  • 2014年05月17日 18:57
  • 2222

配置servlet连接池

tomcat的配置: 1.如何修改tomcat的端口 netstat -an    ----->监控端口号 修改%TOMCAT_HOME%/conf/server.xml文件中port=8080将80...
  • u011225629
  • u011225629
  • 2015年08月18日 18:52
  • 1258
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Servlet的使用
举报原因:
原因补充:

(最多只允许输入30个字)