`
文章列表
1.基于jax-ws开发的webservice获取客户端ip的方法:    import javax.annotation.Resource;   import javax.servlet.http.HttpServletRequest;   import javax.xml.ws.WebServiceContext;   import javax.xml.ws.handler.MessageContext;   @Resource   private WebServiceContext wsContext;   private String getClientInfo(){ ...
在使用Redis过程中,我们发现了不少Redis不同于Memcached,也不同于MySQL的特征。(本文主要讨论Redis未启用VM支持情况) 1. Schema MySQL: 需事先设计Memcached: 无需设计Redis: 小型系统可以不用,但是如果要合理的规划及使用Redis,需要事 ...
当 从Redis中读取数据的时候,如果读取的key对应的value不在内存中,那么Redis就需要从swap文件中加载相应数据,然后再返回给请求方。 这里就存在一个I/O线程池的问题。在默认的情况下,Redis会出现阻塞,即完成所有的swap文件加 ...
Hibernate 中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存由hibernate管理的,一般情况下无需进行干预;第二级别的缓存是SessionFactory级别的缓存,它是属于进程范围或群集范围的缓存。这一级别的缓存可以进行配置和更改,并且可以动态加载和卸载。 Hibernate还为查询结果提供了一个查询缓存,它依赖于第二级缓存。   1. 一级缓存和二级缓存的比较:第一级缓存 第二级缓存 存放数据的形式 相互关联的持久化对象 对象的散装数据 缓存的范围 事务范围,每个事务都有单独的第一级缓存进程范围或集
 Assigned   Assigned方式由程序生成主键值,并且要在save()之前指定否则会抛出异常   特点:主键的生成值完全由用户决定,与底层数据库无关。用户需要维护主键值,在调用session.save()之前要指定主键值。   Hilo   Hilo使用高低位算法生成主键,高低位算法使用一个高位值和一个低位值,然后把算法得到的两个值拼接起来作为数据库中的唯一主键。Hilo方式需要额外的数据库表和字段提供高位值来 源。默认请况下使用的表是

面试题

    博客分类:
  • Java
从1加到100(考虑减少循环次数)使用数学公式 首先要知道从1加到100的数式; n*(n-1)/2+n;  大家都知道从1加到100等于5050;  不妨用这个公式套一下,看看等不等于5050; n就是从1加到第几的数字;    100*(100-1)=9900;  9900/2=4950;   4950+100=5050;  看来这个公式是行的通的;所以当你不会用for循环来写的时候,就可以用这种公式的写法了; /** * * 文 件 名 : * 包: sunTest.java * 工程: * 创 建 人: shmily * 日 期: 2013-2-27上午9: ...
比较点 extjs jquery 是否收费 Extjs3版本开始对于商业用途是实行收费的 开源免费 库文件大小 500kb 20kb 是否有图片及CSS要加载 是 否 支持ui 丰富的ui 要使用插件 是否支持面向对象编程 支持(代码复用性强 ) 不支持 粒度 extjs是基于组件级 jquery主要是简化Dom操作 兼容性 有点小问题 兼容 调试 不易调试 结合firebug相对直接 代码方式 一个页面文件 + 加载大量 js文件来构成最终的效果,使得你整个应用处在一个页面上 依附在传 ...

单例延迟实例化

    博客分类:
  • Java
1.如果出于性能的考虑而需要对实例域使用延迟初始化,就使用双重检查模式(double-check idiom)。这种模式避免了在域被初始化后访问这个域时的锁定开销。注意到实例域使用了volatile修饰符。 //Double-check idiom for lazy initialization of instance fields private volatile FieldType field; FieldType getField() { FieldType result = field; if(resu ...
在SOA的基础技术实现方式中WebService占据了很重要的地位,通常我们提到WebService第一想法就是SOAP消息在各种传输协议上交互。近几年REST的思想伴随着SOA逐渐被大家接受,同时各大网站不断开放API提供给开发者,也激起了REST风格We ...
1.应该说粒度不同,extjs是基于组件级的,而jquery主要是简化Dom操作。 如果看着UI可以使用extjs,关于jquery可以在任何类型的项目使用。 下面的可以看看: extjs可以省下你大量做界面的时间,而且几乎不用怎么写代码,使用ext大部 ...
首先我们来讲讲:重载(Overloading)     (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。 重载Overloading是一个类中多态性的一种表现。     (2) Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。 调用方法时通过传递给它们的不同参数个数和参数类型来决定具体使用哪个方法, 这就是多态性。     (3) 重载的时候,方法名要一样,但是参数类型和个数不一样,返回值类型可以相同也可以不相同。无法以返回型别作为重载函数的区分标准。     下面 ...
1、启动Memcache 常用参数 -p <num>      设置端口号(默认不设置为: 11211) -U <num>      UDP监听端口(默认: 11211, 0 时关闭)  -l <ip_addr>  绑定地址(默认:所有都允许,无论内外网或者本机更换IP,有安全隐患,若设置为127.0.0.1就只能本机访问) -d            独立进程运行 -u <username> 绑定使用指定用于运行进程<username> -m <num>      允许 ...

自定义标签

    博客分类:
  • Java
package com.fsti.tag; import java.util.Collection; import java.util.Iterator; import javax.servlet.jsp.JspException; import javax.servlet.jsp.tagext.BodyTagSupport; public class MyTagFor extends BodyTagSupport { /** * 这个里面定一个集合,我们不考虑数组的这个情况。 */ private Collection items; private ...

JAXB格式化beanToXml

    博客分类:
  • Java
context = JAXBContext.newInstance(Bean.class ); //下面代码演示将对象转变为xml Marshaller mar = context.createMarshaller(); writer = new StringWriter(); mar.marshal(bean, writer); //下面代码演示将上面生成的xml转换为对象 reader = new StringR ...
struts 标签 :<s:date/> 作用:用来格式化显示日期的格式。 它可以用一种你指定的格式来显示 (如:“yyyy-MM-dd”),可以生成通俗易懂的注释(如:in 2 hours,14 minutes),或者用预先定义的一个格式来显示(如在properties配置文件中配置'struts.date.format').如果没有找到 这个struts.date.format,则会找默认的DateFormat.MEDIUM来格式化你的日期对象。当然如果在值栈中没有找你对应的日期 对象,则会返回空格。 可配置的标签属性有: name nice format ...
Global site tag (gtag.js) - Google Analytics