zoukankan      html  css  js  c++  java
  • 吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:Spring_FilterScan

    <?xml version="1.0" encoding="GBK"?>
    <project name="spring" basedir="." default="">
        <property name="src" value="src"/>
        <property name="dest" value="classes"/>
    
        <path id="classpath">
            <fileset dir="../../lib">
                <include name="**/*.jar"/>
            </fileset>
            <pathelement path="${dest}"/>
        </path>
    
        <target name="compile" description="Compile all source code">
            <delete dir="${dest}"/>
            <mkdir dir="${dest}"/>
            <copy todir="${dest}">
                <fileset dir="${src}">
                    <exclude name="**/*.java"/>
                </fileset>        
            </copy>
            <javac destdir="${dest}" debug="true" includeantruntime="yes"
                deprecation="false" optimize="false" failonerror="true">
                <src path="${src}"/>
                <classpath refid="classpath"/>
                <compilerarg value="-Xlint:deprecation"/>
            </javac>
        </target>
    
        <target name="run" description="Run the main class" depends="compile">
            <java classname="lee.BeanTest" fork="yes" failonerror="true">
                <classpath refid="classpath"/>
            </java>
        </target>
    
    </project>
    <?xml version="1.0" encoding="GBK"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:context="http://www.springframework.org/schema/context"
        xsi:schemaLocation="http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-4.0.xsd">
        <!-- 自动扫描指定包及其子包下的所有Bean类 -->
        <context:component-scan 
            base-package="org.crazyit.app.service">
            <!-- 只将以Chinese、Axe结尾的类当成Spring容器中的Bean -->
            <context:include-filter type="regex"
                expression=".*Chinese"/>
            <context:include-filter type="regex"
                expression=".*Axe"/>
        </context:component-scan>
    </beans>
    package lee;
    
    import org.springframework.context.*;
    import org.springframework.context.support.*;
    /**
     * Description:
     * <br/>网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
     * <br/>Copyright (C), 2001-2016, Yeeku.H.Lee
     * <br/>This program is protected by copyright laws.
     * <br/>Program Name:
     * <br/>Date:
     * @author  Yeeku.H.Lee kongyeeku@163.com
     * @version  1.0
     */
    public class BeanTest
    {
        public static void main(String[] args)
        {
            //创建Spring容器
            ApplicationContext ctx = new
                ClassPathXmlApplicationContext("beans.xml");
            //获取Spring容器中的所有Bean实例的名
            System.out.println("--------------" +
                java.util.Arrays.toString(ctx.getBeanDefinitionNames()));
        }
    }
    package org.crazyit.app.service;
    
    /**
     * Description:
     * <br/>网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
     * <br/>Copyright (C), 2001-2016, Yeeku.H.Lee
     * <br/>This program is protected by copyright laws.
     * <br/>Program Name:
     * <br/>Date:
     * @author  Yeeku.H.Lee kongyeeku@163.com
     * @version  1.0
     */
    public interface Axe
    {
        public String chop();
    }
    package org.crazyit.app.service;
    
    /**
     * Description:
     * <br/>网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
     * <br/>Copyright (C), 2001-2016, Yeeku.H.Lee
     * <br/>This program is protected by copyright laws.
     * <br/>Program Name:
     * <br/>Date:
     * @author  Yeeku.H.Lee kongyeeku@163.com
     * @version  1.0
     */
    public interface Person
    {
        public void useAxe();
    }
    package org.crazyit.app.service.impl;
    
    import org.springframework.stereotype.*;
    
    import org.crazyit.app.service.*;
    /**
     * Description:
     * <br/>网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
     * <br/>Copyright (C), 2001-2016, Yeeku.H.Lee
     * <br/>This program is protected by copyright laws.
     * <br/>Program Name:
     * <br/>Date:
     * @author  Yeeku.H.Lee kongyeeku@163.com
     * @version  1.0
     */
    public class Chinese implements Person
    {
        private Axe axe;
        // axe的setter方法
        public void setAxe(Axe axe)
        {
            this.axe = axe;
        }
        // 实现Person接口的useAxe()方法
        public void useAxe()
        {
            // 调用axe的chop()方法,
            // 表明Person对象依赖于axe对象
            System.out.println(axe.chop());
        }
    }
    package org.crazyit.app.service.impl;
    
    import org.springframework.stereotype.*;
    
    import org.crazyit.app.service.*;
    /**
     * Description:
     * <br/>网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
     * <br/>Copyright (C), 2001-2016, Yeeku.H.Lee
     * <br/>This program is protected by copyright laws.
     * <br/>Program Name:
     * <br/>Date:
     * @author  Yeeku.H.Lee kongyeeku@163.com
     * @version  1.0
     */
    public class SteelAxe implements Axe
    {
        public String chop()
        {
            return "钢斧砍柴真快";
        }
    }
    package org.crazyit.app.service.impl;
    
    import org.springframework.stereotype.*;
    
    import org.crazyit.app.service.*;
    /**
     * Description:
     * <br/>网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
     * <br/>Copyright (C), 2001-2016, Yeeku.H.Lee
     * <br/>This program is protected by copyright laws.
     * <br/>Program Name:
     * <br/>Date:
     * @author  Yeeku.H.Lee kongyeeku@163.com
     * @version  1.0
     */
    public class StoneAxe implements Axe
    {
        public String chop()
        {
            return "石斧砍柴好慢";
        }
    }
  • 相关阅读:
    电商框架
    激光推送
    requirejs的用法(二)
    requirejs(一)
    AngularJs表单验证
    angularjs学习资料
    AngularJS内置指令
    angularjs 指令详解
    ASP.NET MVC5 + EF6 入门教程 (5) Model和Entity Framework
    EF框架step by step(9)—Code First Fluent API
  • 原文地址:https://www.cnblogs.com/tszr/p/12372130.html
Copyright © 2011-2022 走看看