3.Servlet实例
一.基础实例
1.参照如下例子创建maven web工程:
https://www.cnblogs.com/lukelook/p/9187313.html
2.创建一个简单的Servlet 类
package com.my.web; import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; /**
* Servlet implementation class CallWeb
*/
public class CallWeb extends HttpServlet {
private static final long serialVersionUID = 1L; /**
* @see HttpServlet#HttpServlet()
*/
public CallWeb() {
super();
// TODO Auto-generated constructor stub
} /**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("<p>").append("This is just a test!").append("</p>");
response.getWriter().append("Served at: ").append(request.getContextPath());
} /**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
} }
3.在web.xml中配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<!--如果 Servlet class 中已经用@WebServlet("/XXX")则不需要次配置,要不然会发生冲突-->
<!--
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>CallWeb</servlet-name>
<servlet-class>com.my.web.CallWeb</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CallWeb</servlet-name>
<url-pattern>/CallWeb</url-pattern>
</servlet-mapping>
-->
</web-app>
4.Run On Server CallWeb.class
5.在浏览器中输入如下地址即可访问:
http://localhost:8080/myWeb/CallWeb

二.表单数据提交
1.JSP界面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>show</title>
</head>
<body>
<form action="CallWeb" method="post">
<!--fieldset 对信息分组-->
<fieldset>
<legend>个人信息:</legend>
班级:<input list="browsers" name="stuClass">
<datalist id="browsers">
<option value="一一班">
<option value="一二班">
<option value="二一班">
<option value="二二班">
<option value="三一班">
</datalist><br/><br/>
用户名:<input type="text" name="stuName" id="stuName" value="请输入用户名"><br/><br/>
密码:<input type="password" name="stuPassword" id="stuPassword"><br/><br/>
<!-- label 当点击字时单选框也会被选上 -->
性别:<input type="radio" name="sex" value="女" id="male"><label for="male">女</label>
<input type="radio" name="sex" value="男" id="female"> <label for="female">男</label>
<input type="radio" name="sex" value="保密" id="unknow" checked="checked"><label for="unknow">保密</label><br/><br/>
</fieldset>
<fieldset>
<legend>其他信息:</legend>
兴趣爱好:<input type="checkbox" name="love" value="足球 ">足球
<input type="checkbox" name="love" value="篮球 ">篮球
<input type="checkbox" name="love" value="排球 ">排球<br/><br/>
地址: <select name="address">
<optgroup label="河南省">
<option value="RuZhou">汝州</option>
<option value="ZhengZhou">郑州</option>
</optgroup>
<optgroup label="陕西省">
<option value="XiAn">西安</option>
<option value="WeiNan">渭南</option>
</optgroup>
</select>
</fieldset>
<input type="submit" value="提交">
</form> </body>
</html>
2.Servlet处理类
package com.my.web; import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; /**
* Servlet implementation class Show
*/
@WebServlet("/CallWeb")
public class CallWeb extends HttpServlet {
private static final long serialVersionUID = 1L; /**
* @see HttpServlet#HttpServlet()
*/
public CallWeb() {
super();
// TODO Auto-generated constructor stub
} /**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html");
PrintWriter pw = response.getWriter();
pw.println("班级:"+request.getParameter("stuClass")+"<br/>");
pw.println("用户名:"+request.getParameter("stuName")+"<br/>");
pw.println("密码:"+request.getParameter("stuPassword")+"<br/>");
pw.println("性别:"+request.getParameter("sex")+"<br/>");
String[] arr=request.getParameterValues("love");
for (String string : arr) {
pw.println("兴趣:"+string+"<br/>");
}
pw.println("地址:"+request.getParameter("address")+"<br/>"); } /**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
} }
3.界面效果
3.Servlet实例的更多相关文章
- servlet的一个web容器中有且只有一个servlet实例或有多个实例的理解1
servlet的一个web容器中有且只有一个servlet实例或有多个实例的理解 (2013-06-19 19:30:40) 转载▼ servlet的非线程安全,action的线程安全 对提交 ...
- myeclipse实现Servlet实例(1) 通过继承servlet接口实现
1.在myeclipse新建web project,配置Tomcat(在myeclipse的Window--preferences) 2.然后在src新建servlet文件( 此处放在com.tsin ...
- Java Servlet(十一):一个servlet被10个浏览器客户端访问时会创建几个servlet实例?
一般Servlet只初始化一次(只有一个实例).对于更多的客户端请求,Server创建新的请求和响应对象,仍然激活此Servlet的service()方法,将这两个对象作为参数传递给该方法.如此重复以 ...
- Servlet:从入门到实战学习(3)---Servlet实例【图文】
本篇通过图文实例给大家详细讲述如何建立一个Servlet,配置好运行环境并成功连接到MYSQL的数据库,进行数据的查询展示. 1.项目创建:IDEA -> Create New Project ...
- Hessian Servlet实例
Servlet实例 业务场景 在下面的例子中我会发布一个简单的输出字符串的方法,然后在客户端调用并输出结果. 服务器端 环境搭建 在服务端,我们需要引入hessian和servlet的包.编写服务.配 ...
- Servlet实例解说
打开昨天上午,负责人突然问我,client控制信息,如何让在后台?我想回答:假设总体提交form,在C#使用代码request获取表单的内容.假设局部提交,在用JS和Ajax交互,通过Ajax的ope ...
- Servlet(9)—HttpServlet和改进Servlet实例
HttpServlet:针对Http协议定义的一个Servlet基类,唯一的功能就是强制类型转换ServletRequest转换成HttpServletRequest,ServletResponse转 ...
- Servlet(4)—一个简单的Servlet实例
简单实例 页面请求登陆,提交表单数据 <body> <form action="loginServlet" method="get"> ...
- 【JDBC】Servlet实例
import java.io.IOException;import java.io.PrintWriter;import java.sql.Connection;import java.sql.Dri ...
随机推荐
- UBUNTU 下 APACHE2 Too many open files: Error retrieving pid file /var/run/apache2.pid
cat /proc/sys/fs/file-max 系统可打开的最大文件个数 ulimit -n 当前系统限制的个数 ulimit -n 10240 调整当前系统的限制 修改/etc/sysctl.c ...
- win10下用Linux搭建python&nodejs开发环境
Win10下用自带Linux系统搭建开发环境 Win10下用自带Linux系统搭建开发环境启用Linux老版本(win10 1709之前):新版本(win10 1709之后)卸载linux老版本新版本 ...
- 解决nginx访问问题connect() to 127.0.0.1:8080 failed (13: Permission denied) while connecting to upstream,
问题:搭建好项目之后,用nginx进行代理,进行日常配置之后,发现前端正常访问,但是后端访问出现错误,报502错误,查找nginx日志,发现connect() to 127.0.0.1:8080 fa ...
- Linux用户信息查询
1 查询目前已登录的用户信息w 或者 who [@bjzw_11_210 ~]# w :: up days, :, users, load average: 0.03, 0.04, 0.00 USER ...
- 通过六个题目彻底掌握String笔试面试题
http://blog.csdn.net/chj97/article/details/6899598 1 public static void main(String[] args) { String ...
- if 和case
select case 'O' when 'O' then (1*5-6) when 'C' then (1*5-6) when 'EC' then (1*5-6) --else null --end ...
- vb.net的String类型和Bytes转换(C#也适用)
1.Bytes---->StringSystem.Text.Encoding.Unicode.GetString(bytes, 0, bytes.Length) 2.String----> ...
- [javaSE] 网络编程(UDP通信)
UDP发送端 获取DatagramSocket对象,new出来 获取DatagramPacket对象,new出来,构造参数:byte[]数组,int长度,InetAddress对象,int端口 调用D ...
- Dllmain的作用
DllMain函数是DLL模块的默认入口点.当Windows加载DLL模块时调用这一函数.系统首先调用全局对象的构造函数,然后调用全局函数 DLLMain.DLLMain函数不仅在将DLL链接加载到进 ...
- mysql 优化海量数据插入和查询性能
对于一些数据量较大的系统,数据库面临的问题除了查询效率低下,还有就是数据入库时间长.特别像报表系统,每天花费在数据导入上的时间可能会长达几个小时或十几个小时之久.因此,优化数据库插入性能是很有意义的. ...
