`
什么都不懂的孩子
  • 浏览: 28031 次
社区版块
存档分类
最新评论

Javaweb Spring几个基本注释

 
阅读更多

<div class="iteye-blog-content-contain" style="font-size: 14px"></div>

 一、@Autowired注解:

     如要仅仅使用此注解,需要在spring容器中声明该注解的解析Bean:
          
          <bean class="org.springframework.beans.factory.annotation.                                                                AutowiredAnnotationBeanPostProcessor"/>
 
     该bean会自动扫描spring中所有autowired注解,默认是类型匹配。
     当所自动注入的bean超过1个,或者没有时,都会报BeanCreationException
     该注解可以用在变量上面,方法,构造方法上面,对方法传入的参数进行注入
 
二、@Qualifier注解:
     该注解制定autowired注入bean的名称,所以它是对变量注释的:
     
     @Autowired   
     public Boss(Car car , @Qualifier("office")Office office){
         //方法体
     };
 
     
     @Autowired   
     @Qualifier("office")   
     private Office office;
 
三、@Resource
     作用和@Autowired 一样,但是它默认是根据类型来注入,也可更改为type,在lib/j2ee/common-annotations.jar包中,在xml文件中声明:
     
<bean class="org.springframework.context.annotation.CommonAnnotationBeanPostProcessor"/>
 
四、@preConstruct  @preDistory
     这两个注释是在bean实例化和销毁前执行的方法注释,也就是说,注释在方法上面。这两个注释的功能,也可以通过<bean>元素的 init-method/destory-method来配置
 
 
五、<context : annotation-config/>简化配置
     在xml文件中配置这句话,就不需要一一引入每种注释的处理类了
     spring 2.x 中对context引入了一个新的Schema 命名空间, 该命名空间对注释驱动,属性文件引入,加载期织入等功能提供了便捷的配置,也就是免去了配置每个注释的处理类,默认会注册:AutowiredAnnotationBeanPostProcessorCommonAnnotationBeanPostProcessorPersistenceAnnotationBeanPostProcessor 以及equiredAnnotationBeanPostProcessor 这 4 个 BeanPostProcessor。
在配置文件中使用 context 命名空间之前,必须在 <beans> 元素中声明 context 命名空间。
 
————————————————————可以把类定义成bean的注解-------------------------------------------------------------
六、@Component
     在spring2.5中提供该注释,可以直接定义bean,它是个泛泛的概念,可以定义在任何层次(dao、service、controller...)上
 
七、@Repository
     只能定义在Dao层,因为该注解不仅仅是将类识别为bean,而且还能将类所抛出的数据访问异常封装成为spring的数据访问异常,使得异常独立于底层框架
 
八、@Service
     标注在业务层上
 
 
九、@Controller
     标注在控制层,@Controller(“name”)  @Controller(value=“name”)意思是告诉spring注册bean的时候,把bean名字设为name
 
 
十、@Scope(“singleton”||”prototype")
     该注释是告诉该类在创建bean的时候,是以单例模式,还是每次都重新创建,默认单例。
     可以避免struts里面线程安全问题
 
使用这几个注解,spring会自动创建相应的bean并注册到applicationContext中,默认都是sigleton模式
 
 
<context : component-scan base-package=“”> 扫描子包中上面四个注释,然后注册成bean,该语句会默认引入AutowiredAnnotationBeanPostProcessorCommonAnnotationBeanPostProcessor,所以可以不用
<context : annotation-config/>
------------------------------------------------------------------------------------------------------------------------------------------------------------
 
 
xml方式和注释方式使用挑选各自优缺:
     1、注释是在Java源码上面,如果需要在某个地方加入bean,那就需要调整Java源码,然后重新编译,而XML直接修改就可以了
     2、如果bean不是自己写的类,而是Java里面的,那么注释就没法用了。
     3、注释配置往往是类级别的,而 XML 配置则可以表现得更加灵活。比如相比于 @Transaction 事务注释,使用 aop/tx 命名空间的事务配置更加灵活和简单。
 
 
3
2
分享到:
评论

相关推荐

    JavaWeb程序设计SSM框架选课系统开发大作业有数据库文件,课程报告书,数据库和项目都有有详细的注释

    它可能包括以下几个部分: 1. **需求分析**:定义了系统应具备的功能,例如学生注册登录、课程浏览、选课操作等。 2. **系统设计**:涵盖了架构设计、模块划分以及数据库设计,展示了如何用SSM框架来实现这些功能。...

    javaWeb项目源码网络在线考试系统.rar

    首先,我们要理解JavaWeb的基本构成。JavaWeb开发主要基于Servlet、JSP(JavaServer Pages)以及JavaBean等技术。Servlet是Java实现的服务器端组件,负责处理HTTP请求;JSP则是动态网页生成工具,将业务逻辑与展示...

    JavaWeb开发_XML

    5. 特殊字符:XML中有几个特殊字符需要转义,如`表示小于号,`&gt;`表示大于号,`&`表示和号,`"`表示双引号,`'`表示单引号。 为了确保XML文档的数据有效性,可以使用XML约束模式,如DTD(Document Type Definition)...

    javaWeb分页和文件上传

    在JavaWeb中,主要涉及以下几个步骤: 1. **表单设置**: HTML表单需要设置`enctype="multipart/form-data"`,这样才能上传文件。 2. **Servlet处理**: 使用`HttpServletRequest`的`getPart()`或`getParts()`方法...

    毕设课设-简易购物车javaweb购物车项目.zip

    在学习和实施这个项目时,你需要理解以下几个关键技术点: - **Java Servlet**:作为服务器端的基石,处理HTTP请求并生成响应。 - **JSP(JavaServer Pages)**:用于动态生成HTML页面,与Servlet配合使用,使前端和...

    JavaWeb程序设计教程.doc

    JavaWeb程序设计主要涵盖以下几个核心知识点: 1. **Web服务器**:常见的Web应用服务器有Tomcat和WebLogic。在开发JavaWeb程序时,通常选择Tomcat作为服务器,因为它是开源的,轻量级且易于使用。 2. **Eclipse...

    JavaWeb程序设计SSM框架选课系统开发大作业有数据库文件,课程报告

    SSM框架的选课系统开发可能涵盖以下几个关键知识点: 1. **Spring框架**:理解IoC(Inversion of Control,控制反转)和DI(Dependency Injection,依赖注入)的概念,以及如何通过Spring管理Bean的生命周期。 2. ...

    javaweb课程设计大作业,教学课后辅导交流系统.zip

    在本课程设计中,核心功能包括以下几个部分: 1. 用户模块:用户注册、登录功能是任何系统的基础。这通常涉及数据库操作,如存储用户信息,以及验证用户输入的安全性,防止SQL注入等安全问题。 2. 作业提交模块:...

    JavaWeb 华北理工大学 课程设计 课设.pdf

    【JavaWeb技术基础】 JavaWeb是一种基于Java技术的Web应用程序开发框架,用于构建动态网站、...通过这个课程设计,学生不仅可以深化对JavaWeb技术的理解,还能锻炼实际项目开发能力,为未来的职业生涯打下坚实基础。

    bookshop 书城项目源码及jar包

    书城项目的源码通常会包含以下几个部分: 1. **控制器层(Controller)**:处理HTTP请求,转发到相应的服务层方法。 2. **服务层(Service)**:实现业务逻辑,可能是基于DAO层进行数据操作。 3. **数据访问层(DAO...

    《亮剑Java Web项目开发案例导航》光盘镜像

    共介绍了10个项目案例,具体地向读者介绍了Java EE开发的整个流程,涵盖了目前几个比较流行的开源框架,如Struts、JSF、Spring、Hibernate,同时还有用于分布式企业级开发的EJB技术。在项目的开发过程中,笔者还多次...

    [计算机Java毕业设计]ssm框架基于javaweb的防疫工作志愿者服务平台的设计与实现+jsp+程序源代码+论文.rar

    项目功能主要包括以下几个方面: 1. 志愿者注册与登录:志愿者可以通过注册功能创建账号,并通过登录功能进入系统。 2. 志愿者信息管理:管理员可以对志愿者的基本信息进行管理,包括姓名、性别、年龄、联系方式等...

    30天学通Java_Web项目案例开发

    本书结合具体的项目案例向读者介绍了Java EE开发的整个流程,本书共介绍了10个项目案例,涵差了目前几个比较流行的开源框架,如Srruts、Spring、Hibemue、JSF,同时还有用于分布式企业锯开发的EJB技术,在项目的开发...

    JAVA Web分页实例代码

    以下将详细阐述分页实现的几个关键步骤: 1. **数据查询**:首先,我们需要从数据库中获取数据。通常使用SQL的`LIMIT`和`OFFSET`关键字来限制返回的数据量,例如,如果每页显示10条记录,第一页的查询语句会是`...

    Java Web 商城源码

    这个源码项目通常包含以下几个关键知识点: 1. **Java Web基础**:Java Web是Java技术在Web开发中的应用,包括Servlet、JSP(JavaServer Pages)、JSTL(JavaServer Pages Standard Tag Library)等,这些技术用于...

    ssh商城项目

    为了实现这些功能,项目会包含以下几个主要模块: 1. 商品管理:展示商品信息,支持商品的增加、删除、修改和查询。 2. 用户系统:用户注册、登录、个人信息管理。 3. 购物车:添加、删除商品,调整数量,计算总价。...

    AssetsManager.zip

    "AssetsManager"通常包含以下几个核心功能: 1. **路径配置**:开发者可以通过配置文件定义静态资源的路径,支持相对路径和绝对路径,方便资源的组织和查找。 2. **资源合并**:为了减少网络请求,AssetsManager...

    《30天学通Java Web项目案例开发》PDF

    《30天学通Java Web项目案例开发》结合具体的项目案例向读者介绍了Java EE开发的整个流程,《30天学通Java Web项目案例开发》共介绍了10个项目案例,涵盖了目前几个比较流行的开源框架,如Struts、Spring、Hibernate...

    SSM整合_年轻人的第一个增删改查_基础环境搭建.doc

    SSM整合的流程通常包括以下几个步骤: 1. **配置Spring**:编写Spring的配置文件,如`beans.xml`,用于定义Bean的实例化和依赖注入。 2. **配置SpringMVC**:编写`dispatcher-servlet.xml`,配置SpringMVC的...

    WEB程序设计(第1章 JSP概述)

    根据课程内容,可以将其大致划分为以下几个方面: 1. **第1章:JSP概述** - **JSP技术概述**:介绍JSP技术的发展历程、特点及优势。 - **JSP技术特征**:详细讲解JSP与其他Web开发技术的区别,如Servlet、PHP等。...

Global site tag (gtag.js) - Google Analytics