欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

手工完成java项目(二)——web项目 博客分类: java JavaJarweb项目发布手工完成web项目javac 

程序员文章站 2024-03-21 19:42:46
...

1.建如下目录

  ----testweb
             ----src
                   ----cn
                       ----jun
                           ----servlet
                              ----TestServlet.java
             ----webapps
                      ----index.html
                      ----result.jsp
                      ----WEB-INF 
                            ----classes
                                  ----cn
                                      ----jun
                                          ----servlet
                                             ----TestServlet.class
                            ----lib
                            ----web.xml
             ----lib

 

 

 

 

 

 

  注:src:是存放java原文件的
     webapps:存放要web项目发布时的所有文件
     lib:存放所需的jar包,主要是方便编译(和WEB-INF下的lib是存放项目引用的jar包,但不包括jsp,servlet所需的一些jar包,因为如果他包含的jar包和tomcat中的lib下的jar包重复会报错)
     关于web.xml,result.jsp,index.html,TestServlet.java的具体代码见附件
 
2.编译
  先切换到testweb目录下
  用命令:javac -d webapps/WEB-IN/classes -cp lib/servlet-api.jar;lib/mytest2.jar src/cn/jun/servlet/*.java
     注:  -cp是指java文件所用到的jar包,有多少就以“;”隔开列多少,我这里只有一个java文件只用到了servlet-api.jar和mytest2.jar 两个jar包
 
3.发布
  有三种方式,如下
     第一种:直接复制webapps目录到tomcat根目录下的webapps,并将该webapps文件夹改名testweb,这样就http://127.0.0.1:8080/testweb/可以直接访问
    
     第二种:修改Tomcat\conf\server.xml ,server.xml中的<host></host>直接加入如下配置
        <Context path="/testweb" reloadable="true" docBase="D:\workspace\testweb\webapps" workDir="D:\workspace\testweb\work" >
                <Logger className="org.apache.catalina.logger.SystemOutLogger" verbosity="4" timestamp="true"/>
        </Context>
        其中docBase是指项目所在目录,workDir是指编译的jsp文件存放的目录,当前项目并没有,因此这里可以为空,tomcat会默认存放在tomcat下的\work\Catalina\localhost目录下
    
     第三种: 打成war包,然后放到tomcat根目录下的webapps下,其实这个方法和第一种是一样的,tomcat会在运行的时候将war包解压,不过打成war包后方便发布
         打war包:   先到dos窗口中切换到testweb\webapps目录下,然后命令  jar cvfM testweb.war ./ .
 
 
小结:这两篇文章的目的是加深对java项目的理解,实际操作当然还用IDE工具