web初识-tomcat的基本使用
Web入门
1. 软件结构:
C/S : 有客户端, 维护较麻烦, 需要客户端和服务器端都更新.
B/S : 优点 : 客户端就是浏览器, 更新方便, 只需要更新服务器端即可
缺点 : 所有计算都要服务器完成, 对于游戏这类并不适合
2. 服务器:
一般要求: 8核心, 大内存, 高带宽, 高储存容量以T计算
Web服务器: PC机装一个web服务软件, 让用户可以访问到指定资源
数据库服务器: PC机装一个SQL服务软件, 让用户可以有限制的访问数据库
web服务器其实是一个socket服务器, 对客户端(浏览器)发送的请求进行解析处理. 浏览器访问 : http://目标主机IP地址: Port
常用服务器:
JBoss: 支持j2ee规范
WebLogic: 支持j2ee规范
WebSphere: 支持j2ee规范
Tomcat: Apache的, 免费, 支持部分j2ee规范 (不支持ejb, rmi等)
3. Tomcat 服务器的基本使用:
3.1下载启动tomcat
压缩版: 需要手动配置环境, 类似于MySQL的手动配置
安装版: 安装直接可以使用
找到%tomcat%/bin/startup.dat, 双击运行即可
3.2出现启动就闪退问题:
因为tomcat启动时会找一个叫JAVA_HOME环境变量, 然后去寻找CATALINE_HOME, 没有配置就会出现闪退
解决方案:
在windows配置环境变量JAVA_HOME属性为jdk的路径, 不要配置CATALINE_HOME环境变量
3.3 Tomcat的目录层次结构
3.4Web应用的目录结构:
|-WebRoot: web应用的根目录
|-静态资源 ( HTML + CSS + js + image + video )
|-WEB-INF: 固定写法
|-classes: (可写) 固定写法, 存放字节码文件
|-lib: (可写) 固定写法, 存放使用的jar包文件
|-web.xml web配置信息
4. 开发动态资源:
4.1 servlet程序
Servlet: 用Java语言编写动态资源的技术
Servlet的特点:
1) 普通的Java类, 继承HttpServlet类, 覆盖doGet方法
2) 只能由tomcat启动, 不能由开发者自己手动运行
4.2手动编写第一个servlet程序
1) 先编写一个servlet程序
|
/** * 第一个servlet程序 */ 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) 在tomcat的webapp文件夹下建立一个web文件加, 包含WEB-INF文件夹和web.xml文件, 把servlet的字节码文件放在WEB-INF的classes文件夹中, 并在web.xml文件中配置
3) web.xml的配置
|
<!-- 配置一个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
4.3工具开发动态资源
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
web初识-tomcat的基本使用的更多相关文章
- Servlet学习之web服务器Tomcat 详解
Web服务器是什么 Web服务器是指驻留于因特网上某种类型计算机的程序.当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件发送到该浏览器上,附带的信息会告诉浏览器如何查看该文 ...
- 转载Eclipse中Maven WEB工程tomcat项目添加调试
转载地址: http://blog.csdn.net/free4294/article/details/38260581 一.建立一个maven WEB项目 1.file->new->o ...
- java web服务器tomcat介绍【转载】
机器矩阵2016-08-10 22:14 java程序员亲切地称他为tom猫,看到这只猫可以说明1 服务器部署成功了 ,2 网络是联通的. 到底这只猫是什么来头呢? tomcat是Apache基金会下 ...
- Eclipse中Maven WEB工程tomcat调试
最近没事了玩一下maven,使用maven管理工程中的依赖包非常的方便.建立maven web工程的时候开始不知道怎么用tomcat来调试,总是使用mave的tomcat插件发布了后来调试,觉得非常的 ...
- Reloading Java Classes 301: Classloaders in Web Development — Tomcat, GlassFish, OSGi, Tapestry 5 and so on Translation
The Original link : http://zeroturnaround.com/rebellabs/rjc301/ Copyright reserved by Rebel Inc In t ...
- 转 : JBoss Web和 Tomcat的区别
JBoss Web和 Tomcat的区别 在Web2.0的浪潮中,各种页面技术和框架不断涌现,为服务器端的基础架构提出了更高的稳定性和可扩展性的要求.近年来,作为开源中间件的全 球领导者,JBoss在 ...
- java java web及tomcat的使用
java web及tomcat的使用 一.什么是java web: 参考百度百科: http://baike.baidu.com/link?url=HnaWXFD7wFfPAlFMW02GV6r5p ...
- 【转】JBoss Web和 Tomcat的区别
转载于:http://www.verydemo.com/demo_c202_i780.html JBoss Web和 Tomcat的区别 在Web2.0的浪潮中,各种页面技术和框架不断涌现,为服务器端 ...
- 一个Web报表项目的性能分析和优化实践(三) :提高Web应用服务器Tomcat的内存配置,并确认配置正确
摘要 上一篇,一个Web报表项目的性能分析和优化实践(一):小试牛刀,统一显示SQL语句执行时间 ,讲述了项目优化的整体背景,重点讲述了统一显示了Web项目SQL语句的执行时间. 本篇,将重点介绍提高 ...
随机推荐
- mysql中的group_concat函数的用法
本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) . MySQL中group_concat函数 完整的语法如下: grou ...
- 在线LCA模板
在线LCA 如求A,B两点的LCA,先计算出各个结点的深度d[],然后,通过递推公式求出各个结点的2次方倍的祖先p[],假设d[A] > d[B],则找到d[p[A][i]] == d[B]也就 ...
- 【转】处理新版Chrome书签、菜单字体不清晰
原文网址:http://www.nmgwddj.com/share/311.html 昨晚打开Chrome浏览器,忽然感觉有些什么东西变了,仔细看了半天忽然发现,书签中的字体和网页中右键的字体全部都变 ...
- c#反序列化
C#序列化(转载) 2011-03-15 | 凯之风 | 转藏(2) 序列化有下列要求: A> 只序列化PUBLIC的成员变量和属性 B> 类必须有默认识构造函数 C> 如果 ...
- Big Event in HDU(01背包)
/* 题意: 输入一个数n代表有n种物品, 接下来输入物品的价值和物品的个数: 然后将这些物品分成A B 两份,使A B的价值尽可能相等也就是尽量分的公平一些,如果无法使A B相等,那么就使A多一些: ...
- poj1664 (递归)
放苹果 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 31295 Accepted: 19742 Description ...
- poj 2187 凸包加旋转卡壳算法
题目链接:http://poj.org/problem?id=2187 旋转卡壳算法:http://www.cppblog.com/staryjy/archive/2009/11/19/101412. ...
- 【转】JavaScript对Json节点的增删改
var json = { "age":24, "name":"cst" }; //修改Json中的age值,因为Json中存在age属性 j ...
- Fluent-EDEM耦合计算颗粒流动
虽然说Fluent提供了很多方法用于处理颗粒在流体中的运动行为,然而这些方法都有其各自的适用性.DPM适用于稀薄颗粒的情况,欧拉模型.Mixture模型及DDPM模型虽然可以考虑稠密颗粒相,但并不能考 ...
- UIScrollView控件详解
一.知识点简单介绍 1.UIScrollView控件是什么? (1)移动设备的屏幕⼤大⼩小是极其有限的,因此直接展⽰示在⽤用户眼前的内容也相当有限 (2)当展⽰示的内容较多,超出⼀一个屏幕时,⽤用户可 ...