Eclipse中创建标准web工程以及标准目录结构说明
最近公司有个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目录中,简化配置难度。
出处:http://www.cnblogs.com/sdjnzqr/
版权:本文版权归作者和博客园共有
转载:欢迎转载,但未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任
Eclipse中创建标准web工程以及标准目录结构说明的更多相关文章
- 在Eclipse中创建Dynamic Web Project具有和MyEclipse中Web Project一样的目录结构
1.在Eclipse中新建Dynamic Web Project 1.1.修改default output folder build\classes修改为:WebRoot\WEB-INF\classe ...
- eclipse 中创建maven web项目
Maven的Eclipse插件m2eclipse在线安装地址 http://m2eclipse.sonatype.org/sites/m2e:我又试了link方式安装也没什么作用,不知怎么回事? 还有 ...
- 8.Eclipse中创建Maven Web项目
第一步: 创建maven webproject 注意以下一步: 第二步: 继承parent 改动pom.xml文件例如以下 <projectxmlns="http://maven ...
- 3.eclipse中 maven打包web工程几种方式
1.右键项目-export 选择war file导出即可 2.第二种:右键项目-RUN AS -maven build..goals填入:clean package 第三种方式:右键项目.选择Debu ...
- JavaWeb学习(三) : 如何在 Eclipse 中创建一个Web 项目并成功运行?
前置条件 : 1.确保已安装 Eclipse.Tomcat 服务器安装包 2.jdk.环境变量都已配置成功. 3.注意在安装 Eclipse 时一定要选择第二个有 Web 项目的进行安装, 不然安装成 ...
- eclipse中创建maven web项目
本文主要说明将maven web项目转成eclipse支持的web项目. 创建一个maven项目设置打包类型为war则其为web项目 结构如下 将mavenweb项目转成eclipse识别的web项目 ...
- eclipse中创建了web项目,src下创建子目录是平级的情况
1.在以下可设置不同的视图 windows->show view菜单 ->点Other...... 然后在搜索框里输入你想要的视图 2.在Project Explorer下创建的包看 ...
- 使用eclipse创建在myeclipse中运行的web工程
今天在跟随慕课网学习java时,遇到课程中老师使用Myeclipse,我用的是eclipse,那么就使用eclipse创建在Myeclipse项目 参考: 如何在Eclipse配置Tomcat服务器 ...
- 使用Eclipse创建Maven Web工程
方法/步骤 1 使用Eclipse创建Maven Web工程 2 找到Maven Project,点击Next 3 勾选上Create a simple project (不使用骨架),Next 4 ...
随机推荐
- JavaScript之点击文字放大
function box(){ document.getElementById("click").style.WebkitTransform="scale(1.2)&qu ...
- OS中常用的调度算法总结 (转)
http://blog.chinaunix.net/uid-25132162-id-361291.html 一.常见的批处理作业调度算法 1.先来先服务调度算法(FCFS):就是按照各个作业进入系统的 ...
- 如何加密android apk
经过了忙碌的一周终于有时间静下来写点东西了,我们继续介绍android apk防止反编译技术的另一种方法.前两篇我们讲了加壳技术(http://my.oschina.net/u/2323218/blo ...
- Mysql中IFNULL与IN操作
Mysql IFNULL操作 项目中用到的,当SQL查询某个字段为空的时候,查询结果中设置其值为默认值.最笨的方法当然是对查询结果进行处理了,遍历查询结果,当为空的时候,设置其值: 代码如下 复制代码 ...
- cocos2d-x一些核心概念截杀
Cocos2d-x中有很多概念,这些概念很多来源于动画.动漫和电影等行业,例如:导演.场景和层等概念,当然也有些有传统的游戏的概念.Cocos2d-x中核心概念:导演, 场景,层,节点,精灵,菜单动作 ...
- 分栏控制器和导航栏目tabBarItem,UINavigationController
//// AppDelegate.m// TabBarControllerDemo//// Created by qianfeng on 15/9/22.// Copyright (c) 20 ...
- jqure获取单选按钮的值(比如性别)
使用jquery获取radio的值,最重要的是掌握jquery选择器的使用,在一个表单中我们通常是要获取被选中的那个radio项的值,所以要加checked来筛选,比如有以下的一些radio项: 1. ...
- vs2010工具栏 不显示dx控件
进入命令提示符 跳转到Dev控件安装目录,如目录D:\Program Files (x86)\DevExpress 2010.1\Components\Toolss下, 然后执行命令:ToolboxC ...
- UI1_UINavigationController
// // FourthViewController.h // UI1_UINavigationController // // Created by zhangxueming on 15/7/6. ...
- jquery的 $(function(){ }) = $(document).ready(function(){ }) ,及页面的加载顺序
document.ready和onload的区别:一.JavaScript文档加载完成事件页面加载完成有两种事件一是ready,表示文档结构已经加载完成(不包含图片等非文字媒体文件) 二.是onloa ...