- 浏览: 821989 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (488)
- struts1 (4)
- spring (13)
- extjs (36)
- mysql (3)
- sqlserver (2)
- oracle (37)
- 杂谈 (11)
- 面试相关 (35)
- Java基础知识总结 (5)
- Java重要知识点 线程和io流知识点 (6)
- 服务器相关 (1)
- 生活 (1)
- jsp (7)
- servlet (2)
- junit (3)
- struts2 (9)
- 开发必备 (4)
- 使用开发工具总结的知识 (4)
- ibatis (12)
- ajax (2)
- dwr (2)
- jquery (1)
- 设计模式 (4)
- Lucene的学习 (5)
- 经验总结 (19)
- mysql全文搜索相关 (7)
- hibernate (33)
- Sphinx (1)
- log4j的总结 (1)
- 敏捷开发 (9)
- 持续集成 (15)
- UML使用总结 (1)
- Scrum (1)
- OO(面向对象编程) (1)
- struts1和struts2总结 (1)
- 数据库加密 (1)
- 多线程和Socket编程 (6)
- PowerDesigner (2)
- 权限相关 (1)
- ant应用总结 (4)
- 面试必知知识点总结 (6)
- io流与nio流总结 面试相关 (1)
- 敏捷管理工具的使用 (7)
- hsqldb相关 (1)
- svn源码相关 (2)
- debug调试技巧总结 (1)
- hibernate和ibatis对比相关 (6)
- eclipse mylyn 插件的使用总结 (2)
- fisheye使用总结 (2)
- java泛型总结 (1)
- ssh整合总结 (10)
- SpringSide的学习总结 (1)
- JPA学习总结 (2)
- RoR 总结 (2)
- 模型驱动 总结 (1)
- Oracle SQL优化技巧 (4)
- 数据库相关资料 (1)
- oracle练习相关 (4)
- PowerDesigner 使用总结 (2)
- Struts实现国际化相关 (2)
- 权限框架 Spring Security (1)
- freemarker使用总结 (1)
- jsp servlet总结相关 (3)
- Java NIO总结 (1)
- 自己学习必须 (3)
- 蝴蝶容器相关 (2)
- eclipse插件的使用 (1)
- myeclipse的使用 (1)
- flex相关 (1)
- javaeye重生后总结的知识点 (2)
- 公司学习总结 (3)
- JAXB 相关 (1)
- ECSide (1)
- EdoJs 企业ajax框架 (1)
- RSA加密算法 (1)
- jbpm相关 (1)
- JMF原理 (1)
- MyEclipse使用总结 (1)
- Funsion Charts 相关总结 (3)
- 常用知识2011 (2)
- Flex与Java整合 (1)
- IBM WebSphere相关 (1)
- jQuery使用技巧 (2)
- 2011年面试相关知识点总结 (2)
- sqlserver开发相关 (8)
- eclipse 打jar相关 (2)
- Oracle/Mysql/SqlServer比较 (1)
- WebService Axis1.4开发相关 (4)
- 进制数的转换 总结 (1)
- WebService Axis2.0开发相关 (0)
- iteye Struts2 Spring Hibernate整合相关 (3)
- iteye osgi资料相关总结 (1)
- iteye ifos相关相关 (1)
- iteye 国际化相关 (1)
- iteye Hibernate缓存机制 (4)
- iteye Struts2 总结 (1)
- iteye Struts标签总结 (0)
- iteye web配置文件大全 (6)
- iteye Efs 框架总结 (1)
- iteye sql优化 (2)
- iteye 大数据量高并发的数据库优化 (1)
- iteye 开发相关 (1)
- iteye s1sh 和 s2sh整合中的问题以及解决 (1)
- iteye s1sh整合实例 (1)
- iteye s2sh整合实例 (1)
- iteye 面试相关 基础篇 (1)
- iteye Android相关 (1)
- iteye 面试相关 Web篇 (1)
- iteye Sql Server相关 (0)
- iteye struts1与struts2比较 (1)
- iteye jquery 和Struts2 (0)
- iteye struts2与其他插件整合 (0)
- iteye jquery 开发相关 (1)
- iteye eclipse结合spket(Ext,Jquery)开发相关 (0)
- iteye myeclipse 使用技巧相关 (0)
- iteye Memcached 缓存系统相关 (0)
- iteye 常用软件相关 (0)
- iteye 最新技术预览 AjaxSwing (0)
- iteye struts上传下载相关 (0)
- iteye 新技术相关 (0)
- test (0)
- iteye 开发Java游戏相关 (0)
- iteye Java反编译 (0)
- iteye XML解析相关 (0)
- iteye 压缩ZIP相关 (0)
- iteye 面试相关 (0)
- iteye Android开发相关 (4)
- csdn (0)
- e-inoc (0)
- iteye http错误码对应说明 (0)
- iteye 面试扩展知识点 (0)
- iteye oracle面试相关 存储过程,触发器,游标等 (0)
- iteye english study (0)
- iteye starflow工作流引擎 (0)
- iteye IBM WebSphere Application Server Toolkit使用相关 (0)
- iteye spring3 (0)
- iteye mybatis (0)
- iteye js技巧总结 (0)
- iteye SEO优化相关 (2)
- iteye QUI网页界面集成框架 (1)
- iteye AjaxAnywhere (1)
- iteye Nutz相关 (1)
- iteye ibatis技巧 (0)
- iteye dwz (0)
- 128个ajax/javascript框架 (0)
- iteye 2012 Java Swing教程 (1)
- iteye 码头集装箱相关 (1)
- iteye swing (2)
- 兼职工作 (0)
- 2012 新总结的面试相关知识点 常用知识点 (1)
- 淘宝网店相关 (0)
- oracle 常用函数 2012新总结 (1)
- 我的时尚潮流屋 (0)
- 2012 年 面试新总结知识 (1)
- 技巧 (1)
- 2013总结 (1)
- 2015工作相关 (3)
- springmvc (5)
- EasyPR-Java (1)
- java (2)
- editplus 4.0 注册码 (1)
- android (1)
- oracle连接数据库相关 (1)
- 编程资料总结 (2)
- 20160808 (1)
- visio 2013 (1)
最新评论
-
drew926:
泛型的类型参数可以有多个?这是java哪个版本支持的?
java泛型总结 -
listenan:
赞!非常感谢。
Scrum总结 -
cwscwj:
写的很深刻,谢谢,看了一遍,过段时间打算再看一遍。
Scrum总结 -
hwedwin:
w
Struts 2中的OGNL\EL的使用总结 -
lanni2460:
不错 很好 支持……
sqlserver三个驱动包下载
ssh相关资料
Struts跟 Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点。使开发者能更深入的 了解其内部实现机制。 Struts开放源码框架的创建是为了使开发者在构建基于Java Servlet和JavaServer Pages(JSP)技术的Web应用时更加容易。Struts框架为开放者提供了一 个统一的标准框架,通过使用Struts作为基础,开发者能够更专注于应用程序的商业逻辑。Struts框 架本身是使用Java Servlet和JavaServer Pages技术的一种Model-View-Controller(MVC)实现. 具体来讲,Struts的优点有: 1. 实现MVC模式,结构清晰,使开发者只关注业务逻辑的实现. 2. 有丰富的tag可以用 ,Struts的标记库(Taglib),如能灵活动用,则能大大提高开发效率。另外,就目前国 内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。 3. 页面导航.页面导航将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的 维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。 4. 提供Exception处理机制 . 5. 数据库链接池管理 6. 支持I18N 缺点: 一、 转到展示层时,需要配置forward,每一次转到展示层,相信大多数都是直接转到jsp,而涉及到转向,需要配置forward,如果有十个展示层的 jsp,需要配置十次struts,而且还不包括有时候目录、文件变更,需要重新修改forward,注意,每次修改配置之 后,要求重新部署整个项目,而tomcate这样的服务器,还必须重新启动服务器,如果业务变更复杂频繁的系统,这样的操作简单不可想象。现在就是这样, 几十上百个人同时在线使用我们的系统,大家可以想象一下,我的烦恼有多大。 二、 Struts 的Action必需是thread-safe方式,它仅仅允许一个实例去处理所有的请求。所以action用到的所有的资源都必需统一同步,这个就引起了 线程安全的问题。 三、 测试不方便. Struts的每个 Action都同Web层耦合在一起,这样它的测试依赖于Web容器,单元测试也很难 实现。不过有一个Junit的扩展工具Struts TestCase可以实现它的单元测试。 四、 类型的转换. Struts的 FormBean把所有的数据都作为String类型,它可以使用工具Commons- Beanutils进行类型转化。但它的转化都是在Class级别,而且转化的类型是不可配置的。类型转化时的错误信息返回给用户也是非常困难的。 五、 对Servlet的依赖性过强. Struts处理Action时必需要依赖ServletRequest 和ServletResponse,所有它摆脱不了Servlet容器。 六、 前端表达式语言方面.Struts集成了JSTL,所以它主要使用JSTL的表达式语言来获取数据。可是JSTL的表达 式语言在Collection和索引属性方面处理显得很弱。 七、 对Action执行的控制困难. Struts创建一个Action,如果想控制它的执行顺序将会非常困难。甚至你要重 新去写Servlet来实现你的这个功能需求。 八、 对Action 执行前和后的处理. Struts处理Action的时候是基于class的hierarchies, 很难在action处理前和后进行操作。 九、 对事件支持不够. 在struts中,实际是一个表单Form对应一个Action类(或 DispatchAction),换一句话说:在Struts中实际是一个表单只能对应一个事件,struts这 种事件方式称为application event[align=left][/align],application event和component event相比是一种粗粒度的事件。 Struts重要的表单对象 ActionForm是一种对象,它代表了一种应用,这个对象中至少包含几个字段,这些字段是 Jsp页面表单中的input字段,因为一个表单对应一个事件,所以,当我们需要将事件粒度细化到表单中这些字段时,也就是说,一个字段对应一个事件时, 单纯使用Struts就不太可能,当然通过结合JavaScript也是可以转弯实现的。 2. Hibernate Hibernate 是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随 心所欲的使用对象编程思维来操纵数据库。 Hibernate 可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的 Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB 的J2EE架构中取代CMP,完成数据持久化的重 任。 大多数开发机构经常采取创建各自独立的数据持久层。一旦底层的数据结构发生改变,那么修改应用的其余部分使之适应这种改变的代价将是十分巨大的。Hibernate适 时的填补了这一空白,它为Java应用提供了一个易用的、高效率的对象关系映射框架。hibernate是个轻量级的持久性框 架,功能却非常丰富。 优点: a. Hibernate 使用 Java 反射机制 而不是字节码增强程序来实现透明性。 b. Hibernate 的性能非常好,因为它是个轻量级框架。 映射的灵活性很出色。 c. 它支持各种关系数据库,从一对一到多对多的各种复杂关系。 缺点:它限制您所使用的对象模型。(例如,一个持久性类不能映射到多个表)其独有的界面和可怜的市场份额也让人不安,尽管如此, Hibernate 还是以其强大的发展动力减轻了这些风险。其他的开源持久性框架也有一些,不过都没有 Hibernate 这样有市场冲击力。 [color=orange][/color][size=x-small][/size] 补充几点我的意见: 一、 Hibernate是JDBC的轻量级的对象封装,它是一个独立的对象持久层框架,和App Server,和EJB没有什么必然的联系。Hibernate可以用在任何JDBC可以使用的场合,例如Java应用程序的 数据库访问代码,DAO接口的实现类,甚至可以是BMP里面的访问数据库的代码。从这个意义上来说,Hibernate和EB 不是一个范畴的东西,也不存在非此即彼的关系。 二、 Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和 JDBC驱动,和数据库都有一定的关系,但是和使用它的Java程序,和App Server没有任何关系,也不存在兼容性问题。 三、 Hibernate不能用来直接和Entity Bean做对比,只有放在整个J2EE项目的框架中才能比较。并且即使是放在软件整体框架中来看,Hibernate也是做为 JDBC的替代者出现的,而不是Entity Bean的替代者出现的,让我再列一次我已经列n次的框架结构: 传统的架构: 1) Session Bean <-> Entity Bean <-> DB 为了解决性能障碍的替代架构: 2) Session Bean <-> DAO <-> JDBC <-> DB 使用Hibernate来提高上面架构的开发效率的架构: 3) Session Bean <-> DAO <-> Hibernate <-> DB 就上面3个架构来分析: 1、内存消耗:采用JDBC的架构2无疑是最省内存的,Hibernate的架构3次之,EB的架构1最差。 2、运行效率:如果JDBC的代码写的非常优化,那么JDBC架构运行效率最高,但是实际项目中,这一点几乎做不到,这需要程序员非常精通JDBC,运用 Batch语句,调整PreapredStatement的Batch Size和Fetch Size等参数,以及在必要的情况下采用结果集cache等等。而一般情况下程序员是做不到这一点的。因此 Hibernate架 构表现出最快的运行效率。EB的架构效率会差的很远。 3、开发效率:在有JBuilder的支持下以及简单的项目,EB架构开发效率最高,JDBC次之, Hibernate最差。 但是在大的项目,特别是持久层关系映射很复杂的情况下,Hibernate效率高的惊人,JDBC次之,而EB架构很可能会失 败。 4、分布式,安全检查,集群,负载均衡的支持 由于有SB做为Facade,3个架构没有区别。 四、EB和 Hibernate学习难度在哪里? EB的难度在哪里?不在复杂的XML配置文件上,而在于EB运用稍微不慎,就有严重的性能障碍。所以难在你需要学习很多EJB设计模式来避开性能问题,需 要学习App Server和EB的配置来优化EB的运行效率。做EB的开发工作,程序员的大部分精力都被放到了EB的性能问题上了,反而没有更多的精力关注本身就主要 投入精力去考虑的对象持久层的设计上来。 Hibernate 难在哪里?不在Hibernate本身的复杂,实际上Hibernate非 常的简单,难在Hibernate太灵活了。 当你用EB来实现持久层的时候,你会发现EB实在是太笨拙了,笨拙到你根本没有什么可以选择的余地,所以你根本就不用花费精力去设计方案,去平衡方案的好 坏,去费脑筋考虑选择哪个方案,因为只有唯一的方案摆在你面前,你只能这么做,没得选择。 Hibernate 相反,它太灵活了,相同的问题,你至少可以设计出十几种方案来解决,所以特别的犯难,究竟用这个,还是用那 个呢?这些方案之间到底有什么区别呢?他们的运行原理有什么不同?运行效率哪个比较好?光是主键生成,就有七八种方案供你选择,你为难不为难?集合属性可 以用Set,可以用List,还可以用Bag,到底哪个效率高,你为难不为难?查询可以用iterator,可以用list,哪个好,有什么区别?你为难 不为难?复合主键你可以直接在hbm里面配置,也可以自定义CustomerType,哪种比较好些?你为难不为难?对于一个表,你可以选择单一映射一个 对象,也可以映射成父子对象,还可以映射成两个1:1的对象,在什么情况下用哪种方案比较好,你为难不为难? 这个列表可以一直开列下去,直到你不想再看下去为止。当你面前摆着无数的眼花缭乱的方案的时候,你会觉得幸福呢?还是悲哀呢?如果你是一个负责的程序员, 那么你一定会仔细研究每种方案的区别,每种方案的效率,每种方案的适用场合,你会觉得你已经陷入进去拔不出来了。如果是用EB,你第一秒种就已经做出了决 定,根本没得选择,比如说集合属性,你只能用Collection,如果是 Hibernate,你会在Bag,List和 Set之间来回犹豫不决,甚至搞不清楚的话,程序都没有办法写。 3. Spring 它是一个开源的项目,而且目前非常活跃;它基于IoC(Inversion of Control,反向控制)和AOP的构架多层j2ee系统的框架,但它不强迫你必须在每一层 中必须使用Spring,因为 它模块化的很好,允许你根据自己的需要选择使用它的某一个模块;它实现了很优雅的MVC,对不同的数据访问技术提供了统一的 接口,采用IoC使得可以很容易的实现bean的装配,提供了简洁的AOP并据此实现Transcation Managment,等等 优点 a. Spring能有效地组织你的中间层对象,不管你是否选择使用了EJB。如果你仅仅使用了Struts或 其他为J2EE的 API特制的framework,Spring致力于解决剩下的问题。 b. Spring能消除在许多工程中常见的对Singleton的过多使用。根据我的经验,这是一个很大的问题,它降低了系 统的可测试性和面向对象的程度。 c. 通过一种在不同应用程序和项目间一致的方法来处理配置文件,Spring能消除各种各样自定义格式的属性文件的需要。曾 经对某个类要寻找的是哪个魔法般的属性项或系统属性感到不解,为此不得不去读Javadoc甚至源编码?有了Spring,你 仅仅需要看看类的JavaBean属性。Inversion of Control的使用(在下面讨论)帮助完成了这种简化。 d. 通过把对接口编程而不是对类编程的代价几乎减少到没有,Spring能够促进养成好的编程习惯。 e. Spring被设计为让使用它创建的应用尽可能少的依赖于他的APIs。在Spring应用 中的大多数业务对象没有依赖于Spring。 f. 使用Spring构建的应用程序易于单元测试。 g. Spring能使EJB的使用成为一个实现选择,而不是应用架构的必然选择。你能选择用POJOs或local EJBs来实现业务接口,却不会影响调用代码。 h. Spring帮助你解决许多问题而无需使用EJB。Spring能提供一种EJB的替换物, 它们适用于许多web应用。例如,Spring能使用AOP提供声明性事务管理而不通过EJB容器,如果你仅仅需要与单个数据 库打交道,甚至不需要一个JTA实现。 i. Spring为数据存取提供了一个一致的框架,不论是使用的是JDBC还是O/R mapping产品(如Hibernate)。 Spring 确实使你能通过最简单可行的解决办法来解决你的问题。而这是有有很大价值的
发表评论
-
Struts+Spring+Hibernate练习
2010-09-29 11:00 1284Struts+Spring+Hibernate练习 ... -
总结Struts,Hibernate,Spring框架
2010-09-29 10:50 1184总结Struts,Hibernate,Spring框架 H ... -
struts2+hibernate+spring2.5用properties集成整合配置方法
2010-09-20 09:52 1343struts2+hibernate+spring2.5用pro ... -
spring和Hibernate集成
2010-09-19 10:31 1204spring和Hibernate集成 spring能够简 ... -
HibernateDaoSupport的使用
2010-09-19 09:56 2098HibernateDaoSupport的使用 Hibern ... -
HibernateDaoSupport的优缺点
2010-09-19 09:50 1143HibernateDaoSupport的优缺点 编写Dao ... -
ssh整合相关jar包 下载
2010-09-19 08:54 1402ssh整合相关jar包 下载 -
ssh整合异常总结 Cannot locate the chosen ObjectFactory implementation: spring
2010-09-18 23:06 3670ssh整合异常总结 Cannot locate th ... -
SSH框架异常总结
2010-09-18 22:37 1347SSH框架异常总结 严重: Unexpected er ...
相关推荐
在"SSH参考资料"这个压缩包中,可能包含了Spring、Struts和Hibernate的官方文档、教程、示例代码、常见问题解答等资源,这些都是学习和掌握Java SSH技术栈的重要资料。通过深入学习和实践,开发者可以有效地提高Java...
下面将详细介绍SSH整合的相关知识点。 1. **SSH基础知识**: - SSH的工作原理:SSH通过加密通信通道来确保数据传输的安全性,它使用公钥/私钥对进行身份验证,以防止中间人攻击。 - SSH的主要用途:远程登录、...
“源码”标签可能意味着压缩包内包含了SSH相关项目的源代码,可能是实现SSH连接的库、框架或示例项目。“工具”标签则可能指示这里包含了一些辅助工具,例如SSH客户端、配置助手等。 根据提供的文件名“spring2_5_2...
【SSH学习资料】这篇文档主要介绍了SSH框架的基础搭建方法,包括了软件的安装及环境变量配置的步骤。SSH是一个常见的Java开发框架,由Struts、Spring和Hibernate三个开源项目组合而成,常用于构建企业级的Web应用。 ...
SSH整合是Java开发中一种常见的技术栈组合,主要包括Spring、Hibernate和Struts2这三个框架的集成应用。这三种框架在企业级应用开发中扮演着重要角色,分别负责不同层面的问题解决。 Spring是一个全面的后端应用...
这个压缩包“SSH协议相关资料和软件”显然包含了一些关于SSH协议的学习资源和可能的实施工具,比如`setupssh.exe`,这很可能是一个SSH客户端或服务器的安装程序。下面将详细讨论SSH协议及其相关知识。 SSH协议最初...
接下来,我们将深入探讨SSH整合的相关知识点。 首先,**Spring** 是一个全面的Java应用程序框架,它提供依赖注入(DI)和面向切面编程(AOP)等功能,用于简化应用的开发和管理。在SSH整合中,Spring作为核心容器,...
以下是SSH2相关的一些关键知识点: 1. 安全性:SSH2使用公钥基础设施(PKI)进行身份验证,增强了安全性。用户或服务器通过私钥进行身份验证,公钥被存储在服务器上,确保只有拥有相应私钥的用户能够访问系统。此外...
### SSH相关学习资料详解 #### 一、SSH简介与重要性 **SSH(Secure Shell)**是一种网络协议,主要用于加密客户端与服务器之间的网络通信。它为远程登录、远程文件管理等服务提供了安全的通道,是现代互联网应用中...
SSH相关资料文档
资源名称:SSH框架相关技术资料专题资源目录:【】19061a0ebe09aa9a85cc5725afbd6286【】chap01领略清晰的MVC流程----Struts讲解技术资料【】chap02体验控制反转的理念----Spring介绍技术文档【】chap03感悟...
这些jar包包括了Struts的核心库、Spring的各种模块(如Core、Context、Web、AOP、ORM等)以及Hibernate的主库和相关驱动。有了这些jar包,开发者可以快速搭建SSH环境,开始构建复杂的业务逻辑和数据访问层。 在实际...
SSH2 jar包的学习资料可能包含教程、示例代码、API文档等,可以帮助开发者更好地理解和运用SSH2进行远程命令操作。在学习过程中,结合实际项目实践,理解每个步骤的含义和作用,将有助于提升技能水平。
在文件名列表中只有一个"ssh",这可能是一个包含所有SSH相关文件的主目录,里面可能有Java源代码、配置文件、日志、教程文档等。深入研究这些文件,我们可以学习如何在Java项目中设置SSH连接,包括生成公钥/私钥对、...
在IT行业中,SSH通常指的是Spring、Struts和Hibernate这三个开源框架的组合,它们是Java Web开发中的重要组件。本项目“JAVA+很好的ssh例子”是一个针对初学者的示范性项目,旨在帮助Java开发者理解并掌握SSH框架的...
标题"SSH.rar_myeclipse ssh_ssh_ssh myeclipse_ssh2_ssh2 Myeclipse"表明这是一个关于SSH配置和MyEclipse集成的资源包,可能包含了SSH框架在MyEclipse中的配置教程,以及SSH2(更安全的SSH版本)的相关资料。...
"BBS.pdf"可能是相关的教程或参考文档,详细讲解了如何构建一个基于SSH2的论坛系统,涵盖了从设计模型、实现业务逻辑到部署上线的全过程。 通过深入研究这些资料,你可以掌握SSH2框架的基本用法,了解如何在实际...
总的来说,"SSH开发所需所有驱动包"是一个全面支持SSH框架开发的资源集合,它涵盖了从数据库连接、对象持久化到Web层控制的各个层面,是Java后端开发的重要参考资料。在实际开发过程中,根据项目需求选择合适的驱动...
本资料旨在指导开发者如何有效地将这三个框架整合起来,构建出一个高效、可维护的Web应用程序。 **Struts** 是一个基于MVC(Model-View-Controller)设计模式的Java Servlet框架,主要处理HTTP请求,并将其转发到...
很多好用的资源搜藏 SSH框架相关技术资源列表