找不到这个类org.apache.oro.text.regex.MalformedPatternException
缺少jakarta-oro.jar包的原因
现在已经调试好了,没问题的了
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="daili" class="org.eimhe.Dai3.Daili" abstract="false"
singleton="true" lazy-init="default" autowire="default"
dependency-check="default">
</bean>
<bean id="pc1" class="org.eimhe.Dai3.Computer" abstract="false"
singleton="true" lazy-init="default" autowire="default"
dependency-check="default">
</bean>
<bean id="proxy"
class="org.springframework.aop.framework.ProxyFactoryBean"
abstract="false" singleton="true" lazy-init="default"
autowire="default" dependency-check="default">
<property name="target">
<ref bean="pc1" />
</property>
<property name="proxyInterfaces">
<value>org.eimhe.Dai3.PCIntef</value>
</property>
<property name="interceptorNames">
<list>
<value>buyadvisor</value>
</list>
</property>
</bean>
<bean id="buyadvisor"
class="org.springframework.aop.support.RegexpMethodPointcutAdvisor"
abstract="false" singleton="true" lazy-init="default"
autowire="default" dependency-check="default">
<property name="advice">
<ref bean="daili" />
</property>
<property name="patterns">
<value>.*buy.*</value>
</property>
</bean>
</beans>
TestMain.java
package org.eimhe.Dai3;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
public class TestMain {
public static void main(String[] args){
ApplicationContext context=null;
context=new FileSystemXmlApplicationContext("src/org/eimhe/applicationContext.xml");
PCIntef pc=(PCIntef)context.getBean("proxy");
pc.buySome();
}
}
Daili.java
package org.eimhe.Dai3;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
public class Daili implements MethodInterceptor {
public Object invoke(MethodInvocation arg0) throws Throwable {
System.out.println("送鼠标");
Object result=arg0.proceed();
return result;
}
}
PCIntef.java
package org.eimhe.Dai3;
public interface PCIntef {
public void buyPC();
public void buySome();
}
Computer.java
package org.eimhe.Dai3;
public class Computer implements PCIntef{
private String pcName="1x001";
private int pcPrice=3000;
// private boolean isMouse=false;
// public boolean isMouse() {
// return isMouse;
// }
//
// public void setMouse(boolean isMouse) {
// this.isMouse = isMouse;
// }
public String getPcName() {
return pcName;
}
public void setPcName(String pcName) {
this.pcName = pcName;
}
public int getPcPrice() {
return pcPrice;
}
public void setPcPrice(int pcPrice) {
this.pcPrice = pcPrice;
}
// public void buy(){
// System.out.println("获取:"+pcName+"电脑一台");
// }
public void buySome(){
System.out.println("买一个显示器");
}
public void buyPC() {
System.out.println("获取:"+pcName+"电脑一台");
}
}