<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 命名空间, 该命名空间对注释驱动,属性文件引入,加载期织入等功能提供了便捷的配置,也就是免去了配置每个注释的处理类,默认会注册:
AutowiredAnnotationBeanPostProcessor
、CommonAnnotationBeanPostProcessor
、PersistenceAnnotationBeanPostProcessor
以及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,该语句会默认引入
AutowiredAnnotationBeanPostProcessor
、CommonAnnotationBeanPostProcessor,所以可以不用
<context : annotation-config/>
------------------------------------------------------------------------------------------------------------------------------------------------------------
xml方式和注释方式使用挑选各自优缺:
1、注释是在Java源码上面,如果需要在某个地方加入bean,那就需要调整Java源码,然后重新编译,而XML直接修改就可以了
2、如果bean不是自己写的类,而是Java里面的,那么注释就没法用了。
3、注释配置往往是类级别的,而 XML 配置则可以表现得更加灵活。比如相比于
@Transaction
事务注释,使用 aop/tx 命名空间的事务配置更加灵活和简单。
相关推荐
它可能包括以下几个部分: 1. **需求分析**:定义了系统应具备的功能,例如学生注册登录、课程浏览、选课操作等。 2. **系统设计**:涵盖了架构设计、模块划分以及数据库设计,展示了如何用SSM框架来实现这些功能。...
首先,我们要理解JavaWeb的基本构成。JavaWeb开发主要基于Servlet、JSP(JavaServer Pages)以及JavaBean等技术。Servlet是Java实现的服务器端组件,负责处理HTTP请求;JSP则是动态网页生成工具,将业务逻辑与展示...
5. 特殊字符:XML中有几个特殊字符需要转义,如`表示小于号,`>`表示大于号,`&`表示和号,`"`表示双引号,`'`表示单引号。 为了确保XML文档的数据有效性,可以使用XML约束模式,如DTD(Document Type Definition)...
在JavaWeb中,主要涉及以下几个步骤: 1. **表单设置**: HTML表单需要设置`enctype="multipart/form-data"`,这样才能上传文件。 2. **Servlet处理**: 使用`HttpServletRequest`的`getPart()`或`getParts()`方法...
在学习和实施这个项目时,你需要理解以下几个关键技术点: - **Java Servlet**:作为服务器端的基石,处理HTTP请求并生成响应。 - **JSP(JavaServer Pages)**:用于动态生成HTML页面,与Servlet配合使用,使前端和...
JavaWeb程序设计主要涵盖以下几个核心知识点: 1. **Web服务器**:常见的Web应用服务器有Tomcat和WebLogic。在开发JavaWeb程序时,通常选择Tomcat作为服务器,因为它是开源的,轻量级且易于使用。 2. **Eclipse...
SSM框架的选课系统开发可能涵盖以下几个关键知识点: 1. **Spring框架**:理解IoC(Inversion of Control,控制反转)和DI(Dependency Injection,依赖注入)的概念,以及如何通过Spring管理Bean的生命周期。 2. ...
在本课程设计中,核心功能包括以下几个部分: 1. 用户模块:用户注册、登录功能是任何系统的基础。这通常涉及数据库操作,如存储用户信息,以及验证用户输入的安全性,防止SQL注入等安全问题。 2. 作业提交模块:...
【JavaWeb技术基础】 JavaWeb是一种基于Java技术的Web应用程序开发框架,用于构建动态网站、...通过这个课程设计,学生不仅可以深化对JavaWeb技术的理解,还能锻炼实际项目开发能力,为未来的职业生涯打下坚实基础。
书城项目的源码通常会包含以下几个部分: 1. **控制器层(Controller)**:处理HTTP请求,转发到相应的服务层方法。 2. **服务层(Service)**:实现业务逻辑,可能是基于DAO层进行数据操作。 3. **数据访问层(DAO...
共介绍了10个项目案例,具体地向读者介绍了Java EE开发的整个流程,涵盖了目前几个比较流行的开源框架,如Struts、JSF、Spring、Hibernate,同时还有用于分布式企业级开发的EJB技术。在项目的开发过程中,笔者还多次...
项目功能主要包括以下几个方面: 1. 志愿者注册与登录:志愿者可以通过注册功能创建账号,并通过登录功能进入系统。 2. 志愿者信息管理:管理员可以对志愿者的基本信息进行管理,包括姓名、性别、年龄、联系方式等...
本书结合具体的项目案例向读者介绍了Java EE开发的整个流程,本书共介绍了10个项目案例,涵差了目前几个比较流行的开源框架,如Srruts、Spring、Hibemue、JSF,同时还有用于分布式企业锯开发的EJB技术,在项目的开发...
以下将详细阐述分页实现的几个关键步骤: 1. **数据查询**:首先,我们需要从数据库中获取数据。通常使用SQL的`LIMIT`和`OFFSET`关键字来限制返回的数据量,例如,如果每页显示10条记录,第一页的查询语句会是`...
这个源码项目通常包含以下几个关键知识点: 1. **Java Web基础**:Java Web是Java技术在Web开发中的应用,包括Servlet、JSP(JavaServer Pages)、JSTL(JavaServer Pages Standard Tag Library)等,这些技术用于...
为了实现这些功能,项目会包含以下几个主要模块: 1. 商品管理:展示商品信息,支持商品的增加、删除、修改和查询。 2. 用户系统:用户注册、登录、个人信息管理。 3. 购物车:添加、删除商品,调整数量,计算总价。...
"AssetsManager"通常包含以下几个核心功能: 1. **路径配置**:开发者可以通过配置文件定义静态资源的路径,支持相对路径和绝对路径,方便资源的组织和查找。 2. **资源合并**:为了减少网络请求,AssetsManager...
《30天学通Java Web项目案例开发》结合具体的项目案例向读者介绍了Java EE开发的整个流程,《30天学通Java Web项目案例开发》共介绍了10个项目案例,涵盖了目前几个比较流行的开源框架,如Struts、Spring、Hibernate...
SSM整合的流程通常包括以下几个步骤: 1. **配置Spring**:编写Spring的配置文件,如`beans.xml`,用于定义Bean的实例化和依赖注入。 2. **配置SpringMVC**:编写`dispatcher-servlet.xml`,配置SpringMVC的...
根据课程内容,可以将其大致划分为以下几个方面: 1. **第1章:JSP概述** - **JSP技术概述**:介绍JSP技术的发展历程、特点及优势。 - **JSP技术特征**:详细讲解JSP与其他Web开发技术的区别,如Servlet、PHP等。...