servlet基本原理(手动创建动态资源+工具开发动态资源)
一、手动开发动态资源
1 静态资源和动态资源的区别
静态资源: 当用户多次访问这个资源,资源的源代码永远不会改变的资源。
动态资源:当用户多次访问这个资源,资源的源代码可能会发送改变。
| <script type="text/javascript"> function curDate(){ var curdate=new Date(); var strDate=curdate.getFullYear()+"年"+curdate.getMonth()+" 月"+curdate.getDay()+"日 "+curdate.getHours()+"时"+curdate.getMinutes()+"分"+curdate.getSeconds()+" 秒"; document.getElementById("span01").innerHTML=strDate; } window.setInterval("curDate()", 1000); </script> |
2 动态资源的开发技术
Servlet : 用java语言来编写动态资源的开发技术。
Servlet特点:
1)普通的java类,继承HttpServlet类,覆盖doGet方法
2)Servlet类只能交给tomcat服务器运行!!!!(开发者自己不能运行!!!)
Servlet手动编写步骤:
1)编写一个servlet程序,继承HttpServlet
|
/** * 第一个servlet程序 * @author APPle * */ public class HelloServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //解决中文乱码问题 resp.setContentType("text/html;charset=utf-8"); //向浏览器输出内容 resp.getWriter().write("这是第一个servlet程序。当前时间为:"+new Date()); } } |
2)找到HelloServlet类的class字节码,然后把拷贝到tomcat的一个web应用中WEB-INF/classes目录下。
3)在当前web应用下的web.xml文件配置Servlet。
|
<!-- 配置一个servlet程序 --> <servlet> <!-- servlet的内部名称 ,可以自定义--> <servlet-name>HelloServlet</servlet-name> <!-- servlet类名: 包名+简单类名--> <servlet-class>gz.itcast.d_servlet.HelloServlet</servlet-class> </servlet> <servlet-mapping> <!-- servlet的内部名称,和上面的名称保持一致!!!--> <servlet-name>HelloServlet</servlet-name> <!-- servlet的访问名称: /名称 --> <url-pattern>/hello</url-pattern> </servlet-mapping> |
4)启动tomcat服务器,运行访问
访问servlet: http://localhost:8080/myweb/ hello
二、 工具开发动态资源
1)创建web project (javaweb工程)
2)在WebRoot下建立静态资源文件,
3)在src下建立动态资源文件
3.1 new -> Servlet( servlet的代码生成器)
3.2 写pacakge -> class名 -> 修改mapping url
4)关联tomcat服务器
4.1 window-> Preferences - > MyEcplise -> servers -> Tomcat 6.x (注意一定要enable)
5)部署web project应用。(拷贝web应用到tomcat的webapps目录下)
6)启动tomcat服务器
7)访问servlet
http://localhost:8081/day08_web/hello
servlet基本原理(手动创建动态资源+工具开发动态资源)的更多相关文章
- servlet和手动创建servlet,断点调试
1. 什么是Servlet Servlet是一种用Java语言编写的Web应用组件 Servlet主要用于动态网页输出,扩展了Web服务器的功能 Servlet由Servlet容器进行管理 2. ...
- 2,手动创建CAD二次开发项目--AutoCAD二次开发(2020版)
本项目使用手动创建,意为不使用SDK模板. 从Visual Studio的“文件”下拉菜单中,选择“新建”->“项目...”. 在出现的“新建项目”对话框的“项目类型:”树中,单击“ Visua ...
- 手动开发动态资源之servlet初步
1.1 静态资源和动态资源的区别 静态资源:当用户多次访问这个资源,资源的源代码永远不会改变的资源. 动态资源:当用户多次访问这个资源,资源的源代码可能会发送改变. 1.2动态资源的开发技术 Serv ...
- 在javaEE下学习web(在eclipse中开发动态的WEB工程,servlet的环境搭建,及servlet的一些方法)
一个简便的方法实现javaee版的eclipse开发动态的WEB工程(javaWEB项目)1.把开发选项切换到javaEE2. 可以在window->shou view 中找到package e ...
- 使用KRPano资源分析工具分析动态网站资源
软件交流群:571171251(软件免费版本在群内提供) krpano技术交流群:551278936(软件免费版本在群内提供) 最新博客地址:blog.turenlong.com 限时下载地址:htt ...
- Windows驱动开发-手动创建IRP
手动创建IRP有以下几个步骤: 1,先得到设备的指针,一种方法是用IoGetDeviceObjectPointer内核函数得到设备对象指针,另外一种方法是用zwCreateFile内核函数先得到设备句 ...
- 使用JSP开发动态网站基础
1. 什么是动态网页? 动态网页是指在服务器端运行的程序或者网页,它们会随不同客户.不同时间,返回不同的网页. 注意:在静态网页中插入flash ,虽然flash是在动的,但是并不是说这个网页就是动态 ...
- Spark记录-Spark性能优化(开发、资源、数据、shuffle)
开发调优篇 原则一:避免创建重复的RDD 通常来说,我们在开发一个Spark作业时,首先是基于某个数据源(比如Hive表或HDFS文件)创建一个初始的RDD:接着对这个RDD执行某个算子操作,然后得到 ...
- 精通BIRT:Eclipse商务智能报表工具开发实践指南
http://blog.csdn.net/birtbird/article/details/8935520 [置顶] 精通BIRT:Eclipse商务智能报表工具开发实践指南 分类: BIRT 201 ...
随机推荐
- JavaScript中this的一些怪异现象
<!--JavaScript伪协议和内联事件对于this的指向不同--> <a href="#" onclick="alert(this.tagName ...
- Atitit usrQBF2312 命名空间pkg 以及 api命名 spec规范
Atitit usrQBF2312 命名空间pkg 以及 api命名 spec规范 简化英文1 常用类库sdk的命名单词统计表1 简化时间规则1 Namsspace nam spec,参照java . ...
- IBM appscan 9.0破解版分享
简介:IBM AppScan该产品是一个领先的 Web 应用安全测试工具,曾以 Watchfire AppScan 的名称享誉业界.Rational AppScan 可自动化 Web 应用的安全漏洞评 ...
- 技术往事:改变世界的TCP/IP协议(珍贵多图、手机慎点)
1.前言 作为应用层开发人员,接触最多的网络协议通常都是传输层的TCP(与之同处一层的另一个重要协议是UDP协议),但对于IP协议,对于应用程序员来说更多的印象还是IP地址这个东西,再往深一点也就很难 ...
- 手机页面的 HTML<meta> 标签使用与说明
name="viewport" 设置窗口(网页可绘制的区域) width="device-width" 应用宽与屏幕的宽一样的 (height同width) i ...
- java异常处理:建立exception包,建立Bank类,类中有变量double balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的发方法withDrawal(double dAmount),当取款的数额大于存款时,抛出InsufficientFundsException,取款数额为负数,抛出NagativeFundsException,如new Bank(100),
建立exception包,建立Bank类,类中有变量double balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的发方法withDrawal(double dAmount ...
- SSIS Component的ValidateExternalMetadata属性
ValidateExternalMetadata Property Indicates whether the component validates its column metadata agai ...
- sqlserver -- 学习笔记(八)体验charindex、stuff 和 for xml path在实际问题中的应用及几个问题的探讨
写在前面 之前做了个微信端顾客扫码评价员工的功能,除了打分数,还可以打标签. 需要统计分数和统计各个员工每种标签被点击的次数. 后来加了个要求,需要查看客户对某个员工一次服务所打出的标签组合. 在不 ...
- Lua 学习笔记(四)语句与控制结构
一.赋值与多重赋值 赋值的基本含义是改变一个变量的值或table中字段的值.Lua中允许“多重赋值”,也就是同时为多个值赋予多个变量,每个变量之间以逗号分隔. Lua会先对等号右边 ...
- SQLServer学习笔记系列4
一.写在前面的话 好多天没有记录sql学习笔记了,要坚持下去,坚信每一点的进步都是为在积蓄力量.今天看到一幅图,特此分享出来. 通过这幅图,我看到的是每人站在自己的角度看问题,感受是不一样的,就如同学 ...