• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >JSP > Spring中常用注解的详细介绍

Spring中常用注解的详细介绍

作者:H_Gao 字体:[增加 减小] 来源:互联网 时间:2017-05-11

H_Gao通过本文主要向大家介绍了springmvc详细教程,spring详细教程,springmvc详细配置,springmvc常用注解,springmvc注解等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

spring中使用注解时配置文件的写法:

<?xml version="1.0" encoding="UTF-8"?> 
<span style="font-size:18px;"><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" 
 xmlns:aop="http://www.springframework.org/schema/aop" 
 xsi:schemaLocation=" 
 http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd 
 http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd 
 http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"> 
 
 <aop:aspectj-autoproxy/> 
 <context:annotation-config/> 
 <context:component-scan base-package="com.test" /> 
</beans> 
</div>

<context:component-scan />配置项就配置了对指定的包进行扫描,以实现依赖注入。

下面介绍下一些常见注解的使用:

@Autowired 
private IReportService reportService ; 
</div>

Spring2.5引入了@Autowired注解,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。另外,通过@Autowired可以消除get,set方法。@Autowired是根据类型进行自动转配的。

这里要注意@Resource也可以实现自动装配,但是@Resource默认是按照名称进行自动装配。

这里简单介绍下什么是按类型进行装配,什么是按名称进行装配?

所谓按类型,就是当Spring容器中存在一个与指定属性类型相同的bean,那么将该属性进行自动装配;如果存在多个该类型的bean,那么跑出异常,并指出不能使用按类型进行自动装配;如果没有找到匹配的bean,则什么事都不发生。

所谓按名称,即根据属性名进行自动装配,此项会检查Spring容器中与该属性名完全一致的的bean,进行自动装配。

@Component("reportAction") 
@Scope("request") 
public class ReportAction extends AbstractBaseAction 
</div>

@Component注解(下面的解释来自官方文档)

@Component、@Service和@Controller。@Component是所有受Spring管理组件的通用形式;
 而@Repository、@Service和@Controller则是@Component的细化, 用来表示更具体的用例(例如,分别对应了持久化层、服务层和表现层)。也就是说, 你能用@Component来注解你的组件类,

 但如果用@Repository、@Service 或@Controller来注解它们,你的类也许能更好地被工具处理,或与切面进行关联。

例如,这些典型化注解可以成为理想的切入点目标。当然,在Spring Framework以后的版本中,@Repository、@Service和@Controller也许还能携带更多语义。如此一来,如果你正在考虑服务层中是该用@Component还是@Service,
 那@Service显然是更好的选择。同样的,就像前面说的那样,@Repository已经能在持久化层中进行异常转换时被作为标记使用了。

  @Scope()指定的是bean的作用域

@Scope("prototype")注解

    Spring容器在进行输出prototype类型的对象时,会每次重新生成一个新的对象给请求方,虽然这种类型的对象的实例化以及属性设置都是由Spring容器来完成的,但是只要准备完毕,并且对象实例返回给请求方的之后,容器就不会再持有当前对象的引用,请求方需要自己来当前对象后继生命周期的管理,包括该对象的销毁。最典型的案例就是Spring容器和Struts2进行整合时,要将action的scope的改成prototype。

@Scope("singleton")注解

此取值表示容器中只存在一个实例,所有引用该bean都是单一实例。这个就是典型的单例模型。

@Scope("request")注解

<bean id="requestPrecessor" class=".....RequestPrecessor" scope ="request" />

      Spring容器,即XmlWebApplicationContext回为每一个全新的RequestPrecessor,当请求结束后,该对象的生命周期即结束。当有100个Http请求同时发出时,容器会分别对每个请求创建不同的RequestPrecessor实例,它们之间不相互干扰,简单来讲,request可以看做是prototype的特例,request的应用场景更具体点,其他基本没啥区别。

@Scope("session")注解

  对于Web应用来说,放在session中最多的就是用户的登录信息,对于放在session中的信息,可以将其scope的类型改为session,Spring容器会为每个独立的session创建属于自己的全新的UserPreference实例,比request类型的bean存活更长的时间,,其他方面基本没啥区别,类似于javaweb中的session。

  最后,说一下为什么@Respository只能标注在Dao层,这是因为Spring提供的这个注解不仅将类识别为Bean,同时它能将所

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Spring Annotaion Support详细介绍及简单实例
  • Spring中常用注解的详细介绍
  • Spring 自动代理创建器详细介绍及简单实例

相关文章

  • 2017-05-11搭建SSH时的思考和遇到的几个问题的解决方法
  • 2017-05-11解析得到除去标签的txt内容
  • 2017-05-11Java Web开发之MD5加密用法分析
  • 2017-05-11Java语言中链表和双向链表
  • 2017-05-11Jsp真分页实例---分页
  • 2017-05-11通过agent判断浏览器版本救命分享
  • 2017-05-11jsp中include指令静态导入和动态导入的区别详解
  • 2017-05-11基于JSP 自定义标签使用实例介绍
  • 2017-05-11Spring MVC中上传文件实例
  • 2017-05-11JSP实现浏览器关闭cookies情况下的会话管理

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • jsp页面中的代码执行加载顺序介绍
    • JDBCTM 指南:入门2 - 连接
    • JDBC 入门(一)
    • JSP 中spring事务配置详解
    • spring @component的作用详细介绍
    • java/jsp中 中文问题详解
    • JSP实现的简单分页示例
    • 使用JS显示倒计时数字时钟效果
    • 一个通用的jsp分页PageBean
    • jsp实现cookie的使用

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有