怎样运用servlet
制作登陆界面
login.html
<!DOCTYPE html>
<html>
<head>
<title>login.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> <!--<link rel="stylesheet" type="text/css" href="./styles.css">--> </head> <body >
<div style="text-align: center;">
<form action="./servlet/DemoServlet" enctype="application/x-www-form-urlencoded">
用户名:<input type="text" name="username"/><br/><br/> 密 码: <input type="password" name="userpass"/><br/><br/>
<input type="submit" name="" value="登陆">
</div>
</form>
</body>
</html>
user.html
<!DOCTYPE html>
<html>
<head>
<title>user.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> <!--<link rel="stylesheet" type="text/css" href="./styles.css">--> </head> <body>
<a href="#">查询用户信息</a>
</body>
</html>
DemoServlet.java
package www.csdn.net.servlet; import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class DemoServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//请求中带有的参数值
String uName=request.getParameter("username");
String uPass=request.getParameter("userpass");
System.out.println("用户名"+uName);
System.out.println("密码"+uPass);
System.out.println(request.getRemoteAddr()+"------"+request.getRemoteHost()); //响应
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
/* PrintWriter out = response.getWriter();
out.println("欢迎"+"----"+request.getRemoteAddr()+uName+"登陆此系统");
out.flush();
out.close();*/
//用户名密码存在302临时重定向
response.setStatus(302);//状态码
System.out.println(request.getContextPath());
response.sendRedirect(request.getContextPath()+"/user.html");//跳转另一个界面 } public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
} }
Demo1Servlet.java怎样写入图片
package www.csdn.net.servlet; import java.io.File;
import java.io.FileInputStream;
import java.io.IOException; import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class Demo1Servlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException{
downImg(request, response);
}
public void showImg(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//响应的数据是图片
response.setContentType("image/jpeg");
//写出图片//获取项目的绝对路径
String path=this.getServletContext().getRealPath("/");
//图片路径
File file=new File(path+"/image/150CA0R1YPM.jpg");
System.out.println(file);
//创建文件的输入流
FileInputStream is=new FileInputStream(file);
//响应的输出流
ServletOutputStream out=response.getOutputStream();
//读取的缓冲区
byte buffer[]=new byte[1024];
//记录读取的长度
int len=0;
//读取 如果len=-1读取完毕
while((len=is.read(buffer))!=-1){
//写入
out.write(buffer, 0, len);
}
//释放资源操作
is.close();
out.flush();
out.close();
}
/**
* 下载图片
* @param request
* @param response
* @throws ServletException
* @throws IOException
*/
public void downImg(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//写出图片//获取项目的绝对路径
String path=this.getServletContext().getRealPath("/");
//图片路径
File file=new File(path+"/image/小婷.jpg");
System.out.println(file.getName());
//创建文件的输入流
FileInputStream is=new FileInputStream(file);
response.setHeader("Content-Disposition", "attachment;filename="+file.getName());
//响应的输出流
ServletOutputStream out=response.getOutputStream();
//读取的缓冲区
byte buffer[]=new byte[1024];
//记录读取的长度
int len=0;
//读取 如果len=-1读取完毕
while((len=is.read(buffer))!=-1){
//写入
out.write(buffer, 0, len);
}
//释放资源操作
is.close();
out.flush();
out.close();
} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { this.doGet(request, response);
} }
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">
<display-name></display-name> <servlet>
<servlet-name>DemoServlet</servlet-name>
<servlet-class>www.csdn.net.servlet.DemoServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>Demo1Servlet</servlet-name>
<servlet-class>www.csdn.net.servlet.Demo1Servlet</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>DemoServlet</servlet-name>
<url-pattern>/servlet/DemoServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Demo1Servlet</servlet-name>
<url-pattern>/servlet/Demo1Servlet</url-pattern>
</servlet-mapping> <welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
怎样运用servlet的更多相关文章
- servlet文件下载
创建web工程servlet,新建DownloadServlet.java package com.xmyself.servlet; import java.io.File; import java. ...
- java中servlet的各种路径
1. web.xml中<url-pattern>路径,(叫它Servlet路径!) > 要么以“*”开关,要么为“/”开头 2. 转发和包含路径 > *****以“/”开头:相 ...
- Servlet监听器笔记总结
监听器Listener的概念 监听器的概念很好理解,顾名思义,就是监视目标动作或状态的变化,目标一旦状态发生变化或者有动作,则立马做出反应. Servlet中的也有实现监听器的机制,就是Listene ...
- JavaWeb——Servlet
一.基本概念 Servlet是运行在Web服务器上的小程序,通过http协议和客户端进行交互. 这里的客户端一般为浏览器,发送http请求(request)给服务器(如Tomcat).服务器接收到请求 ...
- servlet 简介,待完善
什么是Servlet?① Servlet就是JAVA 类② Servlet是一个继承HttpServlet类的类③ 这个在服务器端运行,用以处理客户端的请求 Servlet相关包的介绍--javax. ...
- java web学习总结(五) -------------------servlet开发(一)
一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...
- servlet使用入门
创建web工程servlet,然后新建TestServlet.java package com.xmyself.servlet; import java.io.IOException; import ...
- 基于jsp+servlet图书管理系统之后台万能模板
前奏: 刚开始接触博客园写博客,就是写写平时学的基础知识,慢慢发现大神写的博客思路很清晰,知识很丰富,非常又价值,反思自己写的,顿时感觉非常low,有相当长一段时间没有分享自己的知识.于是静下心来钻研 ...
- [Servlet] 初识Servlet
什么是Servlet? 定义 Servlet的全称是 Server Applet,顾名思义,就是用 Java 编写的服务器端程序. Servlet 是一个 Java Web开发标准,狭义的Servle ...
- Java Servlet+Objective-c图上传 步骤详细
一. Servlet 1.创建图片保存的路径 在项目的WebContent下创建一个上传图片的专属文件夹. 这个文件夹创建后,我们保存的图片就在该文件夹的真实路径下,但是在项目中是无法看到上传的图片的 ...
随机推荐
- vs2005+WinCE模拟器+ActiveSync调试WinCE程序
来源:http://www.cnblogs.com/xjimmyshcn/archive/2011/07/19/2111087.html 一.WinCE 模拟器通过ActiveSync 6.1(即Wi ...
- 智能家居入门DIY——【七、添加一个LCD12864吧】
今天加了一个LCD12864,IC看说明上是ST7567,结果一顿U8g2,发现两个问题: 1.买的时候不知道是卖家写的我理解错了还是怎么了,反正是不出汉字的. 2.U8g2太大了…………占了uno的 ...
- eclipse 和 Myeclipse中Maven Web项目出现小红叉的 详细解决方法
在我们创建maven项目是常会出现小红叉,如图: 解决办法: 1.可以 点击鼠标右键 maven--->update project.一般可以解决. 2.查看 window---->sh ...
- [转]Android-Studio 常用配置项
更多内容可参考:http://www.cnblogs.com/smyhvae/p/4390905.html 1. 想要和 Eclipse 一样,Alt + / 出现自动提示列表:在如下位置修改 2. ...
- Windows RDP远程连接CentOS 7
1. 打开已经安装了CentOS7的主机,以root用户登录,在桌面上打开一个终端,输入命令:rpm -qa|grep epel,查询是否已经安装epel库(epel是社区强烈打造的免费开源发行软 ...
- Excel2013复制内容粘贴到刷选的数据表中
如何将复制内容粘贴到筛选后表格中: 1.需要一个表格:我要把这个表格里姓名列不包含A的项改为另外一个表中的数据列: 2.在姓名右侧插入两列,列A.列B: 3.在列A下第一格输入1,向下序列填充: 4. ...
- django2.0数据展示流程
之前刚刚实现了数据添加的流程,那么数据展示是怎么回事 1 先在 views.py 中定义函数 增加获取数据的方式 from django.shortcuts import render from bl ...
- 【好文转帖】控制反转(IOC)和依赖注入(DI)的区别
IOC inversion of control 控制反转 DI Dependency Injection 依赖注入 要理解这两个概念,首先要搞清楚以下几个问题: 参与者都有谁? 依赖:谁 ...
- Spring集成的Quartz 并发
以前经常在任务调度程序中使用Spring集成的Quartz,这种方式可以用简单的声明式配置即可实现定时任务,并结合了Spring自身的Bean的管理功能,非常方便.配置样本如下: <bean i ...
- 关于rand 与 randn
rand:0-1均匀分布.均值m=(a+b)/2; 方差=(b-a).^2/12; randn:0均值,方差1. 只有当rand和randn生成较大的数据时,均值和方差才会成立.比如N&g ...