为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Spring入门篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Spring入门篇

moocer JAVA开发工程师
难度中级
时长 7小时 0分
  • Bean的作用域
    查看全部
  • Bean配置项
    查看全部
  • 专题二 Bean
    查看全部
  • Spring构造注入
    查看全部
    0 采集 收起 来源:Spring注入方式

    2017-10-24

  • Spring设值注入
    查看全部
    0 采集 收起 来源:Spring注入方式

    2017-10-24

  • Spring注入
    查看全部
    0 采集 收起 来源:Spring注入方式

    2017-10-24

  • AOP几个相关概念
    查看全部
  • 按类型自动装配可能多个bean实例的情况,可以使用Spring的@Qualifier注解缩小范围(或指定唯一),也可以用于指定单独的构造器参数或方法参数 可用于注解集合类型变量 如果通过名字进行注解注入,主要使用的不是@Autowired(即使在技术上能够通过@Qualifier指定bean的名字),替代方式是使用JSR-250@Resource注解,他是通过其独特的名称来定义识别特定的目标(这是一个与所声明的类型是无关的匹配过程) 因语义差异,集合或Map类型的bean无法通过@Autowired来注入,因为没有类型匹配到这样的bean,为这些bean使用@Resource注解,通过唯一名称引用集合或Map的bean @Autowired适用于fields,constructors,multi-arguement methods这些允许在参数级别使用@Qualifier注解缩小范围的情况 @Resource适用于成员变量、只有一个参数的setter方法,所以在目标是构造器或一个多参数方法时,最好的方式时使用qualifiers
    查看全部
  • @Qualifier注解:<br> 按类型自动装配可能有多个bean实例的情况,可以使用Spring的@Qualifier注解缩小范围或者指定唯一,也可以用于指定单独的构造器参数或方法参数,也可用于注解集合类型变量; 用法如下: 如果使用bean装配则不需要再Spring XML中配置,直接在bean类中使用 @Qualifier("beanName") 如果需要在Spring XML中配置,则在bean标签下添加<qualifier value="名称"></qualifier>,然后在bean类中使用@Qualifier("名称") 虽然@Resource和@Autowired都可以来完成注入依赖,但它们之间是有区 别的。首先来看一下: a。@Resource默认是按照名称来装配注入的,只有当找不到与名称匹配的bean才会按照类型来装配注入; b。@Autowired默认是按照类型装配注入的,如果想按照名称来转配注入,则需要结合@Qualifier一起使用; c。@Resource注解是又J2EE提供,而@Autowired是由spring提供,故减少系统对spring的依赖建议使用 @Resource的方式;
    查看全部
  • @Autowired注解: 1.@Autowired注解可以用到spring特殊的接口上: eg: @Autowired ApplicationContext ac; 2.@Autowired可以用到数组注解上,数组的字段或者方法需要的特定类型的bean,将ApplicationContext中该类型的所有bean配装到改数组上。(数组-set,map) map的键存储bean的id,值存储bean。key是String。 @Autowired注解用在数组类型上时,将ApplicationContext里面注册的所有该类型的bean装配到数组上。当希望装配有序时,可以利用@Order注解进行注解 eg: @Order(value=1)(该数值是整型) @Autowired 注意:@Order注解只对数组有序有效。例如map无效
    查看全部
  • Autowired 自动装配注解 可以用在set方法上,亦可以用在成员变量或者构造器; 每个类只能有一个构造器被标记为required=true 在Service中使用DAO对象的时候,加上Autowired注解,不需要在xml中配置,也不需要setter方法 @Autowired private InjectionDAO injectionDAO;
    查看全部
  • Bean 的定义及作用域注解 A、@Controller :注解控制器类(控制层 MVC) B、@Service :注解服务类(服务层) C、@Repository :注解 DAO 类(持久层) D、@Component :将普通的 bean 注解到 spring 容器中,相当于配置文件中的<bean id="xxx" class="xxx"/> 元注解(Meta-annotations) 元注解即是许多 Spring 提供的注解可以作为自己的代码,元注解是一个简单的注解,可以应用到另一个注解 除了 value() 元注解还可以有其他的属性,允许定制 类的自动监测及 Bean 的注册 Spring 可以自动检测类并注册 Bean 到 Applicationcontext 中 <context:annotation-config /> 通过基于 xml 的 Spring 配置 为了能够自动检测到这些类并注册相应的 Bean ,需要 <context:component-scan base-package="xxx" /> <context:component-scan> 包含 <context:annotation-config>,通常使用前者后,就不需要再使用后者 使用过滤器进行自定义扫描 A、默认情况下,类被自动发现并注册 bean 的条件:使用 @Component @Repository @Service @controller 注解或者使用 @Component 的自定义注解 B、可以通过过滤器修改默认注解的行为 C、还可以使用 use-default-filters = "false" 禁用自动发现与注册
    查看全部
  • Resources (针对于资源文件的统一接口) - UrlResource:URL 对应的资源,根据一个 URL 地址即可获取 - ClassPathResource:获取类路径下的资源 - FileSystemResource:获取文件系统里面的资源 - ServletContextResource:ServletContext 封装的资源,用于访问 ServletContext 环境下的资源 - InputStreamResource:获取输入流封装的资源 - ByteArrayResource:获取字节数组封装的资源 ResourceLoader: 所有的 application contexts 都实现了 ResourceLoader 接口,因此所有的 application contexts 都能获取Resource实例 通过实现 ApplicationContextAware 接口中的方法 setApplicationContext(ApplicationContext applicationContext) Resource resource = applicationContext.getResource("xxx"); 1.在spring规定中,resources文件夹是访问资源的入口。 2.classPath:xxx/src/main 3.getResources()方法的参数:classPath方式: classPath:xxx.txt 4.file方式: file:D:\\...\\xxx.txt 5.url方式: url:http://.../.../xxx 6.没有前缀时依赖applicationContext的配置文件路径:即使用配置文件的路径
    查看全部
  • Bean的自动装配(Autowiring) 1.No:不做任何操作 2.byname:根据属性名自动装配。此选项将检查容器并根据名字查找与属性完全一致的bean,并将其与属性自动装配 3.byType:如果容器中存在一个与指定属性类型相同的bean,那么将与该属性自动装配;如果存在多个该类型的bean,那么抛出异常,并指出不能使用byType方式进行自动装配;如果没有找到相匹配的bean,则什么事都不发生 4.Constructor:与byType方式类似,不同之处在于它应用于构造器参数。如果容器中没有找到与构造器参数类型一致的bean,那么抛出异常 Bean的自动装配:在beans标签配置属性 default-autowire="no/byName/byType/constructor" 作用为:省去了在Spring的xml中配置property标签和constructor-arg标签,只需要配置bean标签即可 PS:byName和byType为设值注入,constructor为构造注入; byName要求bean标签的id属性需要和成员变量的名称一致, byType和constructor则跟id无关
    查看全部
  • 1.ApplicationContextAware 1.1 接口方法:setApplicationContext 1.2 作用:通常用来获取上下文对象,声明全局变量后在方法中对变量进行初始化并供其他方法调用 1.3 实现过程:创建一个类并实现ApplicationContextAware接口,重写接口方法public void setApplicationContext(ApplicationContext applicationContext);在xml文件中配置该类;当spring加载该配置文件时即调用接口方法 2.BeanNameAware 2.1 接口方法:setBeanName 2.2 作用:获取声明的类名,声明全局变量后在方法中对变量进行初始化并供其他方法调用 2.3 实现过程:创建一个类并实现BeanNameAware接口,重写接口方法public void setBeanName(String name);在xml文件中配置该类;当spring加载该配置文件时即调用接口方法 综合测试: 1.创建一个类,同时实现ApplicationContextAware和BeanNameAware接口并重写其方法。声明一个全局变量beanName并在方法setBeanName对其初始化; 2.在setApplicationContext方法中使用参数applicationContext的getBean方法(方法参数为成员变量beanName,即this.beanName)获取bean的名称并打印其hashcode 3.将1中创建的类配置到xml文件中 4.创建单元测试,读取xml文件并执行测试方法,通过上下文信息直接获取bean并打印出其hashcode 结论:在加载xml文件时即加载其配置的bean并调用其中的方法,最后的hashcode相同,说明获取的bean是同一个。
    查看全部

举报

0/150
提交
取消
课程须知
Java的高级课程,适合对Java基础知识应用自如,并熟悉MVC架构的小伙伴们。如果想成为一名Java工程师,这门课程是一定要学哒。
老师告诉你能学到什么?
掌握依赖注入、IOC和AOP的概念,并能进行简单应用。
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!