- 浏览: 113708 次
- 性别:
- 来自: 苏州
最新评论
-
tianhandigeng:
改了 还是没用
转 Apache httpd虚拟目录403 forbidden问题的解决 -
bluseli:
你好。希望能说说如何管理session和connection的 ...
转 ActiveMQ使用经验 -
youyun_2008:
F r a m e w o r k本质上和面向对象无关,用C语 ...
【分享】Java软件架构师所要需的东西 -
object_object:
你好,单台,通过硬件冗余主要是怎么做呢
转 ActiveMQ使用经验 -
aiyust070:
youyun_2008 写道WSDL 绑定可为 web ser ...
Webservice wsdl 结构简介
文章列表
一.下载struts2.0.1
http://struts.apache.org/downloads.html,下载struts-2.0.1-all.zip,这个压缩包中包含了开发struts2所需的struts2-core.jar核心包以及其它struts2所依赖的JAR文件,另外还有一些struts2的示例程序以及一些HTML的API文档。
二.试用str ...
何为阻塞?
从该网络通讯过程来理解一下何为阻塞 :
在以上过程中若连接还没到来,那么 accept 会阻塞 , 程序运行到这里不得不挂起, CPU 转而执行其他线程。
在以上过程中若数据还没准备好, read 会一样也会阻塞。
阻塞式 ...
四. 自身调整
本节将向您详细介绍一些加速可使Tomcat实例加速运行的技巧和方法,无论是在什么操作系统或者何种Java虚拟机上。在有些情况下,您可能没有控制部署环境上的操作系统或者Java虚拟机。在这种情况下,您就需 ...
1. 如何加大tomcat连接数
在tomcat配置文件server.xml中的<Connector ... />配置中,和连接数相关的参数有:
minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10
maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75
acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100
enableLookups:是否反查域名,取值为:true或false。为了提高处理能力,应设置为false
connectionTimeout:网络连接超时,单位:毫秒。设置为 ...
首先看下官方的解释:
void notify()
唤醒在此对象监视器上等待的单个线程。
void notifyAll()
唤醒在此对象监视器上等待的所有线程。
void wait()
导致当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法。
下面是一段实例:
public class OtherObject {
public synchronized void await(){
try {
wait();
} catch (InterruptedE ...
从线程中返回数据和向线程传递数据类似。也可以通过类成员以及回调函数来返回数据。但类成员在返回数据和传递数据时有一些区别,下面让我们来看看它们区别在哪。
一、通过类变量和方法返回数据
使用这种方法 ...
UML类图符号简介
1.类(Class):使用三层矩形框表示。
第一层显示类的名称,如果是抽象类,则就用斜体显示。
第二层是字段和属性。
第三层是类的方法。
注意前面的符号,‘+’表示public,‘-’表示private,‘#’表示protected。
2.接口:使用两层矩形框表示,与类图的区别主要是顶端有<<interface>>显示。
第一行是接口名称。
第二行是接口方法。
3.继承类(extends):用空心三角形+实线来表示。
4.实现接口(implements):用空心三角形+虚线来表示
5.关联(Association):用实线箭头来表示,例 ...
1)Lifecycle
public interface Lifecycle {
public void addLifecycleListener(LifecycleListener listener);
public LifecycleListener[] findLifecycleListeners();
public void removeLifecycleListener(LifecycleListener listener);
public void start() throws LifecycleException;
pub ...
1)Container
container用于处理对servlet的请求,并未客户端填充resposne对象。container由org.apache.catalina.Container接口表示。共有四种类型的container:engine,host,context和wrapper。
container必须实现org.apache.catalina.Container接口。然后将container实例设置到connector的setContainer方法中。这样,connector就可以调用container的invoke方法了。
首先要注意的是,在tomcat中,共有四种类型的cont ...
1)org.apache.catalina.connector.http.HttpConnector
实现了org.apache.catalina.Connector接口,java.lang.Runnable接口(确保在自己的线程中运行)和org.apache.catalina.Lifecycle接口。Lifecycle接口用于维护每个实现了该接口的tomcat的组件的生命周期。
HttpConnector的initialize方法会调用一个私有方法open,返回一个java.net.ServerSocket实例,赋值给成员变量serverSocket。这里并没有直接调用ServerSocke ...
最近碰到一个问题,在一框架中已经存在了一个类,其中的一个属性是protected,且这个属性只有get方法。项目中需要使用到这个类,但必须修改这个属性的值。
想想只能通过子类来多态来对该属性重新设置值,然后覆盖其get方法。
具体代码如下:
public class Parent {
protected String name = "zhangsan";
public String getName(){
return name;
}
}
public class Child extends Parent {
protected Strin ...
对于并发问题的理解,最好站在线程的角度来理解,比如读写锁ReentrantReadWriteLock,对于加了读锁的操作,当一个线程进入后,而其时间片使用结束,而该线程还没退出该方法,轮到第二个线程时,第二个线程同样可以访问该方法。 但如果一个线程访问了该实例的一个加了写锁的方法,当这个线程在写锁释放前退出时间片,其他线程是无法访问该实例的其他同步了的方法。
有工作经验的同志可能体会到面试的时候,面试官会针对你做过的项目技术发问,那么平时我们准备的时候就得注意深入了解我们所用过的技术,不能只停留在用过的层面上,而最好能深入理解其原理,平时就有做好总结的习惯。
ThreadLocal作用,总结起来一句话就是,让线程轻松的就可以获得独立实例,不用在线程创建的时候传入。
ThreadLocal在资源实例里使用(创建一个方法A,A创建一个实例并与ThreadLocal绑定),用来在run()方法中调用该方法A。
spring中访问数据库的模板使用了ThreadLocal技术,数据库资源本来是非线程安全的,如果使用synchronized进行同步,大大降低了并发访问。
ThreadLocal,实际上应该理解为Thread的局部变量。
把非线程安全的变量与current的线程绑定。每个访问的线程拿到的都是属于自己的一份。
多个线程之间并不是共享实例,而是利 ...
spring 的优点?
1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦
2.可以使用容易提供的众多服务,如事务管理,消息服务等
3.容器提供单例模式支持
4.容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功 ...