<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 閱讀(249) 評論(0)  編輯  收藏 所屬分類: spring
    主站蜘蛛池模板: AV在线播放日韩亚洲欧| 少妇高潮太爽了在线观看免费| 91久久亚洲国产成人精品性色 | 亚洲人成网亚洲欧洲无码| 亚洲.国产.欧美一区二区三区| 妇女自拍偷自拍亚洲精品| 日韩高清在线高清免费| 亚洲日韩精品A∨片无码加勒比| 妞干网在线免费视频| 亚洲国产精品美女久久久久| 午夜免费福利在线| 妇女自拍偷自拍亚洲精品| 日韩亚洲精品福利| 亚洲伊人久久大香线蕉苏妲己| a级毛片免费高清毛片视频| 国产精品亚洲A∨天堂不卡| 亚洲色大成WWW亚洲女子| 91免费国产视频| 久久久亚洲精品无码| 中文字幕在线免费| 亚洲第一男人天堂| 无码AV片在线观看免费| 亚洲特级aaaaaa毛片| 国产精品极品美女自在线观看免费| 999国内精品永久免费观看| 久久久久久久亚洲精品| 美女视频黄a视频全免费网站色窝 美女被cao网站免费看在线看 | 亚洲高清中文字幕免费| 国产大片91精品免费观看男同| 一级全免费视频播放| 亚洲AV中文无码乱人伦下载| 色天使色婷婷在线影院亚洲| 亚洲精品国产自在久久| 最近的2019免费中文字幕| 亚洲精品视频在线观看视频| 日韩一品在线播放视频一品免费| 一区二区免费国产在线观看| 亚洲色大成网站www永久| 国产一级理论免费版| 日本亚洲免费无线码| 无码日韩精品一区二区免费|