- 浏览: 126502 次
- 性别:
- 来自: 深圳
-
文章分类
最新评论
1,新建一个WEB工程:servletTest
在工程目录下会出现两个文件夹:src和WebRoot
src用于存放工程源代码,WebRoot\WEB-INF下有两个目录,分别是classes和lib,还有一个web.xml文件(部署描述符)。
classes用于存放所有编译生成的class文件,lib用于存放所有第三方lib包。
2,三种部署方式:
一,修改tomcat的配置文件
配置tomcat的conf目录下的server.xml文件,
<Context path="/servletTest" docBase="E:\workspace\servletTest\WebRoot" reloadable="true"/>
path指的是逻辑路径,用于映射docBase的物理路径。reloadable指当页面内容改变时,服务器会自动重启加载。
经过如上配置后,输入如下地址即可访问该工程的页面。
http://localhost:8080/servletTest/index.jsp
二,使用myeclipse的部署:
选中工程,然后点击工具栏上的部署按钮,弹出如下窗口,点击确定后,会在tomcat的webapps目录下生成一个以当前工程名命名的目录(此名称可手工修改),并将工程中的WebRoot目录下的文件复制到此目录下。用户同样可通过如下地址访问。
http://localhost:8080/servletTest/index.jsp
三:使用myeclipse生成WAR包部署:
部署完后,会在tomcat的webapps目录下生成一个servletTest.war包文件,启动tomcat时,会自动解压此文件。同样可通过如上的地址访问。
推荐使用第一种方式部署!
-----------------------------------------------------------------------------------------
下面写一个servlet程序在页面上显示"hello world"
package com.kingdee.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 HelloWorldServlet extends HttpServlet { protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType("text/html"); PrintWriter out = resp.getWriter(); out.println("<html><head><title>hello world</title></head>"); out.println("<body><h1>Hello World</h1></body></html>"); out.flush(); } }
修改web-inf目录下的web.xml文件,需注意:servlet必须要配置web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>HelloWorld</servlet-name> <servlet-class>com.kingdee.servlet.HelloWorldServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloWorld</servlet-name> <url-pattern>/HelloWorld</url-pattern> </servlet-mapping> </web-app>
在浏览器中输入 http://localhost:8080/servletTest/HelloWorld
页面上会显示Hello World
使用JSP显示HelloWorld并显示当前时间
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <html> <head> <title>My JSP 'HelloWorld.jsp' starting page</title> </head> <body> Hello World <%=new java.util.Date().toLocaleString() %> </body> </html>
我们可以将Servlet看作是嵌套了html代码的JAVA类,可以将JSP看作是嵌套了JAVA类的HTM页面。
下面编写一个简单的登录页面:
在JSP页面填写用户名与密码,在SERVLET中进行处理。需注意action中的路径,
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <html> <body> <form action="/servletTest/login"> username:<input type="text" name="username"></input><br> password:<input type="password" name="password"></input><br> <input type="submit" value="提交"></input> <input type="reset" name="重置"></input> </form> </body> </html>
package com.kingdee.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 LoginServlet extends HttpServlet { protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String username = req.getParameter("username"); String password = req.getParameter("password"); resp.setContentType("text/html"); PrintWriter out = resp.getWriter(); out.println("<html><body>"); out.println("username:"+username+"<br>"); out.println("password:"+password+"<br>"); out.println("</body></html>"); out.flush(); } }
同样要配置web.xml文件
<servlet> <servlet-name>Login</servlet-name> <servlet-class>com.kingdee.servlet.LoginServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>Login</servlet-name> <url-pattern>/login</url-pattern> </servlet-mapping>
上面的例子中 <form action="/servletTest/login">如果没定,就会用默认的get方式提交表单,这样会在URL地址中显示出参数与参数值。如下就显示出了用户名与密码的值。
http://localhost:8080/servletTest/login?username=sdf&password=fff
采用POST的方式需要在servlet类中重写doPost方法:
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String username = req.getParameter("username"); String password = req.getParameter("password"); resp.setContentType("text/html"); PrintWriter out = resp.getWriter(); out.println("<html><body>"); out.println("username:"+username+"<br>"); out.println("password:"+password+"<br>"); out.println("</body></html>"); out.flush(); }
并将<form action="/servletTest/login"> 改为<form action="/servletTest/login" method="post">
POST方式不会在URL地址中显示出参数值.
下面是POST与GET的差别,get有长度限制,POST没有,下图中POST格式中有好几处换行。
此外使用浏览器进行文件上传时,一定要使用POST,而绝不能使用GET。
相对路径与绝对路径:
将<form action="/servletTest/login" method="get">改为<form action="login" method="get">也可以访问成功,login是相对路径,相对于/servletTest。建议使用相对路径。
其中/servletTest是工程名。
发表评论
-
深入研究Servlet线程安全性问题(转)
2012-11-21 00:13 751http://www.yesky.com/334/195133 ... -
Web开发20:Http详解
2011-07-31 02:01 1125所谓无状态是指你发 ... -
Web开发19:自定义标签库
2011-07-24 21:55 689所谓上层标签就如下面的bbb标签 ... -
Web开发18:EL表达式
2011-07-24 19:38 724f -
Web开发17:Servlet监听器
2011-07-24 00:01 1410写了一个MyServletContextList ... -
WEB开发 16:Servlet Filter
2011-07-23 16:37 1325doFilter方法中有一个Fil ... -
Web开发15:Session在实际项目中的应用
2011-07-22 23:50 1166写一个登录例子: 用户在login.jsp页面登录,如果用户 ... -
Web开发14:Session
2011-07-19 00:52 1180当客户端浏览器第一次访问时,会在服务器的Servl ... -
Web开发13:Cookie
2011-07-17 23:31 858下面是个简单的例子,演示在客户端添加Coo ... -
Web开发12:Servlet多线程同步问题详细探寻
2011-07-17 22:50 1128下面看一个具体的 ... -
Web开发11:Servlet
2011-07-17 02:08 818我们编写的Servlet一般继承HttpServ ... -
Web开发10:对复杂表单进行客户端服务端验证
2011-07-16 19:27 986对上面这个用户基本信息页面进行客户端与服务器端的验证,下面 ... -
Web开发9:JavaBean
2011-07-16 00:05 454具体实例: 写一个JAV ... -
Web开发8:使用JavaScript与Servlet实现客户端与服务器端验证
2011-07-14 23:30 1114下面写一个注册页面 register.jsp,主 ... -
Web开发7:请求转发与重定向的区别
2011-07-13 22:11 1076需注意的是:所谓重 ... -
Web开发6:JSP内置对象比较与分析2
2011-07-11 21:25 984先看个小例子: request1.jsp <%@ p ... -
Web开发5:JSP内置对象比较与分析
2011-06-24 00:21 975内置对象与J2EE类的映射 以下是reques ... -
Web开发4:JSP转换为Servlet源代码深度解析
2011-06-22 00:20 1480JSP的注释写法是:<% ... -
Web开发3:Tomcat根据JSP生成Servlet机制深度剖析及核心源代码详解
2011-06-21 00:10 17011:什么是JSP(Java Server Pages): 在 ... -
Web开发1:Tomcat环境配置
2011-06-15 23:40 847从http://tomcat.apache.org/获取T ...
相关推荐
**JSP(Java Server Pages)开发详解第二版**是一本深度剖析JSP技术的专业书籍,旨在帮助开发者全面理解和掌握JSP的使用与实践。在这一版本中,作者深入浅出地讲解了JSP的核心概念、语法特性以及最新的开发实践,为...
Spring3.0是Spring在积蓄了3年之久后,隆重推出的一个重大升级版本,进一步加强了Spring作为Java领域第一开源平台的翘楚地位。 Spring3.0引入了众多Java开发者翘首以盼的新功能和新特性,如OXM、校验及格式化框架...
Spring3.0是Spring在积蓄了3年之久后,隆重推出的一个重大升级版本,进一步加强了Spring作为Java领域第一开源平台的翘楚地位。 Spring3.0引入了众多Java开发者翘首以盼的新功能和新特性,如OXM、校验及格式化框架...
【AI】从头到脚详解如何创建部署Azure Web App的OpenAI项目源码
人脸识别项目实战
人工智能-人脸识别代码,采用cnn的架构识别代码
汽车配件制造业企业信息化整体解决方案
短期风速预测模型,IDBO-BiTCN-BiGRU-Multihead-Attention IDBO是,网上复现 评价指标:R方、MAE、MAPE、RMSE 附带测试数据集运行(风速数据) 提示:在MATLAB2024a上测试正常 ,短期风速预测模型; IDBO-BiTCN-BiGRU-Multihead-Attention; 评价指标: R方、MAE、MAPE、RMSE; 复现; 测试数据集; MATLAB 2024a,短期风速预测模型:IDBO-BiTCN-BiGRU-Attention集成模型
手势识别项目实战
在智慧园区建设的浪潮中,一个集高效、安全、便捷于一体的综合解决方案正逐步成为现代园区管理的标配。这一方案旨在解决传统园区面临的智能化水平低、信息孤岛、管理手段落后等痛点,通过信息化平台与智能硬件的深度融合,为园区带来前所未有的变革。 首先,智慧园区综合解决方案以提升园区整体智能化水平为核心,打破了信息孤岛现象。通过构建统一的智能运营中心(IOC),采用1+N模式,即一个智能运营中心集成多个应用系统,实现了园区内各系统的互联互通与数据共享。IOC运营中心如同园区的“智慧大脑”,利用大数据可视化技术,将园区安防、机电设备运行、车辆通行、人员流动、能源能耗等关键信息实时呈现在拼接巨屏上,管理者可直观掌握园区运行状态,实现科学决策。这种“万物互联”的能力不仅消除了系统间的壁垒,还大幅提升了管理效率,让园区管理更加精细化、智能化。 更令人兴奋的是,该方案融入了诸多前沿科技,让智慧园区充满了未来感。例如,利用AI视频分析技术,智慧园区实现了对人脸、车辆、行为的智能识别与追踪,不仅极大提升了安防水平,还能为园区提供精准的人流分析、车辆管理等增值服务。同时,无人机巡查、巡逻机器人等智能设备的加入,让园区安全无死角,管理更轻松。特别是巡逻机器人,不仅能进行360度地面全天候巡检,还能自主绕障、充电,甚至具备火灾预警、空气质量检测等环境感知能力,成为了园区管理的得力助手。此外,通过构建高精度数字孪生系统,将园区现实场景与数字世界完美融合,管理者可借助VR/AR技术进行远程巡检、设备维护等操作,仿佛置身于一个虚拟与现实交织的智慧世界。 最值得关注的是,智慧园区综合解决方案还带来了显著的经济与社会效益。通过优化园区管理流程,实现降本增效。例如,智能库存管理、及时响应采购需求等举措,大幅减少了库存积压与浪费;而设备自动化与远程监控则降低了维修与人力成本。同时,借助大数据分析技术,园区可精准把握产业趋势,优化招商策略,提高入驻企业满意度与营收水平。此外,智慧园区的低碳节能设计,通过能源分析与精细化管理,实现了能耗的显著降低,为园区可持续发展奠定了坚实基础。总之,这一综合解决方案不仅让园区管理变得更加智慧、高效,更为入驻企业与员工带来了更加舒适、便捷的工作与生活环境,是未来园区建设的必然趋势。
相亲交友系统源码 V10.5支持婚恋相亲、媒婆返利、红娘系统、商城系统等等 这款交友系统功能太多了,适合婚恋相亲,还有媒婆婚庆等等支持 PC和 H5还有小程序,可封装红年、APP,里面带安装教程
本资源《单片机也能玩双核之你想不到的C技巧系列——嵌入式实战》涵盖 双核单片机开发、C语言高级技巧、嵌入式系统优化 等核心内容,结合 实战案例与视频教程,帮助开发者深入理解并掌握高效编程技巧。 适用人群: 适合 嵌入式开发工程师、单片机开发者、电子信息相关专业学生,以及希望提升 C语言编程能力 和 嵌入式项目经验 的技术人员。 能学到什么: 双核单片机开发思路,提高并行处理能力。 C语言高级技巧,提升代码优化与执行效率。 嵌入式系统调试方法,掌握实际项目中的调试策略。 实战案例解析,学习如何在实际工程中应用双核技术。 阅读建议: 建议 先学习基础知识,再结合 示例代码与视频教程 进行实操,重点关注 代码优化、调试技巧与双核应用模式,通过实战演练提高嵌入式开发能力。
人脸识别项目源码实战
人脸识别项目源码实战
c语言学习
红外光伏缺陷目标检测模型,YOLOv8模型 基于红外光伏缺陷目标检测数据集训练,做了必要的数据增强处理,以达到缺陷类别间的平衡 可检测大面积热斑,单一热斑,二极管短路和异常低温四类缺陷 测试集指标如图所示 ,核心关键词:红外光伏缺陷目标检测模型; YOLOv8模型; 数据增强处理; 缺陷类别平衡; 大面积热斑; 单一热斑; 二极管短路; 异常低温。,基于YOLOv8的红外光伏缺陷检测模型
基于PLC的自动浇花控制系统 西门子1200PLC博途仿真,提供HMI画面,接线图,IO分配表,演示视频,简单讲解视频 博图15.1及以上版本均可使用 ,核心关键词: PLC自动浇花控制系统; 西门子1200PLC博途仿真; HMI画面; 接线图; IO分配表; 演示视频; 简单讲解视频; 博图15.1及以上版本。,基于PLC的自动浇花系统:西门子1200PLC博途仿真实践教程
在智慧园区建设的浪潮中,一个集高效、安全、便捷于一体的综合解决方案正逐步成为现代园区管理的标配。这一方案旨在解决传统园区面临的智能化水平低、信息孤岛、管理手段落后等痛点,通过信息化平台与智能硬件的深度融合,为园区带来前所未有的变革。 首先,智慧园区综合解决方案以提升园区整体智能化水平为核心,打破了信息孤岛现象。通过构建统一的智能运营中心(IOC),采用1+N模式,即一个智能运营中心集成多个应用系统,实现了园区内各系统的互联互通与数据共享。IOC运营中心如同园区的“智慧大脑”,利用大数据可视化技术,将园区安防、机电设备运行、车辆通行、人员流动、能源能耗等关键信息实时呈现在拼接巨屏上,管理者可直观掌握园区运行状态,实现科学决策。这种“万物互联”的能力不仅消除了系统间的壁垒,还大幅提升了管理效率,让园区管理更加精细化、智能化。 更令人兴奋的是,该方案融入了诸多前沿科技,让智慧园区充满了未来感。例如,利用AI视频分析技术,智慧园区实现了对人脸、车辆、行为的智能识别与追踪,不仅极大提升了安防水平,还能为园区提供精准的人流分析、车辆管理等增值服务。同时,无人机巡查、巡逻机器人等智能设备的加入,让园区安全无死角,管理更轻松。特别是巡逻机器人,不仅能进行360度地面全天候巡检,还能自主绕障、充电,甚至具备火灾预警、空气质量检测等环境感知能力,成为了园区管理的得力助手。此外,通过构建高精度数字孪生系统,将园区现实场景与数字世界完美融合,管理者可借助VR/AR技术进行远程巡检、设备维护等操作,仿佛置身于一个虚拟与现实交织的智慧世界。 最值得关注的是,智慧园区综合解决方案还带来了显著的经济与社会效益。通过优化园区管理流程,实现降本增效。例如,智能库存管理、及时响应采购需求等举措,大幅减少了库存积压与浪费;而设备自动化与远程监控则降低了维修与人力成本。同时,借助大数据分析技术,园区可精准把握产业趋势,优化招商策略,提高入驻企业满意度与营收水平。此外,智慧园区的低碳节能设计,通过能源分析与精细化管理,实现了能耗的显著降低,为园区可持续发展奠定了坚实基础。总之,这一综合解决方案不仅让园区管理变得更加智慧、高效,更为入驻企业与员工带来了更加舒适、便捷的工作与生活环境,是未来园区建设的必然趋势。
大型集团用户画像系统化标准化数字化用户主数据管理项目规划方案
基于STM32的水质 浊度检测仪设计与实现(详细设计说明书+ 10008-基于STM32的水质 浊度检测仪设计与实现(详细设计说明书+原理图PCB工程+源码工程+实物照片) 本次设计是设计一款水质检测设备,实现温度检查、水质检测的功能,将检测到的数据显示到显示器中,并实时记录系统的参数 本次系统需要对温度检测,使用的传感器为DS18B20,通过单总线的方式来完成系统温度检测 使用水质检测模块检查水的质量 通过传感器检测到的数据计算后的值实时刷新到显示器中,主要的功能包括以下几点: ①可以对温度实时检测; ②可以对水质实际值实时检测; ③水质浑浊预警 主要特点: 1.以STM32单片机为核心,配合水质模块; 2.主要完成系统的 功能控制、状态显示、信息检测以及报警硬件组建所单片机和传感器等元器件的选择; 3.完成系统控制的软件设计编程; 4.实现对水质检测、温度检查、预警的功能 内容包含: 1、原理图工程 2、PCB工程 3、源码工程 4、实物照片 5、详细介绍说明书-22531字 6、实物照片 7、浊度传感器资料