模块型 - Web工程
提示
本篇采用Eclipse作为IDE工具阐述相关操作.
注意左图,是选择Package Explorer展示项目,而不是Project Explorer.
地址在Eclipse -> Window -> Show View -> Other... -> Java -> Package Explorer
1 . 应用场景
父工程属性
当需要创建拥有多个子工程(存在modules)的Web应用Maven工程时使用,即模块型-Web工程。
2 . 属性设置
父工程属性
工程名称:写项目的中文名称
artifactId:写项目的英文名称
groupIdcom.公司简称.项目简称
version:可以选择SNAPSHOTRELEASE
基本目录:是自动生成的,指工程的目录路径
最后,选择JDKServlet版本和编码类型
子工程属性
可以选择添加各类子工程。其中,CommonApi子工程是比较常用的 子工程。Api子工程里主要写Dubbo接口和接口中所用到的Java 实体。RpcService子工程是,不推荐使用的。原因是,工程结构过于臃肿,可以把这一部分的代码 整合到Manager子工程里。这样既可以减少很多冗余的代码,也可以使工程结构更加紧凑合理。
配置开源框架
在生成工程之前,可以直接选择各类开源框架,配置完整,相当省事!enjoy~
开源框架包括,业界主流的SpringMyBatisDubboTask等。
模板引擎支持JSPVelocityFreemarker
数据库支持MySQLOracle
当然,用户可以根据项目需求,在原有配置的基础上,进行修改或添加。
3 . 配置说明
简介
Maven是业界最主流的构建工具,没有之一。下面,主要介绍工程的配置部分。 fwjava采用的配置,主要是综合参考了在BATJ级互联网企业中, 普遍采用的主流配置模式和技术框架,因此具备一定的推广价值。Spring MVC + MyBatis + Dubbo 应该是大型互联网企业中最普遍的技术框架了。
pom.xml
如图所示,打开父工程的pom.xml文件。在文件底部有2个<profile>标签: developproduct,分别代表开发环境和生产环境。 其中最重要的是数据库配置。下载工程后,填写自己的数据库信息,随后编译、刷新 Maven工程,就可以启动工程了。
web.xml
几乎所有重要的配置,都是从web.xml文件开始的。 如图所示,在文件中主要配置Springlog4j
Spring配置 - 入口
Spring的核心配置文件是
spring-config.xml
位置在src/main/resources目录下。
该配置文件主要由2部分组成:系统级配置和应用级配置。
系统级配置-主要是最基础的配置部分,如数据源配置、mybatis配置等。
应用级配置-主要是指开发人员可以自由添加的配置部分。
Spring - 系统级配置
图标1:
spring-config-context.xml - 基本配置
spring-config-datasource.xml - 数据源配置
spring-config-mybatis.xml - mybatis配置
spring-config-velocity.xml - velocity配置
spring-config-freemarker.xml - freemarker配置
spring-config-jsp.xml - jsp配置
图标2:
SpringMVC扫描目录,在根pom.xml文件。
Spring - 应用级配置 (含 Dubbo配置 和 Task定时任务配置)
spring-develop-application.xml - 开发人员应用
图标2:系统初始化,图标3:资源文件配置
spring-develop-dubbo-config.xml - 注册Dubbo服务的Zookeeper地址,如)IP地址:端口号
spring-develop-dubbo-reference.xml - 调用服务
示例中,registry属性值对应注册地址的id
spring-develop-dubbo-service.xml - 发布服务
示例中,registry属性值对应注册地址的id
spring-develop-task.xml - 定时任务配置
MyBatis配置
图标1:mybatis的配置在web工程的
spring-config-mybatis.xml
图标2:mybatis的扫描路径在,根pom文件的最上部配置。
图标3:dao工程的src/main/resources目录下,会生成2个目录: modulestables
modules:根据不同页面的开发需要开发人员自己创建mybatisxml文件放在该目录下。
tables:根据数据库表,在本网站自动生成的mybatisxml文件,放在该目录下。
日志
日志文件的生成路径:
${Tomcat}目录/logs/${工程名称}.log
是按照日期切割,每天生成日志文件。
日志设置:
在根pom文件的profile节点中,
<logger.file>:日志文件的生成路径
<logger.level>DEBUG时可以打印出mybatisSQL语句。 正式发布时,应该改为INFO
api - jar包工程
使用Dubbo时,肯定需要生成api工程。
工程里有2个目录:beanservice
service:放置接口文件。
bean:在接口文件中使用的Java实体文件,放在该目录下。
【特殊之处】:
编译后,在target目录下会生成2个jar包文件。 上传到Maven私服时,应该把带源码的-sources.jar包一起上传。 这样,其他调用者在使用时,就可以直接点开接口,了解参数及相关说明,很是方便、专业。
工程 - 发布包
图标1:
开发完成后,最终发布在服务器里的工程,在web工程的target目录下。
图标2:
classes目录下,是各类资源和配置文件。注意,这里没有Java.class文件。
图标3:
lib目录下,是打完包的工程包。注意, 这里web工程的Java代码也被打成java包,实现与配置文件的完美分离,这很重要。