关于以Spring3.0 MVC进行项目开发的疑问

问题描述

该项目是一个行业门户,使用Java技术开发。该项目从整体角度考虑,主要有两个关注点,一个是MVC,另一个是数据持久化。原计划是使用Struts1 + Spring3 + Hibernate3来设计,但Struts1太过古老,已经N久不更新了,Spring3也几乎放弃了对Struts1的支持,org.springframework.web.struts-3.0.5.RELEASE.jar里所有的类都被@Deprecated了。因此考虑Struts2,但是Struts2问题多多,从性能角度和安全角度考虑,又被领导排除了。经过仔细考虑,决定使用Spring3.0的MVC。然后Hibernate3也替换掉,因为团队里的开发人员对Hibernate掌握的情况不太乐观,因此替换成Spring JDBC,这样就成了Spring的一站式解决方案了。经过2天的资料搜索,现有如下问题:1、是否有人使用这种Spring MVC + Spring JDBC方案进行项目开发?因为我从来没有使用过这种组合进行开发,所以希望大家能提供一些经验。2、Spring JDBC的学习门槛多高?短时间内能否让团队成员快速掌握?3、除了使用Spring注解的方式实现表单验证功能,还有其它的方案吗?4、全注解式(without xml)开发,对于以后的维护是否会造成不良影响?比如把请求路径直接写在Spring的Controller类中,这样请求路径都分散到了一堆堆的类中,找起来很麻烦,尤其是对于将来新加入的开发人员。5、本项目的权限控制很啰嗦,不仅对人进行权限设定,还需要对页面元素或数据进行权限设定,所以,如何进行权限系统的设计才能满足要求?

解决方案

如果团队里没有人对Hibernate特别了解,还是放弃hibernate使用springjdbc吧hibernate的门槛还是有的。。。springjdcb跟操作普通sql差不多,不需要了解太多就能上手了 只是用过hibernate,并真正做过一两个项目的人才会觉得hibernate的好处还是不少的 ,对于没用过的人,可能天天都在骂hibernate怎么这样,什么什么都不能实现 一般的验证前端,后端都是需要的,前端js,后端就根据你使用的框架看着用了,一般的mvc框架都会提供验证的注解+xml结合使用,各自的优点发挥出来权限现在用得比较多的应该就是sprinsecurity,不仅可以控制到页面的元素,还能通过切面控制到类的方法执行,只是需要你发时间学习
解决方案二:
我们一直用spring mvc + spring jdbc 觉得hibernate太重(或许是不太熟) 但是一个orm还是能给程序带来不少灵活性 spring jdbc 模板式方法 给你做了不少事 很快能上手 请求路径写到controller中 找起来一点不麻烦 约定一下就行了 注解都有点侵入性 但是很简介 spring3 的rest风格更简洁 权限控制和spring mvc没啥关系 原来怎样还是怎样 呵呵
解决方案三:
1. 用过Spring MVC + Spring JDBC。但是很怀念Hibernate。1.1 Struts和SpringMVC都用过。Spring MVC比Struts简练得多。2. 我想那些用惯了(无Spring的)JDBC的人,看到Spring JDBC会很高兴可以摆脱一堆Boilerplate。但是最后还是觉得一个ORM(比如Hibernate)是有好处的。3. 用JavaScript验证表单。4. 注解不总是给力,还是XML好。注解会成为代码的一部分,有侵犯性。而且,编译以后就不能改了。XML还能充当配置文件的作用。5. Spring Security试试看。可以和spring集成,但是不会阻止你实现自己的访问控制机制,侵入性不算高。

时间: 2024-11-01 23:05:44

关于以Spring3.0 MVC进行项目开发的疑问的相关文章

求《精通ASP.NET 2.0+SQL 2000 项目开发》电子版或课件

问题描述 求<精通ASP.NET2.0+SQL2000项目开发>电子版或课件,有第三章的内容就行,谢谢! 解决方案 解决方案二:想法不错,还是去买吧网上购买,比较便宜

各位大大,谁能帮我看下我这个spring3.0 和 mybatis整合出了什么问题呀,mybatis总是行不成功,完整项目我已经放在附件中了

问题描述 附件是我的项目,可以直接在eclipse中部署运行,用的mysql数据库,只需建一个test数据库就可以,建表语句在test.rar附件中,执行的service url是:http://localhost:8080/springTest/lyang/getAll.do每次一执行就报:java.lang.NullPointerExceptionat com.lyang.springTest.daoImpl.IPeopleDao.getAllPeople(IPeopleDao.java:1

059_《Delphi7.0+Rose项目开发实践》

<Delphi7.0+Rose项目开发实践> Delphi 教程 系列书籍 (059) <Delphi7.0+Rose项目开发实践> 网友(邦)整理 EMail: shuaihj@163.com 下载地址: Pdf 作者: 吕伟臣 周涛 丛书名: 程序员项目开发实例系列 出版社:科学出版社 ISBN:7030155734 上架时间:2005-6-28 出版日期:2005 年6月 开本:16开 页码:392 版次:1-1 内容简介 本书以delphi和rose软件结合的方式来阐述开发

Spring 2.5 jar 所有开发包及完整文档及项目开发实例

Spring 2.5 jar 所有开发包及完整文档及项目开发实例  spring jar 包详解spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了 spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到spring-mock.jar来进行辅助测试,正式应用系统中是用不得这些类的.  除了spring.jar文件,Spring还包括有其它13个独立的jar包,各自包含着对应的Spring组件,用户可以根据自己的需要来选择组

“.NET研究”专访微软MVP衣明志:走进ASP.NET MVC 2框架开发

日前微软已经发布ASP.NET MVC 2框架RC版,究竟这次RC版本的发布对于WEB开发者带来怎样的改变?以及未来ASP.NET MVC 2正式版还会有哪些改进?带着这样的问题,我们51CTO记者彭凡专门采访了微软MVP衣明志老师.ASP.NET MVC是微软官方提供的MVC模式编写ASP.NET WEB应用程序的一个框架. MVP专访人物介绍 衣明志,蝉联五届微软MVP,烟台.NET俱乐部主席,现主要从事.NET平台下的Web应用开发.解决方案.构架设计及技术培训等工作.   照片居中者为衣

专访微软MVP衣明志:走进ASP.NET MVC 2框架开发

日前微软已经发布ASP.NET MVC 2框架RC版,究竟这次RC版本的发布对于WEB开发者带来怎样的改变?以及未来ASP.NET MVC 2正式版还会有哪些改进?带着这样的问题,我们51CTO记者彭凡专门采访了微软MVP衣明志老师.ASP.NET MVC是微软官方提供的MVC模式编写ASP.NET WEB应用程序的一个框架. MVP专访人物介绍 衣明志,蝉联五届微软MVP,烟台.NET俱乐部主席,现主要从事.NET平台下的Web应用开发.解决方案.构架设计及技术培训等工作. 照片居中者为衣明志

项目开发经验-ASP.NET项目开发中的异常处理

前言:异常的处理在项目开发中是很有必要的,异常的处理不仅仅只是try..catch..finally就完事了的.异常处理绝对可以称开发中的重要组成部分.必须正确的面对异常,因为即使是最能干的开发人员,也要面对这个问题 .... 我们不知道客户是怎么样使用我们开发的软件的,所以我们必须处理这样的情况:如果系统不按照我们的设计时所想的运行,我们改怎么办? 下面我们就来具体的介绍在ASP.NET项目开发中的异常的处理方式,希望看完后,大家可以回答上面的问题. 本篇的话题如下: 应用程序级别异常处理的错

Docker 在 PHP 项目开发环境中的应用

环境部署是所有团队都必须面对的问题,随着系统越来越大,依赖的服务也越来越多,比如我们目前的一个项目就会用到: Web服务器:Nginx Web程序:PHP + Node 数据库:MySQL 搜索引擎:ElasticSearch 队列服务:Gearman 缓存服务:Redis + Memcache 前端构建工具:npm + bower + gulp PHP CLI工具:Composer + PHPUnit 因此团队的开发环境部署随之暴露出若干问题: 依赖服务很多,本地搭建一套环境成本越来越高,初级

企业IT项目开发之七宗罪(下篇)

即使没有翅膀,心......也要飞翔! 在新年前一天预祝大家新年好,在新的一年里工作顺利,身体健康. 前一阵公司给我下达了任务,一直在忙着打造面向SAAS的企业级微信平台,彻底实现零代码配置,小小一个微信,当面向企业级而且是SAAS时,呵呵,还真的有许多需要注意的地方,非常感谢公司内最强的业务架构师我们的大姐设计出来这么优秀的一款全动态微信业务.所以写完了中篇,一直没时间来得及写下篇. 下篇的开头,大家也看到了标题:即使没有翅膀,心也要飞翔!!! 为什么提这个标题呢?企业IT项目开发之七宗罪上.