`
wh_xia_jun
  • 浏览: 16006 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

关于项目SSH 框架的一点想法

 
阅读更多
1、我们项目中使用spring,主要是使用了其依赖注入,简单的说是为了类的解耦,以提高复用性。但问题是:
我们在公卫平台中写的这些类有复用的地方吗,相反,为此我们引入了一堆第三方的东西,一堆配置文件,我们的公卫平台貌似没那复杂哟;

2、为了使用spring,我们定义了一推接口,接口是用于抽象的,用于多态的目的,我看不出我们程序当中有多少多态的东西;既然无多态,为什么要搞那么多接口呢

3、也许有人会说,用spring结构层次清晰,spring 工厂很强大,但是,这有更为简单的方法例如服务定位、单例的使用、代理的使用可以加以解决,为什么要用spring呢

4、可能有人会说,大家约定都这么做,有个开发约定的问题,我认约定的问题要靠包的命名、类的命名、变量命名规范、注释、代码规范等来加以解决;

5、sping 可以控制类是单例的,但是我们平台项目很多地方没有加入控制,在某些情况下,我们平台运行存在内存溢出的风险;


关于我们项目中struts的应用,
Struts是个MVC结构的东西,
Struts提供丰富的JSP 标签库: Html,Bean,Logic,Template等,这有利于分开表现逻辑和程序逻辑。其初衷是方便美工与开发人员协同工作,在一个页面上完成全部设计,但实际情况是页面几乎都是由开发人员完成,而且提供的标签和struts耦合,这对页面复用可没啥好处,更何况我们项目貌似也没用struts2的标签吧,那这一部分的好处我们用不着;

struts2 的控制器分为数层:
  核心控制器:我们的项目只让它起到一个分发请求的作用,action还的在struts.xml记录,把action写在配置文件当中,其初衷是action可配置,问题是我们项目有这样的需求吗,页面跳转的东西也是类似的。


所谓SSH轻量级框架,对于我们这样的项目而言一点都不轻量级,我们不仅需要维护代码,还需要维护繁琐的xml配置文件,无配置文件而能实现的框架功能的东西还是比较容易设计的
我并不是一味的反对使用SSH框架,SSH在我眼里主要作用是规范开发,我们平台项目,无复杂业务,是对于我们这样的小团队而言从技术经济和可靠性出发完全可以选择更加简洁的框架,早日抛弃SSH框架选择更简洁的技术在对我们这样规模的团队开发是一种比较明智的选择。
 
分享到:
评论

相关推荐

    基于SSH的网上书店管理系统设计与实现毕业设计.docx

    本文档主要介绍了基于SSH的网上书店管理系统的设计与实现毕业设计,涵盖了项目来源、开发背景、开发目标、开发任务等方面的内容,并对相关技术进行了介绍,包括SSH框架、JavaScript、Ajax、CSS等。下面对这些知识点...

    SSH_TEMP小组会议网上交易平台

    SSH TEMP小组会议网上交易平台是一个基于SSH(Struts2、Spring、...通过这个项目,团队成员能深入理解SSH框架的运用,提升项目管理和协同开发的能力,同时也能实践Web应用的全生命周期管理,从需求分析到上线运维。

    基于jsp+ssh在线博客网源码数据库.doc

    根据提供的文件信息,我们可以推断出这是一份关于...综上所述,该设计文档不仅涵盖了JSP+SSH框架的基本概念和技术特点,还深入分析了系统的需求和业务流程,为读者提供了一个全面了解如何开发一个在线博客系统的视角。

    学位论文-—2015年基于ssh的婴幼儿产品销售系统.doc

    **SSH框架详解** 1. **Struts2.0**:Struts2是一个基于MVC(Model-View-Controller)设计模式的Web应用框架,负责处理HTTP请求,实现业务逻辑与视图的解耦。它提供了一种组织应用程序代码的方式,使得开发者可以更...

    基于jsp+ssh的时装原创设计交流网源码数据库论文.doc

    SSH框架则是Java企业级开发中的常用组合,其中Struts2负责控制层,提供MVC模式的支持;Hibernate作为持久层框架,简化了数据库操作;Spring则负责业务逻辑的协调和管理,包括依赖注入和事务处理。通过这些技术的集成...

    高效,小巧的开源JAVA WEB 开发框架-Nutz (源码,开发文档)

    提供 SSH 大部分功能 数据库访问层 -- Nutz.Dao 反转注入支持 -- Nutz.Ioc Mvc 框架 -- Nutz.Mvc Json 解析器 -- Nutz.Json 更多的简化Java语法的函数和类 -- Nutz.Lang 以及 Nutz.Castors 不依赖任何第三方 Jar 包...

    quickstart-docker-git:具有Dockerfile和有效文件夹结构的Boostrap项目

    不推荐使用 该存储库已弃用,大部分已移至 。 本说明仅对<0> 改为检出 quickstart-docker-git 是用于构建和部署应用程序后端的平台。... 将SSH密钥添加到项目控制台:。 创建一个自定义git push微服

    软件工程求职信汇编6篇.docx

    9. 软件开发能力:软件工程专业学生或毕业生需要具备软件开发能力,如Java编程语言、Oracle数据库、JDBC连接数据库、Web编程SSH框架等。 10. 团队合作精神:软件工程专业学生或毕业生需要具备团队合作精神,如参加...

    cxf3.0 spirng 集成笔记

    在旧系统中,使用的是SSH(Spring、Struts、Hibernate)框架,Spring版本为1.2.x。然而,CXF 3.0.2需要Spring 3.2.x或更高版本,因此直接集成会导致不兼容问题。作者尝试后发现无法成功,因为较低版本的Spring不...

    idea-setting:想法配置

    "idea-setting-master"这个压缩包文件名很可能包含了某个项目或教程中关于IntelliJ IDEA配置的源文件。这可能是一个GitHub仓库,包含了用于复原或分享特定IDE设置的文件。当你解压并导入这些设置到你的IDEA时,你...

    个人博客系统资料.docx

    2. **Struts2 + Spring + Hibernate(SSH)框架**:SSH是Java Web开发中的经典组合,用于构建MVC(模型-视图-控制器)架构的应用。Struts2负责处理HTTP请求和控制流程,Spring提供依赖注入和事务管理,Hibernate则...

    vagrant-dotnet-core:这个想法是使用最新的vagrant文​​件来构建基于linux的.net核心的env

    一旦虚拟机启动,我们可以使用 `ssh` 命令连接到虚拟机,然后在其中执行 .NET Core 相关的开发工作。 在 Linux 环境下开发 .NET Core 应用,我们可以利用跨平台的特性,如使用 dotnet CLI(命令行界面)进行项目...

    应届生简历上的自我评价参考.doc

    - Java基础与SSH框架:表示求职者具备编程能力,特别是Java后端开发基础。 - MySQL与JavaScript:掌握数据库管理和前端脚本语言,适合Web开发岗位。 - 学习新知识:求职者有自学能力,能快速适应新技术和新环境。...

    程序员自我评价.docx

    - J2EE开发:熟练使用SSH框架进行Java企业级应用开发。 - 设计模式:了解并能够应用常见的设计模式来优化代码结构。 2. **数据库管理**: - 数据库知识:熟悉数据库的基本原理和技术,能够有效地管理和操作数据...

    (window)web前端建站+工具集,包含开发工具 HBuilderX、解压缩工具 winrar、XMind、Xshell等

    通过绘制思维导图,我们可以清晰地梳理项目结构,组织和表达复杂的想法,提高工作效率。 Xshell则是一款强大的终端模拟器,主要用于SSH、TELNET、RLOGIN和SERIAL等协议的连接。开发者可以通过Xshell远程登录服务器...

    数据库课程设计题目汇总.doc

    学生需要熟悉关系型数据库,如Oracle、SQL Server、MySQL,并运用JSP+Java或.NET等开发语言,结合SSH、SSM等MVC框架构建B/S模式的应用,同时要求在主流浏览器中运行。中间件可选择Tomcat、IIS等。 课程设计报告应...

    数据库课程设计题目汇总范文.docx

    4. **系统架构与开发语言**:常见的系统架构如SSH(Struts、Spring、Hibernate)和SSM(SpringMVC、Spring、MyBatis)是MVC(模型-视图-控制器)模式的实现,用于分层解耦应用。开发语言如JSP+Java或.NET可以与这些...

    java面试题实践收集及答案详解

    - **SSH**代表Spring、Struts、Hibernate三个开源框架,它们经常被一起使用构建Java Web应用程序。 - **MVC**是Model-View-Controller架构模式的一种实现,其中: - **Model**:负责业务逻辑和数据操作。 - **View...

Global site tag (gtag.js) - Google Analytics