【Java】Servlet调用流程
来源:互联网 发布:matlab转c语言工具 编辑:程序博客网 时间:2024/05/24 01:55
最近在学习一个DRP的项目,初次学习Servlet,老师讲解的很详细,这篇博客首先对Servlet进行一下简单的介绍,然后简单总结一下Servlet的调用流程。
Servlet简单理解:
Servlet是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。
以登录为例介绍数据传送流程:
其次来介绍一下Tomcat目录结构:
bin文件:
存放各种平台下启动和关闭Tomcat的脚本文件 。
startup-bat.是 windowsF 启 动 tomcat的文件,
shutdown.bat 是关tomcat的文件 。
common :
在 common目录下的lib目录,存放 Tomcat服务器和所有 web 应 用 都 能 访 问 的 JAR 。
shared :
在 shared目录下lib目录,存放所有 web应用能访问的 ,但 Tomcat不能访问JAR
server :
在 server/webapps 目录中,存放 Tomcat自带的两个 APP-admin 和manager应用 , 来 管 理 Tomcat-web服务用的 。
work :
Tomcat把各种 由 jsp 生成的servlet文件放在这个目录下
temp:
临时活页夹,Tomcati 行时候存放临时文件用的 。
logs:
存放 Tomcat 的日志文件
webapps:
web 应用的发布目录,把java开发的web立点或war文件放入这个目录下就可以通过tomcat服务器访问了。
conf:
Tomcat 的各种配置文件,最重要的是server.xml
环境配置:
把lib\servlet-api.jar包配置到classpath变量。同时配置一下JAVA_HOME变量,可以在tomcat的批处理命令startup.bat中进行配置,set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_43。
然后把这个java文件编译成.class文件,放到classes文件夹中。
servlet代码:
<span style="font-family:KaiTi_GB2312;font-size:18px;">//引入java的包。 import javax.servlet.http.*; import java.io.*; import javax.servlet.*; //第一个Servlet程序。 public class LoginServlet extends HttpServlet { //指定调用哪个servlet。 //get提交和post提交两种方式。 public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException { //取得客户端的数据。 String username = request.getParameter("username"); String password = request.getParameter("password"); System.out.println("username" + username); System.out.println("password" + password); //向浏览器上写数据。可以有流。字符流。 //setContext设置响应的内容类型。设置为html类型或者中文。 response.setContentType("text/html;charset=GB18030"); //response.getWriter().println("Login Success!!!"); //response.getWriter().println("登录成功!!!"); response.getWriter().println("<html>"); response.getWriter().println("<head>"); response.getWriter().println("<title>登录信息</title>"); response.getWriter().println("</head>"); response.getWriter().println("<body>"); response.getWriter().println("欢迎【" + username + "】登录成功!!!"); response.getWriter().println("</body>"); response.getWriter().println("</html>"); } //采用post的提交方式。 public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException { doGet(request,response); } }</span>
html代码:
<span style="font-family:KaiTi_GB2312;font-size:18px;"><html> <head> <title>登录</title> </head> <body> <!--这是绝对路径--> <!--相对路径写法:action="LoginServlet"--> <form action="http://127.0.0.1:8080/test_servlet/LoginServlet"> 用户:<input type="text" name="username"><br> 密码:<input type="password" name="password"><br> <input type="submit" value="登录"> </form> </body> </html></span>
Web.xml:
<span style="font-family:KaiTi_GB2312;font-size:18px;"><?xml version="1.0" encoding="ISO-8859-1"?> <web-app 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" version="3.0" metadata-complete="true"> <servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>LoginServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/LoginServlet</url-pattern> </servlet-mapping> </web-app> </span>
启动Tomat就可以执行成功了。
servlet的调用过程:
写在后面:
Servlet的知识刚刚开始学习,对于这些还是很生疏,不过这都是基础,慢慢积累,下一篇博客总结Servlet的生命周期。
- 【Java】Servlet调用流程
- Servlet调用流程
- Servlet调用流程
- Servlet调用流程
- java客户端调用Servlet
- java类中调用servlet
- Java Servlet调用Matlab算法
- java类中调用servlet
- java 定时任务调用servlet
- java环境+Tomcat+eclipse+servlet配置流程
- Java EE — Servlet 01 Servlet 开发流程
- Tomcat一次http请求处理,filter、servlet调用流程
- Servlet流程
- java类模拟客户端调用servlet (httpClient)
- java servlet 调用oracle数据库存储过程
- Java定时任务--定时调用方法(servlet)
- Java Servlet 中的许多方法调用示例
- JSP 通过href调用Java中的servlet
- 98.Which two statements are true regarding the usage of the SQL*Loader utility? (Choose two.)
- ccnu_2016_summer_week1(2)_贪心
- Dungeon Master poj 2251
- Java的方法
- # mysql CREATE TABLE IF NOT EXISTS metadata lock坑
- 【Java】Servlet调用流程
- RecyclerView技术栈
- 反编译 jadx进行安卓反编译
- Git的诞生
- tcp连接的建立(三次握手)和释放(四次握手)
- listview的item内部有Button问题
- EasyUI 文本框、文件框和开关按钮
- Log4j使用手册
- HDU 1044 Collect More Jewels(BFS+DFS)