tomcat配置部署servlet全记录
tomcat 配置,部署servlet全记录tomcat 配置,部署servlet全记录本人系菜鸟,刚刚学习servlet,感觉到编写servlet倒是不太难,但部署起来就晕了。
在网上看了很多文章,最后终于搞定了,下面以菜鸟的角度(本人不是高手,嘿嘿所以……)记录下部署的全过程,以备来日参考。
高手莫笑。
本文写于2007-8-11,所用软件采用最新版一、准备工作:1. 电脑一台,(废话,呵呵)2. jdk 环境,本文使用的是jdk 1.5.0 (这个版本在今天不算是最新版)。
jdk环境的安装和配在此就略过了,安装完后只要能正常编译java程序即可。
3.当然是tomcat了本文采用tomcai5.5 。
tomcat的安装很简单,一般有两种方式:第一是用zip文件,直接解压到目标目录中。
第二是从官方下载tomcat的安装程序,直接双击安装。
本文采用的是第二种方式,下载安装文件,然后双击安装。
过程略过,一路默认下一步,也可以修改一下安装路径。
4. 用来测试的servlet,自己写一个简单的Helloworldservlet。
此处略过。
此处如果编译通不过,可以跳过,先看配置。
二、开始配置1. 配置jdk,以前安装好的j2sdk是不能编译servlet的,因为找不到servlet相关的类文件。
解决方法一般有两个,第一可以从sun官方网站下载servlet所需的类文件,然后补充到j2sdk的目录下面。
第二,由于安装了tomcat,它自带了最新版的servlet类文件,打包成了jar包。
位置在tomcat安装目录下的\common\lib\servlet-api.jar。
在我的机器上的全路径为D:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib\servlet-api.jar其他机器自己改。
配置方法:在我的电脑--属性--高级---环境变量打开。
在系统环境变量处,如果以前配置了CLASSPATH环境变量,则点击编辑把上面的全路径添加进去,注意用分后与原来的内容隔开。
如果以前没有CLASSPATH环境变量,则点击新建,变量名字为CLASSPATH,内容就是上面的全路径。
不要忘了在全路径后面加上分号和点,表示当前路径然后就可以正常编译servlet 了。
现在可以编译上面写的HelloWorld.java 了。
2. 安装完成后,不需要任何环境变量的手动配置,直接从开始->程序->Apachetomcat5.5-> Monitor tomcat 打开tomcat监视器,然后在系统任务栏的tomcat图标点右键,然后start service 启动tomcat此时在浏览器输入http://127.0.0.1:8080 看到tomcat的页面说明你的tomcat安装没问题。
三. 此处进入主题,配置,部署servlet。
1. 在tomcat的安装目录下找到webapps 文件夹,在里面新建一个文件夹,这作为你的网站根文件夹,名字随意取,本文叫做serv 文件夹。
位置为\webapps\serv通过http://127.0.0.1:8080 /serv 可以访问到这个位置(现在没有文件,访问会出错)。
可以写一个测试文件,index.html 放在这个文件夹下,通过http://127.0.0.1:8080 /serv /index.html 就可以看到这个文件。
2. 在serv 里面新建文件夹WEB-INF ,注意大小写和短线。
在WEB-INF里面新建classes文件夹和web.xml 文件。
|-----serv|----index.html|----WEB-INF|----web.xml // 此文件是部署关键,修改此文件定义servlet。
|----classes //此文件夹存放编译好的servlet类文件,如果servlet有pakage,则应建立相应的pakage结构,本问helloworld未打包,所以自己将HelloWorld.class 放在这里即可。
|-----HelloWorld.class3. 用记事本打开web.xml 。
编写如下内容:<?xml version="1.0" encoding="ISO-8859-1"?><web-app xmlns="/xml/ns/j2ee"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/xml/ns/j2ee/xml/ns/j2ee/web-app_2_4.xsd"version="2.4"><display-name>Welcome to my first jsp</display-name> <description>Welcome to my jsp</description><servlet><servlet-name>Hello</servlet-name><servlet-class>HelloWorld</servlet-class></servlet><servlet-mapping><servlet-name>Hello</servlet-name><url-pattern>/abc/Hello.do</url-pattern></servlet-mapping></web-app>保存,后通过http://127.0.0.1:8080/serv/abc/Hello.do就可以访问你的HelloWorld 了。
注意这个地址后缀跟上面红色代码的联系。
4. 现在重点解释一下web.xml 文件。
(1). 上面的xml的文件头的版本等信息是粘贴过去就行,这个web.xml 可以在webapps\root\WEB-INF 下面找到。
这直接复制过去就行了。
需要修改的就是<display-name> <servlet> 和<servlet-mapping> 这三个标签的内容。
上面的例子中已经做了相应的修改。
其中重点是修改后面两个标签。
(2). 解释<servlet>标签: 这是用来创建servlet的标签. 其中<servlet-name>是给servlet取名,本文取作Hello, 这个名字是任意取的.<servlet-class>是指定这个servlet 所对应的class文件. 这个文件必须已经编译,并且放在classes文件夹下面.本文是HelloWorld.class 后缀名不写,只写上HelloWorld需要注意两点: 第一,servlet取名是任意的,可以与class文件名相同也可以不同.本文就不同.第二,对应的类文件,如果有包还应带上包的前缀,例如<servlet-class>mypkg1.mypkg2.HelloWorld</servlet-class>这些pakage 的结构必须在classes文件夹中已经建立.当网站中用到多个servlet 时可以重复粘贴这个servlet标签,然后修改相应的名字和class文件.(3). 解释<servlet-mapping>标签:这是用来定义从web页面访问servlet时所需的访问后缀字符串与对应的servlet的映射关系. 其中<servlet-name>是需要接受访问的servlet的名字, 这个名字必须已经用上述<servlet> 定义过. 本文就是Hello.<url-pattern>是是定义访问这个servlet是所需要给定的访问后缀字符串本文给定/abc/Hello.do 是随意给的,在网站的跟目录下加上这个字符串就可以访问指定的servlet了. 这里的abc 并不是文件夹, 后面的.do 也不是后缀名, 而是随意给的.也可以改为<url-pattern>/aaabbbccc</url-pattern> 这样通过http://127.0.0.1:8080/serv/aaabbbccc 这个地址同样可以访问HelloWorld.需要注意一点: /aaabbbccc 前面的斜线不能丢.而且这个字符串是直接加在网站的跟路径下访问的,与servlet的实际路径无关. 本文就是加载serv 后面访问的. 四,总结有点啰唆,技术含量不高, 希望我的经历对跟我一样入门的菜鸟有所帮助.本人搞了一整晚才搞定,本人认为难点在于web.xml的配置,网上很多文章都直接给出web.xml 而不解释标签的含义.让人看了不知其所以然,所以就晕了.我也是在这上花了很多时间,所以本文重点在解释web.xml.错漏之处在所难免,欢迎批评指正.QQ: 402668482by:shuidao 2007.8.11。
Tomcat介绍-安装-配置
Tomcat介绍-安装-配置本节要点●掌握Servlet和Servlet容器的相关概念●Tomcat简介●掌握Tomcat的安装和配置●了解Tomcat的安装目录结构●运行Tomcat要掌握Java Web开发,首先就要学会编写Servlet,而要运行Servlet,则需要一个Servlet容器,这里选用的是Tomcat。
下面让我们先来了解一下Servlet和Servlet容器的概念。
1. Servlet与Servlet容器Servlet是平台独立的Java类,编写一个Servlet,实际上就是按照Servlet规范编写一个Java类。
Servlet被编译为平台独立的字节码,可以被动态地加载到支持Java技术的Web服务器中运行。
目前Servlet规范最新的版本是2.5。
那么什么是Servlet容器呢?Servlet容器有时候也叫做Servlet引擎,是Web服务器或应用程序服务器的一部分,用于在发送的请求和响应之上提供网络服务。
Servlet不能独立运行,它必须被部署到Servlet容器中,由容器来实例化和调用Servlet的方法,Servlet 容器在Servlet的生命周期内包容和管理Servlet。
用户通过单击某个链接或者直接在浏览器的地址栏中输入URL来访问Servlet,Web服务器接收到该请求后,并不是将请求直接交给Servlet,而是交给Servlet容器。
Servlet 容器实例化Servlet,调用Servlet的一个特定方法对请求进行处理,并产生一个响应。
这个响应由Servlet容器返回给Web服务器,Web服务器包装这个响应,以HTTP响应的形式发送给Web浏览器。
2. Tomcat简介:Tomcat是一个免费的开放源代码的Servlet容器,它是Apache软件基金会(Apache Software Foundation)的一个顶级项目,由Apache、Sun和其他一些公司及个人共同开发而成。
使用maven的tomcat:run进行web项目热部署
使⽤maven的tomcat:run进⾏web项⽬热部署近期⼜⼜⼀次看了⼀下maven的东西,事实上主要是由于去了解Jenkins,后期或许会补充jenkins的博⽂。
1、⾸先来看⼀下maven tomcat插件:<plugin><groupId>org.apache.tomcat.maven</groupId><artifactId>tomcat7-maven-plugin</artifactId><version>2.2</version><configuration><port>8080</port><path>/dubbo-admin</path><uriEncoding>UTF-8</uriEncoding><finalName>dubbo-admin</finalName><server>tomcat7</server></configuration></plugin>2、配置jsp,servlet依赖什么的..<dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.5</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet.jsp</groupId><artifactId>jsp-api</artifactId><version>2.2</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency><dependency><groupId>jsptags</groupId><artifactId>pager-taglib</artifactId><version>2.0</version><scope>provided</scope></dependency>⼀定须要以上的依赖。
Tomcat安装配置
Tomcat安装配置1- 动态web1.1 web服务器本⾝是⼀个程序,运⾏在服务器上。
也称为Web容器,写的程序是运⾏在Web容器中。
容器作⽤:共享资源(图⽚,⽹页),将服务器上资源分享给浏览器。
解析写的Java程序处理⽤户发送的请求,并且对请求做出响应。
把⽣成的结果以⽹页的⽅式显⽰在浏览器上。
基本结构服务器缺点:服务器的动态web资源出现错误,需要重新编写我们的后台程序,重新发布。
服务器优点:Web页⾯可以动态更新,所有⽤户看到都不是同⼀个页⾯,它可以与数据库交互。
2- Tomcat2.1 安装tomcat2.2 Tomcat配置2.2.1 环境变量的配置CATALINA_HOME%CATALINA_HOME%\bin添加Tomcat的安装⽬录配置PathTomcat的启动与关闭常⽤命令启动的命令:startup.bat关闭的命令:shutdown.bat2.3 Tomcat的⽬录结构2.4 Tomcat项⽬发布⽅式1: 直接将项⽬复制到webapps⽬录下。
⽅式2: 采⽤压缩⽂件.war的⽅式。
将整个项⽬使⽤压缩⼯具打包成⼀个zip⽂件,将zip的扩展名为war。
复制到webapps⽬录下,tomcat会⾃动解压成⼀个同名的⽬录。
2.5 idea中配置Tomcat编辑运⾏配置添加Tomcat的配置服务器信息配置服务器的详细信息修改项⽬发布的访问地址点右上⾓的启动图标,启动Tomcat服务器服务器启动成功的状态信息⽇志乱码现象启动Tomcat的时候会出淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.鏈嶅姟鍣ㄧ増鏈�:解决这种乱码的问题,解决问题的⽅法是到tomcat/conf/⽬录下,修改logging.properties将java.util.logging.ConsoleHandler.encoding = utf-8更改为 java.util.logging.ConsoleHandler.encoding = GBK。
实验九 Servlet应用
实验九 Servlet应用实验九servlet应用实验九 servlet应用程序1.实验目标1.掌握servlet的编译和配置2了解servlet生命周期3了解servlet和JSP之间的区别2.实验内容与要求1.主要通过实践掌握servlet的使用和编写2.创建一个简单的servlet程序并在tomcat中进行配置3.创建一个servlet程序,可以接收客户端提交的参数,并在处理后返回给客户端。
4.使用request Getparametervalues(“”)获取复选框数据以实现用户注册功能3.实验步骤3) Java类生成的helloservlet被编译成helloservlet类。
编译时要注意使用它servlet-api.jar文件。
2.创建和部署servlet1)在tomcat\\webapps\\目录下创建自己的项目名称myexample2)在Tomcat\\webapps\\myexample目录中创建一个web inf目录,并创建一个classes目录,将编译后的helloservlet.class文件拷贝到这里。
3)在Tomcat\\webapps\\myexample目录中创建一个web inf目录,并创建一个web XML文件。
内容为Helloservlet是我们自己定义的servlet名称。
指定的helloservlet类(包括包名,如果有的话)指定了我们在ie.3中使用的地址。
启动Tomcat并运行测试1、response.setcontenttype(\;和request SetCharacterEncoding(\两种方法主要用于设置从客户端接收的字符编码和从服务器返回的信息的编码,以防止中文被篡改。
2、通过request.getparameter(\\方法分别得到从客户端传递过来的name和暗语3、最后用out.println()方法输出显示给客户的信息。
4.编译loginservlet Java,编译Jar文件时注意servlet API,Jar文件将被编译生成的loginservlet.class文件拷贝到tomcat\\webapps\\myproject\\web-inf\\classes目录下。
tomcat部署项目
第一种方法:在tomcat中的conf目录中,在server.xml中的,<host/>节点中添加:
<Context path="/hello" docBase="D:eclipse3.2.2forwebtoolsworkspacehelloWebRoot" debug="0" privileged="true">
runtime.getruntime().exec("cmd /c start "+strjavahome+"jar cvf hello.war c:\\tomcat5.0\\webapps\\root\\*");
}
catch(exception e){system.out.println(e);}
注意:删除一个Web应用同时也要删除webapps下相应的文件夹祸server.xml中相应的Context,还要将Tomcat的conf
\catalina\localhost目录下相应的xml文件删除。否则Tomcat仍会岸配置去加载。。。
webapps这个默认的应用目录也是可以改变。打开Tomcat的conf目录下的server.xml文件,找到下面内容:
<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeloy="true" xmlValidation="falase" xmlNamespaceAware="false">
Tomcat中部署WEB项目的四种方法
4、【增加自定义web部署文件(推荐使用,不需要重启Tomcat)】
在Tomcat安装目录confCatalinalocalhost下,里面有Tomcat自带的三个应用,随意复制其中的一个XML文件,然后修改docbase指向你自己的应用程序,
并把path改名,各参数参见上第三种方法。或者你也可以自己新建一个XML文件(注意此文件名将作为Context中的path,不管文件里的path怎么设置也无效),
3itPlus打开Tomcat位于conf/server.xml的配置文件,找到以下内容:
<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
path:表示访问的路径;如上述例子中,访问该应用程序为:http://localhost:8080/Mywebapps
reloadable:表示可以在运行时在classes与lib文件夹下自动加载类包
docbase:表示应用程序的地址,注意斜杠的方向“”
workdir:表示缓存文件的放置地址
将以下内容复制过去,修改相应路径即可。
<Context path="/test" docBase="F:/J2EE/yazd_war_3_0" debug="0" privileged="true" reloadable="true" >
TomCat-Servelet杂碎
13.JSP存在于服务器端(专门处理request、response的函数程序),JS存在于客户端(专门处理本地杂务的函数程序)。
14.TomCat服务器中Servelet对象只含有唯一一个,它的类成员变量意味着无论多少客户访问它,它的类成员变量只初始化一次,
2.Servelet -> Jsp 延续。
3.MyEclipse > Jdk > Jre > Jvm。
4.启动 startup ->IE输入 http://localhost:8080 有页面输出就是正确启动
关闭 shutdown
可以看启动失败原因的办法 catalina debug -> run 然后从第一个以 严重...打头的句子。
</beans:bean> ref="usersDao" 和name相同值,表明参考使用类b中变量userDao的定义UserDao进行依 赖注入的创建。
1.Servelet : 服务器端类,根据客户端的请求,“动态”响应返回给客户多样的静态页面即Html,要编写这样的小程序 需要另外一套定制的Java Api函数即封装了 Jse的交集和超越集,故需要的还是 外置Jvm(解析基础类) + 专业Tomcat(解析 Servelet类) 一起来解析编程语句。
set是“有序”的,“不允许元素重复”
31.${}<====>User user = (User)request(搜寻范围).getAttribute(user);
String name = user.getName();
Tomcat7.0安装配置详细(图文)
Tomcat7.0安装配置详细(图⽂) 1.进⼊上⾯的⽹站然后如下操作使⽤Window Service Installer(为Window 添加服务)2.然后我们进⾏安装说明⼀下:以前的版本是没有关于Role的设定,到了7.0的时候就有有关的设定,这也说明Tomcat对权限的关注⼀个tomcat运⾏的端⼝号:8080默认端⼝号:80,就是说不⽤输⼊端⼝号,默认输⼊就是80剩下的基本就是默认的,也没什么特殊的,在这⾥我在说明⼀下Tomcat安装完成后的⽬录有bin------存放启动和关闭的tomcat脚本conf-----包含不同的配置⽂件work----存放jsp编译后产⽣的class⽂件webapp存放应⽤程序的⽬录log-----存放⽇志⽂件lib------存放tomcat所需要的jar⽂件doc-----存放各种Tomcat⽂档通过bin/startup.bat命令运⾏Tomcat服务器(也可以通过⼩圆图标来启动哦)打开htt://localhost:8080查看服务是否启动正常如果出现下图,说明服务器安装成功tomcat7.0 的虚拟⽬录的配置:1.⾸先进⼊Tomcat 7.0conf的⽬录2.然后点击Tomcat 7.0confCatalinalocalhost的⽬录下3.最后创建⼀个虚拟⽬录的名字的xml⽂件如下:名字.xml复制代码代码如下:<Context path="/名字" docBase="D:Tomcat 7.0⽂件夹名" debug="5" reloadable="true" crossContext="true" />虚拟⽬录创建好了。
以后就可以在这个虚拟⽬录下操作了(以上和前⾯版本的虚拟⽬录配置有所不同,请区别对待)如果使⽤软件的话,他们默认的是把⼯程发布到tomcat的webapp⽂件夹下,很不⽅便,⽽且还互相影响(⽐如myEclipse)写⼀个简单的helloworld,感受⼀下jsp:<html><head><title>简单的程序</title></head><body><%="chenhailong,hello world" %></body></html>下⾯是其它⽹友的补充:Tomcat7.0.22在Windows下详细配置过程⼀、JDK1.7安装2、添加系统环境变量,我的电脑->属性->⾼级->环境变量(如果添加的环境变量已经存在,点击“编辑”添加,否则点击“新建”添加)(1)变量名: JAVA_HOME 变量值: D:\Program Files\Java\jdk1.6.0_29(点击“新建”,输⼊变量名、变量值,变量值末不需要分号)(2)变量名: CLASSPATH 变量值: D:\Program Files\Java\jdk1.6.0_29\lib\dt.jar;D:\Program Files\Java\jdk1.6.0_29\lib\tools.jar(“新建”,变量值末不需要分号)(3)变量名: Path 变量值: D:\Program Files\Java\jdk1.6.0_29\bin(“编辑”,变量值使⽤英⽂分号隔开,变量值末不需要分号)3、“开始”->“运⾏”->输⼊cmd,在命令提⽰符中输⼊“java -version”,“java”,“javac”⼏个命令,出现画⾯,说明环境变量配置成功⼆、Tomcat7.0.22安装配置2、添加系统环境变量,我的电脑->属性->⾼级系统设置->环境变量(操作同上)(1)变量名: CATALINA_BASE 变量值: D:\Program Files\apache-tomcat-7.0.22(Tomcat解压到的⽬录)(2)变量名: CATALINA_HOME 变量值: D:\Program Files\apache-tomcat-7.0.22(3)变量名: CATALINA_TMPDIR 变量值: D:\Program Files\apache-tomcat-7.0.22\temp(4)变量名: Path 变量值:D:\Program Files\apache-tomcat-7.0.22\bin。
Tomcat配置文件详解
Tomcat配置⽂件详解打开Tomcat的配置⽬录,我们会发现下⾯的配置⽂件:server.xml:Tomcat的主配置⽂件,包含Service, Connector, Engine, Realm, Valve, Hosts主组件的相关配置信息;web.xml:遵循Servlet规范标准的配置⽂件,⽤于配置servlet,并为所有的Web应⽤程序提供包括MIME映射等默认配置信息;context.xml:所有host的默认配置信息;logging.properties:⽇志相关配置;tomcat-users.xml:Realm认证时⽤到的相关⾓⾊、⽤户和密码等信息;Tomcat⾃带的manager默认情况下会⽤到此⽂件;在Tomcat中添加/删除⽤户,为⽤户指定⾓⾊等将通过编辑此⽂件实现;catalina.policy:Java相关的安全策略配置⽂件,在系统资源级别上提供访问控制的能⼒,以安全模式启动Tomcat会使⽤这个配置catalina.properties:Tomcat内部package的定义及访问相关的控制,也包括对通过类装载器装载的内容的控制;Tomcat在启动时会事先读取此⽂件的相关设置;jaspic-providers.xml:⽤户认证配置⽂件这篇博客就来介绍下这⼏个配置⽂件的作⽤,以及常⽤的配置选项。
server.xml配置server.xml是Tomcat的主配置⽂件,可以对Service, Connector, Engine, Realm, Valve, Hosts等主组件进⾏相关配置。
<!-- port: 接收shutdown指令的端⼝,默认仅允许通过本机访问,默认为8005;shutdown:发往此Server⽤于实现关闭tomcat实例的命令字符串,默认为SHUTDOWN;使⽤⽅式:telnet localhost 8005,输⼊SHUTDOWN即可关闭tomcat如果你不配置这两个属性,Tomcat的这种关闭机制还是会运⾏的。
tomcat中基于jrebel的配置过程
1.拿到jrebel的jar包文件,拿到的文件名称会携带版本号,需要把版本号去掉,保留jrebel.jar 这个名称,放到任何一个拥有访问权限的目录下。
2.本机使用的是tomcat7,为其建立runtime环境,并建立server,在servers标签中,右键新建然后按照指示下一步即可。
3.在servers标签中,双击server的名称,进入server配置界面点击Open launch configuration进入jvm配置页面,如下所示,在参数标签中,添加jvm启动参数,如下所示:基于默认状态下,完整的添加文字为:-Xms1024m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m -javaagent:"F:\jrebel\jrebel.jar" -noverify前一半是调整内存的,后一半是设置jrebel.jar作为代理,其中的冒号之后,是存放的文件地址.设置这个确定之后,要记得在服务器配置页面中,按下Ctrl-S,以保存本服务器配置。
4.在本tomcat服务器之上,添加需要运行的项目:点击Add and Remove 之后,可以选择要发布的项目5.接下来要准备启动了,但是启动之前,为了让jrebel生效,需要把tomcat中自带的auto reload 功能先禁用,和刚才一样,在服务器配置页面,选择左下角的module 小标签进入下一个页面在图示界面中,可以修改发布之后的访问路径,也需要把下面的Auto reloading enabled这个选框去除选择,即可关闭了tomcat中的自动重加载功能。
6.在服务器之上点右键,依次选择clean与start | debug,即可启动本服务器.7.启动时,观察console输出,注意在启动初期,有这样一段,即代表jrebel加载成功了,然后即可正常开发,大部分的重启工作就不需要再做了。
