最近公司有个Web项目,项目结构如下:

虽然运行没有错,但是实在是别扭,标准的web应用一般不采用这种结构:

因此总结一下:

    1.如何在Eclipse中创建一个标准的Web应用。

    2.标准Web应用推荐的目录结构。

 

第一:如何在Eclipse中创建一个标准的web应用:(假设项目名称为:myweb)

1)

PS:projectname一般全小写字母,最好不要出现数字和大写字母。

2)

PS:default output flolder要根据project_name修改。

3)

注意:context directory改成系统名。

4)点击finish后,生成的目录结构如下:

 

 

    2.标准Web应用推荐的目录结构。(SpringMVC+mybatis+log4j的基础目录)

1)web端

  • css:用来存放系统共用的css文件。
  • images:用来存放系统共用的图片。
  • js:用来存放系统共用的js文件。
  • META-INF:用来存放war包元数据信息。
  • pages:用来存放业务系统系统的页面文件,比如:html文件,jsp文件,或者JS文件(ExtJS系列)。

       -common:用来存放一些非业务页面,比如top,bottom等。

       -model1:业务模块名称。

  • plugins:用来存放第三方插件,可以包含不同的js,swf等。
  • themes:用来存放不同的主题,主题目录中可以包含对应的js,css,image等。
  • WEB-INF:系统自生成。

        -classes:存放java文件的编译文件

        -lib:存放lib。

        -web.xml:系统自生成,配置web的基础属性。

  • index.html:首页页面
  • login.html:登陆页面

1)服务端

说明:

  首先:cn(com).【companyname】.【projectName】

      1.cn(com):按照公司规则选择。

      2.companyname:一般来说是公司英文简称,如果有二级部门,可以增加一层。

      3.projectName:当前项目的项目名称

 

  • cn.company.project:
    • common:用来存放一些共用文件,比如GlobalNames.java等
    •   entity:用来存放mybatis实体声明,如果很多,可以按照子系统子模块继续分层。
    • mapper:用来存放mybatisMapper类声明,如果很多,可以按照子系统子模块继续分层。
    •   model1:业务模块

          -controller: controller类

          -service:service类

    •    util:util类。

 

  • sql-mappers:用来存放mybatis涉及的Mapper的xml文件,如果很多,可以按照子系统子模块继续分层。

         -*-sql-mapper.xml

  • applicationContext.xml:Spring的主配置文件,比如配置数据库,事务等
  • jdbc.propertites:配置jdbc属性
  • log4j.propertites:配置log4j
  • mybatisConfig.xml:配置mybatis的主文件
  • 【project_name】-context.xml:配置业务bean,比如 annotaion等配置

 

 

特殊说明:

1. entity和mapper作为单独的目录而不是在模块目录中的原因:

       一般小项目中的表不会很多,而且基本上会在不同的模块中出现,所以不建议打散到各个模块中。

2.controller目录和service目录分离的原因:

     controller层:用来编写代码控制层的逻辑,每个方法对应前台一个请求。

     Service层:

        a.真正的业务层逻辑,颗粒度小,会出现共用模块,实现代码共用。

        b.在Service类中控制事务和sql。

        c.便于实现客户化代码。

3.所有的配置文件放到Src目录中,简化配置难度。

作者:sdjnzqr
出处:http://www.cnblogs.com/sdjnzqr/
版权:本文版权归作者和博客园共有
转载:欢迎转载,但未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任

Eclipse中创建标准web工程以及标准目录结构说明的更多相关文章

  1. 在Eclipse中创建Dynamic Web Project具有和MyEclipse中Web Project一样的目录结构

    1.在Eclipse中新建Dynamic Web Project 1.1.修改default output folder build\classes修改为:WebRoot\WEB-INF\classe ...

  2. eclipse 中创建maven web项目

    Maven的Eclipse插件m2eclipse在线安装地址 http://m2eclipse.sonatype.org/sites/m2e:我又试了link方式安装也没什么作用,不知怎么回事? 还有 ...

  3. 8.Eclipse中创建Maven Web项目

     第一步: 创建maven webproject 注意以下一步: 第二步: 继承parent 改动pom.xml文件例如以下 <projectxmlns="http://maven ...

  4. 3.eclipse中 maven打包web工程几种方式

    1.右键项目-export 选择war file导出即可 2.第二种:右键项目-RUN AS -maven build..goals填入:clean package 第三种方式:右键项目.选择Debu ...

  5. JavaWeb学习(三) : 如何在 Eclipse 中创建一个Web 项目并成功运行?

    前置条件 : 1.确保已安装 Eclipse.Tomcat 服务器安装包 2.jdk.环境变量都已配置成功. 3.注意在安装 Eclipse 时一定要选择第二个有 Web 项目的进行安装, 不然安装成 ...

  6. eclipse中创建maven web项目

    本文主要说明将maven web项目转成eclipse支持的web项目. 创建一个maven项目设置打包类型为war则其为web项目 结构如下 将mavenweb项目转成eclipse识别的web项目 ...

  7. eclipse中创建了web项目,src下创建子目录是平级的情况

    1.在以下可设置不同的视图 windows->show view菜单 ->点Other......    然后在搜索框里输入你想要的视图 2.在Project Explorer下创建的包看 ...

  8. 使用eclipse创建在myeclipse中运行的web工程

    今天在跟随慕课网学习java时,遇到课程中老师使用Myeclipse,我用的是eclipse,那么就使用eclipse创建在Myeclipse项目 参考: 如何在Eclipse配置Tomcat服务器 ...

  9. 使用Eclipse创建Maven Web工程

    方法/步骤 1 使用Eclipse创建Maven Web工程 2 找到Maven Project,点击Next 3 勾选上Create a simple project (不使用骨架),Next 4 ...

随机推荐

  1. PHP 创建重用数据库连接函数 mysqli与PDO

    代码如下: 有兴趣的可以测试下 摘自于某书 <? php public function dbConnect( $usertype, $connectionType = 'mysqli' ) { ...

  2. java 获取数组(二维数组)长度实例程序

    我们可能知道 js有个length函数,java也有啊length函数 例 如果数组是data[],则data.length 代码如下 复制代码 byte[] phone =new byte[81]; ...

  3. DEEPIN下搭建FTP服务器步骤(备忘录)

    1.打开终端,执行命令[apt-get install vsftpd],安装VSFTPD 2.安装完成后,修改以下配置信息(否则文件无法传输) [echo 'listen=YES'>>/e ...

  4. [javascript|基本概念|Boolean]学习笔记

    Boolean类型的值:true/false ECMAScripe所有类型的值都有与这Boolean值等价的值 将一个值转换为其对应的Boolean值,可调用转型函数Boolean(),返回的值取决于 ...

  5. js实现移动端无限加载分页

    原理:当滚动条到达底部时,执行下一页内容. 判断条件需要理解三个概念:    1.scrollHeight 真实内容的高度    2.clientHeight 视窗的高度,即在浏览器中所能看到的内容的 ...

  6. 了解GDAL的图像处理/Python

    GDAL是一个操作各种栅格地理数据格式的库.包括读取.写入.转换.处理各种栅格数据格式(有些特定的格式对一些操作如写入等不支持).它使用了一个单一的抽象数据模型就支持了大多数的栅格数据(GIS对栅格, ...

  7. Ubuntu下第一个C程序的成功运行

    对于每个新手来说,进入Ubuntu最想做的事莫过于在终端(Terminal)里运行自己的第一个C/C++程序"hello.c/hello.cpp"了. 很多语言书籍都是默认搭载好运 ...

  8. 使用JDBC向数据库中插入一条数据

    原谅我是初学者,这个方法写的很烂,以后不会改进,谢谢 /** * 通过JDBC向数据库中插入一条数据 1.Statement 用于执行SQL语句的对象 1.1 通过Connection 的 * cre ...

  9. 理解 pkg-config 工具

    引用了别人的文章:http://www.chenjunlu.com/2011/03/understanding-pkg-config-tool/ 你在 Unix 或 Linux 下开发过软件吗?写完一 ...

  10. C# 语言如何获取json格式的数据,不用javascript用c#实现。。。

    {'state' : 1,'data':{'list':[{'id': 123, 'name': '诸葛天邪','level': 10,'country': 1,}]}} 比如我要获取里面的 id 该 ...