- 浏览: 359497 次
- 性别:
- 来自: 深圳
最新评论
-
yuantingjun:
老大,能参考下代码吗?
2天弄了个个人网站 -
yuantingjun:
这么牛啊。 膜拜一二
2天弄了个个人网站 -
guzizai2007:
toknowme 写道兄弟,在哪里买的空间啊~求链接~~阿里云 ...
2天弄了个个人网站 -
toknowme:
兄弟,在哪里买的空间啊~求链接~~
2天弄了个个人网站 -
haoran_10:
不错,赞一个
2天弄了个个人网站
文章列表
1、代理模式:
1)、代理模式:为某一对象提供一种代理来控制别人对这个对象的访问。
2)、代理模式是常用的Java 设计模式,它的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。
2、涉及的角色:
1)、抽象角色:声明真实对象和代理对象的共同接口。
2)、代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对 ...
Java RMI 指的是远程方法调用 (Remote Method Invocation)。它是一种机制,能够让在某个 Java 虚拟机上的对象调用另一个 Java 虚拟机中的对象上的方法。
下面通过一个简单的例子来说明RMI的原理和应用。
1、远程接口Person:
package com.sxit.test;
import java.rmi.Remote;
/**
* 功能:定义一个远程接口,必须继承Remote接口,其中需要远程调用的方法必须抛出RemoteException异常
* 类名:Person
* 作者:smile
* 时间:Nov 10 ...
1、Spring配置文件里使用外部属性文件:
1)、在Spring配置文件中配置数据源或邮件服务器等资源数据时,会直接把账号密码直接写在配置文件中,一种更好的做法是把这些配置信息独立到一个外部属性文件中,并在Spring文件中通过${username}这样的方式来引用属性文件中的属性项。
2)、好处:一是如果多个应用公用一个资源配置信息,一旦资源信息修改,只需要修改属性文件一处,而不用修改多处Spring配置文件。二是维护和部署方便,如果需要修改某个参数,不需要关注结构复杂信息量大的Spring配置文件
2、Spring怎么使用外部属性文件:
1)、Spring提供一个PropertyP ...
1、问题:
java.lang.NoClassDefFoundError: org/aopalliance/intercept/MethodInterceptor
2、解决方案:
1)、缺少aopalliance.jar,引入即可。
1、问题:
Exception in thread "main" org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 1 in XML document from class path resource [Bean3.xml] is invalid; nested exception is org.xml.sax.SAXParseException: White spaces are required between publicId and systemId.
at o ...
1、抽象Bean写法:
<bean id="hello" abstract="true"/>
因为程序实例化容器的时候不会初始化abstract Bean,所以加不加class属性都无关紧要。
2、什么时候会使用到Bean的继承:
1)、应用规模增加,配置文件部分组件重复量增加,即可把这部分重复的配置信息单独调出来,定义成abstract。而实际的Bean配置成它们的子类继承就可以了。
2)、写法如下:
<bean id="chinese" class="com.sxit.service.Chi ...
1、Bean实例的创建方式:
1)、第一种,最普通的,就是在配置文件中声明<bean id = "" class = "" />,需要给出具体实现类。
2)、第二种,静态工厂方法创建,配置文件中不需要配置具体实现类,只需要填上工厂类和相应的工厂类的静态方法名,<bean id = "" class = "工厂类名" factory-method = “静态方法名”/>
3)、第三种,实例工厂方法创建,与静态工厂方法类型,只不过方法不是静态而已,配置文件还需要先声明实例工厂Bean,然后引 ...
1、组合属性名值注入:
package com.sxit.service;
public class Chinese{
private ChinesePerson person = new ChinesePerson();
public ChinesePerson getPerson() {
return person;
}
public void setPerson(ChinesePerson person) {
this.person = person;
}
}
2、xml配置文件:
<?xml version="1 ...
1、嵌套Bean:
<bean id="newPerson" class="com.sxit.service.NewPerson" >
<property name="chinese">
<bean class="com.sxit.service.newChinese"/>
</property>
</bean>
2、嵌套Bean特性:
1)、嵌套Bean只对嵌套在它外面Bean有效,容器无法访问到它,嵌套Bean无需指定id ...
1、Spring容器中Bean的作用域:
1)、singleton:单例模式,在整个Spring容器中,使用singleton来声明的Bean只会有一个实例。
2)、prototype:原型模式,每次通过getBean方法获取以prototype声明的Bean都会是一个新的Bean实例。
3)、request:对于每次HTTP请求,使用request定义的Bean都会产生一个新的Bean实例。
4)、session:对于每次HTTP Session,使用session定义的Bean都将产生一个新实例。
2、 singleton与prototype区别:
1)、singleton作用域 ...
1、Bean如何获取Spring容器:
1)、实际开发中,项目一般都是在web.xml中配置一个监听器来初始化Spring容器,而有时候Bean需要有访问Spring容器的能力,此时有两种方式来获取
2)、第一种:实现BeanFactoryAware接口,这个接口里面有一个方法,void setBeanFactory(BeanFactory beanFactory),方法的参数指向创建这个Bean的BeanFactory。只要Bean实现了这个接口,Spring会自动把当前容器作为参数注入到这个方法中。
3)、与之类似的第二种:实现ApplicationContextAware接口,这个接 ...
1、Spring事件机制:
最重要的两个东西:
1)、ApplicationEvent:容器事件
2)、ApplicationListener:监听器
3)、ApplicationContext是事件源,事件在程序中显示式触发,监听器监听到相应的事件就会做出相应的反应。
2、事件类:
package com.sxit.service;
import org.springframework.context.ApplicationEvent;
public class FishingEvent extends ApplicationEvent{
private Str ...
1、ApplicationContext国际化支持(继承MessageSource类):
package org.springframework.context;
import java.util.Locale;
public interface MessageSource {
String getMessage(String code, Object[] args, String defaultMessage, Locale locale);
String getMessage(String code, Object[] args, Locale locale) ...
1、Spring容器:
1)、Spring容器最基本的接口就是BeanFactory,它负责配置、创建、管理Bean,它有一个子接口:applicationContext,使用它作为Spring容器更为方便。
2)、applicationContext有几个常用的实现类:FileSystemXmlApplicationContext、ClassPathXmlApplicationContext、AnnotationConfigApplicationContext。
2、BeanFactory接口的几个基本方法:
package org.springframework.beans.fact ...
1、依赖注入第二种方式(构造注入):在构造实例的时候,已经为其完成了依赖关系的初始化。
2、修改Chinese类:
package com.sxit.service.impl;
import com.sxit.service.FishingRod;
import com.sxit.service.Person;
public class Chinese implements Person {
private FishingRod fishingRod; //鱼竿
//带参数的构造器
public Chinese (FishingRod fishingRod ...