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语句的执行时间. 本篇,将重点介绍提高 ...
随机推荐
- 【算法Everyday】第二日 求子数组的最大和
题目 // 3.求子数组的最大和 // 题目: // 输入一个整形数组,数组里有正数也有负数. // 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. // 求所有子数组的和的最大值. ...
- COJ 2106 road
road 难度级别: A: 编程语言:不限:运行时间限制:1000ms: 运行空间限制:131072KB: 代码长度限制:102400B 试题描述 某国有N个城市,这N个城市由M条双向道路连接.现 ...
- Pen Editor
Pen Editor
- 【树状数组】CSU 1811 Tree Intersection (2016湖南省第十二届大学生计算机程序设计竞赛)
题目链接: http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1811 题目大意: 一棵树,N(2<=N<=105)个节点,每个节点有一种颜 ...
- Hat's Fibonacci(大数问题)
#include <iostream>#include <stdio.h>#include <string.h>using namespace std;int a[ ...
- SRM 392(1-250pt)
DIV1 250pt 题意:给两个各含有一个*号的字符串s1和s2,可以用一个任意字符串代替*号(注意是串,不是只能用单个字符代替,也可以为用空串代替),问能否将s1和s2变为相同的字符串.如果能输出 ...
- Jenkins 四: 启动关闭以及重启jenkins
启动 1. 在桌面新建一个jenkins.bat文件.内容如下: cd /d %JENKINS_HOME% java -jar %JENKINS_HOME%\jenkins.war --httpPor ...
- java中的代理
package cn.itcast.day3; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationHan ...
- Selenium终极自动化测试环境搭建(一) Selenium+Eclipse+Junit+TestNG
Selenium终极自动化测试环境搭建(一)Selenium+Eclipse+Junit+TestNG 第一步 安装JDK JDk1.7. 下载地址:http://www.oracle.com/tec ...
- Linux下报 java.net.SocketException权限不够 异常解决
转载自:http://wangchongan.com/articles/java-net-socket-exception-permission-denied.html 今天在Linux下用Jetty ...