<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>


    posts - 10,comments - 4,trackbacks - 0

    接口修改為
    package net.blogjava.dodoma.spring.aop;

    public interface HelloI {
    ?public String sayHello(String firstName,String lastName)throws Exception;
    ?}

    類修改為
    package net.blogjava.dodoma.spring.aop;

    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;

    public class Hello implements HelloI {
    ?protected static final Log log=LogFactory.getLog(Hello.class);
    ?private String msg;
    ?public Hello(){}
    ?public Hello(String msg){
    ??this.msg=msg;
    ?}
    ?
    ?public String getMsg() {
    ??return msg;
    ?}
    ?public void setMsg(String msg) {
    ??this.msg = msg;
    ?}
    ?public String sayHello(String firstName, String lastName) throws Exception{
    ??// TODO Auto-generated method stub
    ??log.info("in the class "+this.getClass().getName()+"'s method sayHello()");
    ? throw new Exception("here is a exception !");
    ??return (msg+" "+firstName+" "+lastName);
    ?}
    }



    package net.blogjava.dodoma.spring.aop;

    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    import org.springframework.aop.ThrowsAdvice;

    public class LogThrowAdvice implements ThrowsAdvice {
    ?protected static final Log log = LogFactory.getLog(LogThrowAdvice.class);
    ?public void afterThrowing(Exception e)throws Throwable{
    ??log.info("in the class "+this.getClass().getName()+"'s method afterThrowing()");
    ??log.info("the exception is "+e.getMessage());
    ?}
    }


    package net.blogjava.dodoma.spring.aop;

    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    import org.springframework.aop.framework.ProxyFactory;
    import org.springframework.beans.factory.BeanFactory;
    import org.springframework.beans.factory.xml.XmlBeanFactory;
    import org.springframework.core.io.ClassPathResource;
    import org.springframework.core.io.Resource;

    public class HelloTest {
    ?protected static final Log log = LogFactory.getLog(HelloTest.class);

    ?/**
    ? * @param args
    ? * @throws Exception
    ? */
    ?public static void main(String[] args) throws Exception {
    ??// TODO Auto-generated method stub
    ??Resource rs = new ClassPathResource("beans.xml");
    ??BeanFactory bf = new XmlBeanFactory(rs);

    ??HelloI h = (HelloI) bf.getBean("theBean");
    ??log.info("starting...");
    ??try {
    ???log.info(h.sayHello("ma", "bin"));
    ??} catch (Exception e) {
    ???e.printStackTrace();
    ??}
    ??log.info("end...");
    ??
    ??
    ??ProxyFactory factory=new ProxyFactory();
    ??factory.addAdvice(new LogThrowAdvice ());
    ??factory.setTarget(new Hello("hello"));
    ??try{
    ??HelloI hi=(HelloI)factory.getProxy();
    ??hi.sayHello("ma","bin");}
    ??catch(Exception e){e.printStackTrace();}
    ?}

    }

    posted on 2006-03-28 12:57 dodoma 閱讀(243) 評論(0)  編輯  收藏 所屬分類: spring
    主站蜘蛛池模板: 国产真人无遮挡作爱免费视频 | 99免费在线视频| 亚洲AV午夜成人片| 无码区日韩特区永久免费系列| 亚洲男人的天堂久久精品| 日韩一品在线播放视频一品免费| 一级毛片完整版免费播放一区| 亚洲AV福利天堂一区二区三| 成年人性生活免费视频| 成人精品视频99在线观看免费| 亚洲美女精品视频| 午夜亚洲国产成人不卡在线| 最近免费最新高清中文字幕韩国| 国产成人高清亚洲一区91| 亚洲色图国产精品| 免费在线观看一级毛片| 亚欧免费一级毛片| 在线91精品亚洲网站精品成人| 亚洲日本中文字幕| 亚洲精品成人片在线观看| 99久久99这里只有免费费精品 | 成年女人免费视频播放体验区| 99热在线日韩精品免费| 亚洲a∨国产av综合av下载 | 亚洲国产综合精品中文第一区| 日本不卡高清中文字幕免费| 久久综合国产乱子伦精品免费| 深夜福利在线免费观看| 亚洲乱码中文字幕小综合| 亚洲国产精品高清久久久| 国产免费私拍一区二区三区| 最近中文字幕大全中文字幕免费| 久久www免费人成精品香蕉| 亚洲狠狠婷婷综合久久蜜芽| 亚洲视频在线观看网站| 亚洲色中文字幕无码AV| 四虎亚洲国产成人久久精品| 无码人妻久久一区二区三区免费丨| 嫩草影院在线播放www免费观看| 污视频网站免费观看| 久久亚洲精品无码网站|