企业级Java应用在框架的基础上构建可以大幅缩短开发周期,模块化分工,层次分明人员目的性强,所以当前流行Struts/Struts2,Spring和Hibernate/IBatis框架的整合,他们在一起能很好完成一个完整的工作流程,对于中小型应用,只需经过框架整合,基础封装即可满足开发要求。
本人接触框架2年时间,对Strtus2,Spring有所了解,应用较多,基于二者构建的开发框架历经中小项目考验,安全而稳定,现在介绍一种框架的构建的方式。为什么不用Hibernate是基于快速开发的考虑,Hibernate中OR映射的设置和数据库访问都需要经过专业的设计,不如直接操纵SQL语句直观,也不利于SQL语句优化,那么利用Spring的JdbcTemplate就能满足需求,而且SQL语句的后期维护也是非常方便的。在开发成员水平不很一致时提供了很大的伸缩空间。
开发工具是Eclipse3.5.1(包含WTP)+Tomcat6.0.20
项目目录结构:

src目录装java源文件;resources目录装XML和属性配置文件;二者的编译路径都指向WEB-INF/classes下,只要二者下的包结构相同,那么类和配置文件就可以在同一个目录下,这样的配置就是为了java文件和配置文件的编辑时分离而发布时结合,方便直观。
lib目录是放置第三方类库,比如JUnit等,项目开发中还需要servlet-api,也应该放到这里,因为Tomcat本身已经支持servlet,只是编码时没有这个类库,所以他不是发布必须的,而是编码时要用的,也可以打入第三方类库中。
Webapp目录的作用这里不解释了,如果不清楚的话,您不用继续往下看了。本文不适合您来阅读。
Webapp目录结构如下:

common目录放置基本FreeMarker配置文件和抽取的基础宏
components放置前端需要应用的组件,比如dTree,fckEditor等资源
css目录放置项目所需的样式表文件
images目录放置项目所需的图片资源文件
js目录放置项目中的JavaScript文件
manage目录是供测试使用的后台管理目录
WEB-INF/lib是项目运行所需的类库文件
struts-tags.tld单独放置此处是为了在FreeMakrer中使用Struts2的标签库
web.xml的作用就不解释了
index.html是项目的入口文件,包含一个转向的地址
login_view.ftl是项目的主页文件,是经过转向得到的,因为Struts2不能再直接访问FreeMarker的物理文件了,就必须跳转一下,当然这个掉转动作里可以安排一些操作。
src目录结构如下:

项目本身的ftl解析不直接使用FreeMaker提供的解析器,而是手工设置的一个。Json组件也是手工设置的。就有了org开头的包
Pi包下就是项目的应用包和核心包。
app/action下是Struts2的Action文件,负责流程控制
app/service下是抽象出的service,可以根据个人习惯进行代码书写,这里放置的是SQL语句和直接SQL语句的方法。
应用包的层次不是很多,完全可以满足中小应用的需求,当然您也可以根据自身的需要进行改造。这里仅基于最简单的方式。
core/bean下是Bean的管理器,它负责从Spring上下文中按照名称返回所需的bean
core/common下是一些通用的配置,比如登录拦截器,异常拦截器,基础Action和Service定义等。
core/util下是自定义的工具类了。没什么多说的。
Constants.java是放置系统所需的一些常量配置。
resources目录结构如下:

这些都是见名知意的配置,等到后面再详细解释。
整个项目的结构就说完了,后续将从web.xml入手,开始逐一解释这套开发框架。
同时欢迎大家给出宝贵意见和经验。所有内容均为本人原创手写,谢绝转载,谢谢!
(未完待续)

- 大小: 18.1 KB

- 大小: 3.6 KB

- 大小: 9 KB

- 大小: 11.4 KB
分享到:
相关推荐
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
从ImageNet2012分类数据集中选取的100张图片,用于对常见分类模型进行量化。 数据集介绍 数据背景: 静态离线量化方法需要少量校准数据,这个数据集用于量化演示示例。 数据来源: 基于Imagenet2012测试数据集,取前100张图片和标签作为本数据集。
内容概要:本文详细介绍了计算机的发展历程及其核心组成部分,从早期计算工具的演进到现代计算机的诞生,重点探讨了冯·诺依曼体系结构的重要性。文章回顾了从机械计算器、ENIAC到微处理器的科技进步,阐述了计算机五大组成部分(运算器、控制器、存储器、输入设备、输出设备)的功能与协作机制。同时,文中还讨论了操作系统、编程语言、数据库管理系统等软件层面的内容,以及量子计算和神经形态计算等前沿技术对未来计算机发展的影响。; 适合人群:计算机专业学生、计算机爱好者及对计算机技术感兴趣的读者。; 使用场景及目标:①帮助读者理解计算机硬件的基本组成和工作原理;②解释软件与硬件之间的协同关系;③介绍量子计算和神经形态计算等新兴技术的发展趋势及挑战。; 其他说明:掌握计算机组成原理有助于读者深入了解计算机系统的工作机制,培养硬件思维和系统思维,为后续学习操作系统、编译原理、计算机网络等课程打下坚实基础。同时,对于广大计算机爱好者而言,了解计算机组成原理可以让他们更好地理解计算机的运行机制,在使用计算机的过程中更加得心应手。
中国移动2024年6G通感算智融合技术体系白皮书1.053页.pdf
文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!
通信工程分包合同.docx
基于Qt+C++实现的物联网景区地质灾害监测系统+源码+项目文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档 本项目利用Zigbee协议搭建了专属物联网,搭建了以Cortex-A8为主核的本地网关,租用阿里云组建系统服务器,并建立了相关网站。监测中心站通过客户端监控易发灾害点数据,在灾害爆发前做好预防工作;普通用户可以通过网站查看各项数据。 基于Qt+C++实现的物联网景区地质灾害监测系统+源码+项目文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档 本项目利用Zigbee协议搭建了专属物联网,搭建了以Cortex-A8为主核的本地网关,租用阿里云组建系统服务器,并建立了相关网站。监测中心站通过客户端监控易发灾害点数据,在灾害爆发前做好预防工作;普通用户可以通过网站查看各项数据
CNC_控制器_STM32_开源项目
世邦魏理仕:2022年北京房地产市场回顾与2023年展望
科学发展观与建筑企业管理论文.docx
爱普生L130
基于javaScript+Springboot+Vue实现的校园社团信息管理系统+源码+演示视频+项目文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档 园社团信息管理系统管理员功能有个人中心,学生管理,社长管理,社团分类管理,社团信息管理,加入社团管理,社团成员管理,社团活动管理,活动报名管理,系统管理等。社长添加社团,管理员审核社团,学生加入社团,社长审核社团。因而具有一定的实用性。 本站是一个B/S模式系统,采用Spring Boot框架,MYSQL数据库设计开发,充分保证系统的稳定性。系统具有界面清晰、操作简单,功能齐全的特点,使得校园社团信息管理系统管理工作系统化、规范化。本系统的使用使管理人员从繁重的工作中解脱出来,实现无纸化办公,能够有效的提高校园社团信息管理系统管理效率。
apk文件
JDK1.7及之前HashMap的put方法图解
文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!
文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!
Epson_L301303.zip
ISO8583报文协议讲解.ppt
本书旨在教授读者如何使用Apache CXF和Axis2开发Web服务,并涵盖了相关的标准和技术。作者通过逐步指导的方式,结合图表和实际代码,详细讲解了设计、实现和测试Web服务的过程。内容包括使用标准API与Apache CXF 2.2.x和Axis2 1.5.x的交互、利用缓存创建RESTful服务、使用Rampart加密SOAP消息、发送用户认证信息、利用MTOM处理二进制文件以及单元测试Web服务等。本书适合有一定Java基础,希望学习Java Web服务开发的读者。