一、注解

  使用注解之前要开启自动扫描功能

<?xml version="1.0" encoding="UTF-8"?>
<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.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd
"> <context:component-scan base-package="SpringAnnotationBll,SpringAnnotationDal" />
</beans>

二、结构代码

    

三、常用注解

    @Service用于标注业务层组件、 
    @Controller用于标注控制层组件(如struts中的action)
    @Repository用于标注数据访问组件,即DAO组件。
    @Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
    @Scope用于指定scope作用域的(用在类上)

四、实例

  4.1、dao层代码
package SpringAnnotationDal;

public interface SpringAnnotationDal {

	public abstract void add();

}
package SpringAnnotationDal;

import org.springframework.stereotype.Repository;

@Repository
public class SpringAnnotationDalBean implements SpringAnnotationDal { /* (non-Javadoc)
* @see SpringAnnotationDal.SpringAnnotationDal#add()
*/
public void add()
{
System.out.print("add...");
}
} 
  4.2、service层代码
package SpringAnnotationBll;

public interface SpringAnnotationBll {

	public abstract void add();

}
package SpringAnnotationBll;

import org.springframework.stereotype.Service;

import SpringAnnotationDal.SpringAnnotationDal;
@Service
public class SpringAnnotaionBllBean implements SpringAnnotationBll { private SpringAnnotationDal springAnnotationDal;
public SpringAnnotationDal getSpringAnnotationDal() {
return springAnnotationDal;
}
public void setSpringAnnotationDal(SpringAnnotationDal springAnnotationDal) {
this.springAnnotationDal = springAnnotationDal;
}
public void add()
{
System.out.print("add...");
}
}
  4.3、调用
package test;

import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext; import SpringAnnotationBll.SpringAnnotationBll;
import spring.testServiceBean; public class cservlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
SpringAnnotationBll services=(SpringAnnotationBll)context.getBean("springAnnotaionBllBean");
services.add();
} } 

五、结果

 

Java 系列之spring学习--注解(三)的更多相关文章

  1. Java 系列之spring学习--springmvc注解方式(五)

    一.springmvc注解方式 注解方式使用的更多,更加灵活.在上一篇的博客的基础上修改springmvc-servlet.xml配置文件. <?xml version="1.0&qu ...

  2. Java 系列之spring学习--springmvc注解参数传递(六)

    一.绑定参数注解如下 @RequestParam     绑定单个请求数据,既可以是URL中的参数,也可以是表单提交的参数或上传的文件. 它有三个属性:  value    用于设置参数名. defa ...

  3. Java 系列之spring学习--spring搭建(一)

    一.新建maven项目 二.引入spring jar包 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xs ...

  4. Java 系列之spring学习--springmvc搭建(四)

    一.建立java web 项目 二.添加jar包 spring jar包下载地址http://repo.spring.io/release/org/springframework/spring/ 2. ...

  5. Java 系列之spring学习--依赖注入(二)

    一.依赖注入的三种方式 接口注入,set注入,构造函数注入 二.构造函数注入 2.1.测试类 package test; public class test01 { public String msg ...

  6. Spring注解 系列之Spring常用注解总结

    参考:Spring系列之Spring常用注解总结 (1) Resource 默认是byName的方式进行bean配置,@AutoWired默认是按照byType的方式进行装配bean的:(2)Comp ...

  7. Spring系列之Spring常用注解总结 转载

    Spring系列之Spring常用注解总结   传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点:1.如果所有的内容都配置在.xml文件中,那么.x ...

  8. spring 学习(三):aop 学习

    spring 学习(三):aop 学习 aop 概念 1 aop:面向切面(方面)编程,扩展功能不修改源代码实现 2 AOP采取横向抽取机制,取代了传统纵向继承体系重复性代码 3 aop底层使用动态代 ...

  9. MyEclipse Spring 学习总结三 SpringMVC

    MyEclipse Spring 学习总结三 SpringMVC 一.SpringMVC原理 1.Springmvc 框架介绍 1)Spring 框架停工了构建Web应用程序的全功能MVC模块.Spr ...

随机推荐

  1. java操作Excel的poi的导出Excel表格

    页面布局 点击导出用户:触发函数,直接访问后台 后台方法如下: public String export()throws Exception{ Connection con=null; try { c ...

  2. SSL证书在线申请和取回证书指南

    1.客服下单后用户会收到一封邮件,来验证接收证书的邮箱;如图1所示:只有完成此邮箱验证才能正常申请证书; 请注意:为了确保您或您的用户能正常收到WoSign证书管理系统自动发送的邮件,请一定要把系统发 ...

  3. RBM(受限玻尔兹曼机)和深层信念网络(Deep Brief Network)

    目录: 一.RBM 二.Deep Brief Network 三.Deep Autoencoder 一.RBM 1.定义[无监督学习] RBM记住三个要诀:1)两层结构图,可视层和隐藏层:[没输出层] ...

  4. 进程(day09)

    进程的管理 一.进程的基础 进程和程序的区别 每个进程有自己的pid.PCB 操作系统上运行的所有进程构成一颗树. 如何查看这颗树? pstree() 树根进程是init pid是 进程间的亲缘关系两 ...

  5. MYSQL(一) 简单语法

    MYSQL(一) 简单语法 1.默认约束:mysql里面DEFAULT关键字后面是不用加括号的 --1.1 创建数据库 mysql> create database holly; Query O ...

  6. 什么是hashMap,初始长度,高并发死锁,java8 hashMap做的性能提升

    问题1:HashM安排的初始长度,为什么? 初始长度是 16,每次扩展或者是手动初始化,长度必须是 2的幂. 因为: index = HashCode(Key) & (length - 1), ...

  7. hibernate4.3版本构造SessionFactory方法

    hibernate3.X构造SessionFactory方法 //读取hibernate.cfg.xml文件 Configuration cfg = new Configuration().confi ...

  8. 0320SQL中的where条件,在数据库中提取与应用浅析

    转自 何登成的技术博客 追求技术的道路上,10年如一日     首页 关于我 RSS 订阅 © 2012-2017 何登成的技术博客   SQL中的where条件,在数据库中提取与应用浅析 3月 3r ...

  9. GetBulkRequest PDU的应用

    http://blog.csdn.net/wenph2008/article/details/16821617

  10. 【ACM】poj_2092_Grandpa is Famous_201308021920

    Grandpa is FamousTime Limit: 2000MS  Memory Limit: 30000K Total Submissions: 7256  Accepted: 3670 De ...