标签:
1、建javaweb项目
2、将tomcat环境导入到项目中
3、建包,在包中建内
建包的目的:是为了区别不同包中的类(就相当于现实生活中,有两个王强,分别在不同的班一样)
代码:
一、java部分:
FileRead
package com.servletdemo; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.FileReader; 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 FileRead extends HttpServlet{ public void doGet(HttpServletRequest request,HttpServletResponse response)throws IOException,ServletException { System.out.println("doGet方法被调用"); response.setContentType("text/html"); response.setCharacterEncoding("utf-8"); PrintWriter out = response.getWriter(); request.setCharacterEncoding("utf-8"); String realPath = request.getParameter("filePath"); File file = new File(realPath); if(file.exists()){ FileReader reader = new FileReader(file); BufferedReader bufferReader = new BufferedReader(reader); String line = null; while((line = bufferReader.readLine()) !=null){ out.print("<font size=‘5‘>"+line+"</font><br>"); } }else{ out.print("文件不存在"); } } public void doPost(HttpServletRequest request,HttpServletResponse response)throws IOException,ServletException { doGet(request,response); } }
二、read.jsp
<%@ page import="com.servletdemo.FileRead" 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>Insert title here</title> </head> <body> <table> <tr> <td>请选择读取文件路径:</td><td> <form action="FileRead" method="post"> <input type="file" name="filePath"><input type="submit" value="提交"> </form> </td> </tr> </table> </body> </html>
三、web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app> <!-- … --> <servlet> <servlet-name>FileRead</servlet-name> <servlet-class>com.servletdemo.FileRead</servlet-class> </servlet> <!-- … --> </web-app>
效果图:
编程遇到的问题:我在敲web.xml的时候出现<%@page import ="com.servletdemo.FileRead">
这里被eclipse提醒:The import com.servletdemo.FileRead cannot be resolved
我百度了一下:因为环境没配好,只要在WEB-INF的lib中copy进去tomcat中lib文件里的servlet-api.jar就行了,其实eclipse标签很多提示可能就是没有把环境部署好,我应该对这个问题多注意
Servlet理解:
Servlet实际就是一个类,能处理客户端的请求并作出相应
它的生命周期:
1、生成Servlet,加载到Servlet Engine中,并通过调用其init()方法来进行初始化
2、通过提供的相应方法来处理客户端的请求
3、调用destory()方法进行销毁,并通过垃圾收集器(只有概念,没有深入,我觉得有时间要深入它)进行收集清理
它的常用方法:
doGet方法:用来处理客户端浏览器直接访问和get方式提交的表单
doPost方法:用来处理表单post方式提交的表单,不能处理客户端浏览器直接访问
service方法:用来处理客户端浏览器直接访问和以表单get方式提交的表单,以及以表单post方式提交的表单
它的常用接口:
HttpServletRequest接口
HttpServletResponse接口
HttpSession接口
ServletContext接口
标签:
原文地址:http://www.cnblogs.com/song-1995/p/5003802.html