框架
文章平均质量分 51
ccecwg
这个作者很懒,什么都没留下…
展开
-
远程通信的几种选择(RPC,Webservice,RMI,JMS的区别)
RPC(Remote Procedure Call Protocol)RPC使用C/S方式,采用http协议,发送请求到服务器,等待服务器返回结果。这个请求包括一个参数集和一个文本集,通常形成“classname.methodname”形式。优点是跨语言跨平台,C端、S端有更大的独立性,缺点是不支持对象,无法在编译器检查错误,只能在运行期检查。 Web Service转载 2015-02-09 16:23:44 · 586 阅读 · 0 评论 -
SpringMVC与Struts2的对比
下面这些东西基本都是我从网上粘贴过来的,没有那么多耐心和时间一个字一个字的敲了,但是基本能表明我选择SpringMVC的思路和原因。把这张图放在这里,我是想说SpringMVC和Struts2真的是不一样的,虽然在都有着核心分发器等相同的功能组件(这些由MVC模式本身决定的)。 为什么SpringMVC会赢得最后的胜利呢?谈几点我自己的看法: 第转载 2015-01-29 11:22:08 · 449 阅读 · 0 评论 -
Redis与Memcached的区别
转载地址:http://gnucto.blog.51cto.com/3391516/998509Redis与Memcached的区别传统MySQL+ Memcached架构遇到的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断转载 2015-01-29 15:00:05 · 322 阅读 · 0 评论 -
Struts2+Spring+Hibernate 三大框架的合并集成
这次来看看Struts2+Spring+Hibernate三大框架的整合应用,主要是Spring和Hibernate框架的整合,因为前边已经将Strtus2+Spring整合过了基本一样。 首先看一下分工吧: Struts2做的MVC的流程框架,主要完成从客户端访问到选择anction的过程,其中过滤器起到了Controller的作用,转载 2014-12-03 15:02:34 · 700 阅读 · 0 评论 -
基于SSH框架的JAVA WEB程序员所需掌握技术
技术名称位于层次简要描述重要程度参考文档建议Html展现层Web基础中的基础高http://www.w3school.com.cn/html/index.asp 对于每一个基本标签,务必做到信手拈来Css展现层Web转载 2014-12-03 14:01:55 · 781 阅读 · 0 评论 -
spring mvc结合freemarker,使用hibernate validation框架做校验及国际化
搭建 Spring , Spring MVC , Mybatis , freemarker 等集成开发环境,为了增加数据校验和国际化花了好几天的时间 ( 其实可以手动编写校验代码,或者使用 spring mvc自带校验但不怎么好,故实现 hibernate validation) ,本来如果阅读源代码会可能更快,但是没有时间静下心来阅读,只有工作间隙中去网上查资料,但是尝试了很多次都没能成功,直到转载 2014-12-03 11:15:30 · 619 阅读 · 0 评论 -
OJDBC版本区别 [ojdbc14.jar,ojdbc5.jar和ojdbc6.jar的区别]
在使用Oracle JDBC驱动时,有些问题你是不是通过替换不同版本的Oracle JDBC驱动来解决的?最常使用的ojdbc14.jar有多个版本,classes12.jar有多个版本你了解吗? 连接类型:1、JDBC OCI: oci是oracle call interface的缩写,此驱动类似于传统的ODBC 驱动。因为它需要Oracle Call Interface转载 2014-12-16 10:10:48 · 496 阅读 · 0 评论 -
Spring MVC 3.0.5+Spring 3.0.5+MyBatis3.0.4全注解实例详解(一)
Spring更新到3.0之后,其MVC框架加入了一个非常不错的东西——那就是REST。它的开放式特性,与Spring的无缝集成,以及Spring框架的优秀表现,使得现在很多公司将其作为新的系统开发框架。大象根据实际的项目经验,以之前SSH2例子为基础,对其进行一次大改造,详细的为大家讲解如何实现SSM3全注解式的开发。 这次大象将采取两种构建方式,一是很多人喜欢用的MyEclipse转载 2014-10-31 18:01:39 · 377 阅读 · 0 评论 -
Spring MVC 3.0.5+Spring 3.0.5+MyBatis3.0.4全注解实例详解(二)
在上一篇文章中我详细的介绍了如何搭建maven环境以及生成一个maven骨架的web项目,那么这章中我将讲述Spring MVC的流程结构,Spring MVC与Struts2的区别,以及例子中的一些配置文件的分析。 一、Spring MVC 3.0介绍 Spring MVC是一个典型的MVC框架,是Spring内置的Web框架,可以作为应用项目的展示层,继Spring转载 2014-10-31 17:57:13 · 537 阅读 · 0 评论 -
开源中国 在线文档
http://tool.oschina.net/apidocs原创 2014-11-25 10:28:46 · 593 阅读 · 0 评论 -
Spring MVC 3.0.5+Spring 3.0.5+MyBatis3.0.4全注解实例详解(四)
这一章大象将详细分析web层代码,以及使用Spring MVC的注解及其用法和其它相关知识来实现控制器功能。 之前在使用Struts2实现MVC的注解时,是借助struts2-convention这个插件,如今我们使用Spring自带的spring-webmvc组件来实现同样的功能,而且比之以前更简单。另外,还省掉了整合两个框架带来的不稳定因素。 对于Spring MVC框转载 2014-10-31 18:06:01 · 406 阅读 · 0 评论 -
Spring MVC 3.0.5+Spring 3.0.5+MyBatis3.0.4全注解实例详解(三)
前两章我为大家详细介绍了如何搭建Maven环境、Spring MVC的流程结构、Spring MVC与Struts2的区别以及示例中的一些配置文件的分析。在这一章,我就对示例的层次结构进行说明,以及MyBatis的一些简单介绍。 本文不会对MyBatis作详细说明,大象还是假定阅读本文的朋友对MyBatis(ibatis)有最基本的了解,只有这样才能较好的理解本文的内容。关于MyBa转载 2014-10-31 18:06:53 · 392 阅读 · 0 评论 -
Spring MVC 3.0.5+Spring 3.0.5+MyBatis3.0.4全注解实例详解(五)
这是本系列的最后一篇,主要讲一下FreeMarker模板引擎的基本概念与常用指令的使用方式。 一、FreemMarker基本概念 FreemMarker是一个用Java语言编写的模板引擎,它是一个基于模板来生成文本输出的一个工具。是除了JSP之外被使用得最多的页面模板技术之一,另一个比较有名的模板则是Velocity。 用户可以使用FreeMarker来生成所需要的内转载 2014-10-31 18:05:10 · 443 阅读 · 0 评论 -
Java中Filter、Servlet、Listener的学习
1、Filter的功能filter功能,它使用户可以改变一个 request和修改一个response. Filter 不是一个servlet,它不能产生一个response,它能够在一个request到达servlet之前预处理request,也可以在离开 servlet时处理response.换种说法,filter其实是一个”servlet chaining”(servlet 链).转载 2015-01-29 11:03:20 · 415 阅读 · 0 评论 -
Java类加载器总结
1.类的加载过程 JVM将类加载过程分为三个步骤:装载(Load),链接(Link)和初始化(Initialize)链接又分为三个步骤,如下图所示:1) 装载:查找并加载类的二进制数据;2)链接:验证:确保被加载类的正确性;准备:为类的静态变量分配内存,并将其初始化为默认值;解析:把类中的符号引用转换为直接引用;3)初始转载 2015-01-29 15:29:19 · 422 阅读 · 0 评论 -
正确理解SOA、SaaS和云计算之间的关系
随着云计算的概念受到越来越多的人的推崇和论证,“云上的日子”看起来离我们越来越近了。几乎所有的IT厂商都不约而同了启动了各自的云计算战略。但是由于每个企业的战略出发点不同,企业推出的云计算概念也有所差别。如果仅仅以自己的产品和业务为标准,片面地将云计算理解为SOA或SaaS,则不仅混淆了云计算概念,模糊了其产品形式, 还阻碍了云计算的推广和应用。那么, SOA、 SaaS等同于云计算么?它们有转载 2015-02-09 16:46:23 · 787 阅读 · 0 评论 -
Web应用的组件化开发
基本思路1. 为什么要做组件化? 无论前端也好,后端也好,都是整个软件体系的一部分。软件产品也是产品,它的研发过程也必然是有其目的。绝大多数软件产品是追逐利润的,在产品目标确定的情况下,成本有两个途径来优化:减少部署成本,提高开发效率。 减少部署成本的方面,业界研究得非常多,比如近几年很流行的“去IOE”,就是很典型的,从一些费用较高的高性能产品转载 2015-02-09 18:01:18 · 621 阅读 · 0 评论 -
TCP,RMI,WebService,JMS,Hessian,AMQP区别说明
TCPTransmission Control Protocol 传输控制协议,互联网通讯的基础协议,从OSI七层模型上说工作于传输层。RMIRemote Method Invocation,远程方法调用,是一种技术,基于JRMP(Java Remote Messaging Protocol)协议,是java分布式应用的基础,EJB的基石,构建于tcp之上的应用转载 2015-02-09 16:21:17 · 967 阅读 · 0 评论 -
servlet,RMI,webservice之间的区别
最近项目中有提供或者调用别的接口,在纠结中到底是用servlet还是用webservice,所以上网查看了下他们以及RMI之间的区别,方便加深了解。 首先比较下servlet和webservice下 请求: servlet:提供了请求/响应模式,是JAVA的一种规范,只能使用于java上,用来替代早期使用的难懂的CGI,是一种无状态的请求响应,客户端访问一个服务器的ur转载 2015-02-09 16:19:59 · 547 阅读 · 0 评论 -
J2EE的技术体系
J2EE 的四层模型J2EE 即Java2平台企业版,它提供了基于组件的方式来设计、开发、组装和部署企业应用。J2EE使用多层分布式的应用模型,这个多层通常通过三层或四层来实现:客户层,运行在客户计算机上的组件。Web 层,运行在J2EE服务器上的组件。业务层,同样是运行在J2EE服务器上的组件。企业信息系统层(EIS),是指运行在EIS服务器上的软件系统。以上层次一般转载 2014-12-16 10:54:32 · 1285 阅读 · 0 评论 -
Struts2+Spring3+Mybatis3开发环境搭建
本文主要介绍Struts2+Spring3+Mybatis3开发环境搭建Struts和Spring不过多介绍。MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plan Old J转载 2015-02-04 18:03:41 · 722 阅读 · 0 评论 -
J2EE集群原理
什么是集群呢?总的来说,集群包括两个概念:“负载均衡”(load balancing)和“失效备援”(failover)图一:负载均衡多个客户端同时发出请求,位于前端的负载均衡器根据特定算法,将请求分担给比较空闲的机器,从而实现较高性能和较好的扩展性 图二:失效备援当客户端连续向某个服务器发出请求时,该服务器可能处理到一半就宕机了,失效备援系统能够检测出有问题的服务器,转载 2015-01-30 17:16:50 · 588 阅读 · 0 评论 -
Redis使用总结之与Memcached异同
Redis是什么?两句话可以做下概括: 1. 是一个完全开源免费的key-value内存数据库 2. 通常被认为是一个数据结构服务器,主要是因为其有着丰富的数据结构 strings、map、 list、sets、 sorted sets Redis不是什么?同样从两个方面来做下对比: 1. 不是sql server、mySQL等关系型数据库,主要原因是: . re转载 2015-01-29 15:06:10 · 392 阅读 · 0 评论 -
java常用第三方软件包
java常用第三方软件包 网上收集的一些常用Java开发的第三方软件包,供大家参考 1.Apache POI 处理office文档用到的2. IText PDF操作类库 3.Java Base64 Base64编码类库 4.Commons-lang 对应java sdk里面的java.lang包,用来简化基本工具类操作 5.pingyin4j 中文转拼音库 6转载 2014-12-22 11:57:13 · 429 阅读 · 0 评论 -
Memcached 及 Redis 架构分析和比较
作者:刘旭晖 Raymond 转载请注明出处Email:colorant at 163.comBLOG:http://blog.csdn.net/colorant/Memcached和Redis作为两种Inmemory的key-value数据库,在设计和思想方面有着很多共通的地方,功能和应用方面在很多场合下(作为分布式缓存服务器使用等) 也很转载 2015-01-29 15:04:06 · 465 阅读 · 0 评论 -
HttpServletRequestWrapper 用法
Servlet规范中所引入的filter令人心动不已,因为它引入了一个功能强大的拦截模式。Filter是这样一种Java对象,它能在request到达servlet的服务方法之前拦截HttpServletRequest对象,而在服务方法转移控制后又能拦截HttpServletResponse对象。你可以使用filter来实现特定的任务,比如验证用户输入,以及压缩web内容。但你拟富有成效地使用过滤转载 2015-01-29 11:53:50 · 687 阅读 · 0 评论 -
过滤器和拦截器的区别
1、拦截器是基于java的反射机制的,而过滤器是基于函数回调 2、过滤器依赖与servlet容器,而拦截器不依赖与servlet容器 3、拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用 4、拦截器可以访问action上下文、值栈里的对象,而过滤器不能 5、在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化时被调用一次转载 2015-01-29 11:02:15 · 346 阅读 · 0 评论 -
CAP-面向海量服务的设计原则和策略总结[转]
互联网服务的特点就是面向海量级的用户,面向海量级的用户如何提供稳定的服务呢?这里,对这几年的一些经验积累和平时接触的一些理念做一个总结。 一、原则 1.Web服务的CAP原理 CAP指的是三个要素:一致性(Consistency)、可用性(Availability)、分区容忍性(Partition tolerance)。CAP原理指的是这三个要素最多只能同转载 2014-11-17 15:28:33 · 568 阅读 · 0 评论 -
SpringSide 4.0.0 GA
SpringSide是以Spring Framework为核心的,Pragmatic风格的JavaEE应用参考示例,是JavaEE世界中的主流技术选型,较佳实践的总结与演示。经过漫长的7个月和6个RC版本后,SpringSide 4.0的稳定版终于赶在黄石公园爆发前上画了。《一代宗师》还是留给外星人看吧。整个SpringSide 4.0版的主要修改记录:DAO框架转用Spr转载 2014-08-29 09:18:44 · 817 阅读 · 0 评论 -
SpringMVC + spring3.1.1 + hibernate4.1.0 集成及常见问题总结
SpringMVC + spring3.1.1 + hibernate4.1.0 集成及常见问题总结博客分类: spring杂谈跟开涛学SpringMVCjava开发常见问题分析springsshhibernate企业应用 下载地址一 开发环境1、动态web工程2、部分依赖 java代码:Java代转载 2014-07-11 11:57:44 · 587 阅读 · 0 评论 -
我的架构经验系列文章 - 后端架构 - 性能层面
性能层面:性能分析我觉得性能分析的话要注意几个要点:不要去猜:对于自己写的代码你是否知道你的代码要执行多久,是不是还在用时间相减来测试代码执行时间?现在有很多自动化的工具可以在程序运行的时候,测试代码中每一句语句的执行时间,可以有效分析出代码的性能瓶颈。对于比较重要的业务逻辑建议采用类似的工具来进行性能分析,有的时候性能慢的代码不一定是自己写的还可能是框架内提供的,如果没有转载 2014-07-28 18:24:59 · 357 阅读 · 0 评论 -
我的架构经验系列文章 - 后端架构 - 设计层面
设计层面: 分层架构分层架构是项目设计中很重要的一点,从根本的目的上来说就是为了职责的分离。最经典的三层架构,到四层五层六层,甚至有人开玩笑说十八层的分层,根据项目的需要可以分不同的层。这里说的层其实是逻辑层,从物理层的角度来说也有三层、四层五层的分层架构。之所以三层架构这么流行是因为它的分层把大的关注点进行了分离,层数恰到好处,表现层、业务逻辑层和数据访问层,分别处理面向转载 2014-07-28 18:05:32 · 457 阅读 · 0 评论 -
我的架构经验系列文章 - 后端架构 - 安全层面
SQL注入SQL注入是一个古老的安全问题,现在任何程序都不应该再出现这样的问题了,其原理非常简单,在过去大多数程序都是直肠子通数据库的,因此如果拼接SQL并且在参数上没有做好过滤或者没有使用参数形式来生成SQL语句的话可能会导致用户在页面上输入的恶意代码直接在数据库中执行。SQL注入的危害点在于整个网站有1000个数据点,如果其中有1个点有漏洞那么整站的数据其实都有危险了,很多开发会注重资转载 2014-07-28 18:24:31 · 452 阅读 · 0 评论 -
大话重构连载7:重构是一系列的等量变换
毫无疑问,系统重构是一件如履薄冰、如坐针毡、你必须时时小心应对的工作,你就像走在钢丝上的人,每一步你都必须要保证正确,一个不经意的失误就可能让你万劫不复。尽管如此,只要你掌握了正确的方法,即使站在钢丝上也能如履平地,而这个正确的方法,就是那些被证明是正确的重构方法。说了那么多,你一定开始好奇,系统重构到底都是一些什么方法呢?行了,我也就不卖关子了,我们来看看重构方法工具箱里都有些什么东东。转载 2014-07-29 16:57:15 · 344 阅读 · 0 评论 -
大话重构连载7:重构是一系列的等量变换
毫无疑问,系统重构是一件如履薄冰、如坐针毡、你必须时时小心应对的工作,你就像走在钢丝上的人,每一步你都必须要保证正确,一个不经意的失误就可能让你万劫不复。尽管如此,只要你掌握了正确的方法,即使站在钢丝上也能如履平地,而这个正确的方法,就是那些被证明是正确的重构方法。说了那么多,你一定开始好奇,系统重构到底都是一些什么方法呢?行了,我也就不卖关子了,我们来看看重构方法工具箱里都有些什么东东。转载 2014-07-29 16:48:37 · 323 阅读 · 0 评论 -
互联网网站架构升级----分布式环境的构建
随着网络流量爆发式增长,几百人维护一个项目将是一个可怕的噩梦,业务拆分势在必行。拆分的业务形成一个个独立的系统,系统间的协调又变成了一个棘手的问题,所以维护这些系统间协调关系的分布式环境组件将发挥至关重要的作用。 由于拆分后的系统部署于不同机器的不同集群之中,系统间的协作要靠通信来解决,所以分布式环境组件必须解决数据流的问题。根据不同的场景,数据流又分构建于远程调用框架(如RM转载 2014-07-29 15:38:29 · 387 阅读 · 0 评论 -
我的架构经验系列文章 - 后端架构 - 系统层面
系统层面:高可用性所谓高可用性也就是通过避免单独故障加上快速故障转移实现一旦某台物理服务器出现故障能实现故障快速恢复。一般来说,可以采用两种方式,如果可以做业务可以做负载均衡则通过负载均衡实现集群,然后针对每一台服务器进行监控,一旦发生故障则从集群中移除;如果业务只能有单点入口那么可以通过实现Standby机加上虚拟IP机制,实现Active机在出现故障之后虚拟IP转移到Standby转载 2014-07-28 18:23:28 · 415 阅读 · 0 评论 -
我的架构经验系列文章 - 后端架构 - 语言层面
语言层面: 运行时元数据获取所谓运行时元数据获取也就是在程序 运行的时候通过代码动态 获得类型、方法、属性的信息,然后可以动态获得属性的值,执行方法等等,在有的语言中称为反射。反射不一定是高效的,但是在写框架程序的时候反射是一种很有用的技术 ,并且反射的性能开销往往是可以通过诸如缓存等手段来最小化的。比如在ORM中,根据实体类的信息动态获得所有的属性,然后取得其值转载 2014-07-28 18:22:55 · 580 阅读 · 0 评论 -
框架规划
一个比较成规模的系统,很多东西依赖官方组件不能满足定制、灵活、性能、监控的要求,需要开发哪些东西?略微整理了一下,这也是我们的目标。 宗旨:1)自己的组件需要处处体现集中配置、集中日志、内置性能监视器、集中监控、自动部署等理念!2)考虑分期,先实现必要的东西,尽量轻量化,微软搞的东西很容易太重!3)尽量考虑不依赖硬件的横向扩展!4)转载 2014-07-29 15:30:14 · 436 阅读 · 0 评论 -
web.xml中load-on-startup标签的含义
web.xml中load-on-startup标签的含义在servlet的配置当中,5的含义是:标记容器是否在启动的时候就加载这个servlet。当值为0或者大于0时,表示容器在应用启动时就加载这个servlet;当是一个负数时或者没有指定时,则指示容器在该servlet被选择时才加载。正数的值越小,启动该servlet的优先级越高。Servlet spec转载 2014-04-23 17:00:37 · 318 阅读 · 0 评论