spring入门(二) 使用注解代替xml配置

1.导包(略)

2.applicationContext.xml如下:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4        xmlns:context="http://www.springframework.org/schema/context"
 5        xsi:schemaLocation="http://www.springframework.org/schema/beans
 6         http://www.springframework.org/schema/beans/spring-beans.xsd
 7         http://www.springframework.org/schema/context
 8         http://www.springframework.org/schema/context/spring-context.xsd
 9         ">
10     <!--注意配置xsd,要么报错:通配符的匹配很全面, 但无法找到元素 ‘context:component-scan‘ 的声明。-->
11
12     <context:component-scan base-package="com.ice.bean"/>
13 </beans>
base-package扫描的包,会包含子包.

[email protected]

写法一: User类

 1 import org.springframework.stereotype.Component;
 2
 3 @Component(value = "user") //等同于在xml里定义了 <bean id="user" class="" />
 4 public class User {
 5     private String name;
 6     private Integer age;
 7
 8     public String getName() {
 9         return name;
10     }
11
12     public void setName(String name) {
13         this.name = name;
14     }
15
16     public Integer getAge() {
17         return age;
18     }
19
20     public void setAge(Integer age) {
21         this.age = age;
22     }
23 }

main方法:

    ApplicationContext context = new ClassPathXmlApplicationContext("setting/applicationContext.xml");
    User user = (User) context.getBean("user");

写法二: User类

 1 import org.springframework.stereotype.Component;
 2
 3 @Component
 4 public class User {
 5     private String name;
 6     private Integer age;
 7
 8     public String getName() {
 9         return name;
10     }
11
12     public void setName(String name) {
13         this.name = name;
14     }
15
16     public Integer getAge() {
17         return age;
18     }
19
20     public void setAge(Integer age) {
21         this.age = age;
22     }
23 }

main方法:

    ApplicationContext context = new ClassPathXmlApplicationContext("setting/applicationContext.xml");
    User user = context.getBean(User.class);

4.其他注解

@Repository
@Service
@Controller 这三个注解跟Component一个效果
@Scope(scopeName = "prototype")//singleton prototype
@Value 放在字段上,是反射实现赋值;放在set方法上,是通过调用方法赋值.

@Autowired 按照类型 //import org.springframework.beans.factory.annotation.Autowired;
@Qualifier 按照名称 //@Autowired @Qualifier 可以一起用
@Resource //import javax.annotation.Resource;

...

原文地址:https://www.cnblogs.com/ICE_Inspire/p/9726955.html

时间: 2024-10-10 06:59:34

spring入门(二) 使用注解代替xml配置的相关文章

Spring IOC的初始化过程——基于XML配置(一)

前言:在面试过程中,Spring IOC的初始化过程,基本上属于必答题,笔者的亲身经历.因此本文基于Spring的源码对其IOC的初始化过程进行总结. 注:spring版本为4.3.0. 1.调试前准备 在spring源码中,添加如下内容(有关spring源码如何导入idea,请查询相关资料): 说明: ①User为简单bean,含有name和gender两个属性. ②User.xml为spring配置文件,仅仅对User进行简单的配置. ③SpringIoCDebug为测试类. 先看执行结果:

mybatis使用注解替代xml配置,动态生成Sql

mybatis使用注解替代xml配置时,遇到判断条件是否为null或者为空时,@Select很难搞定,不知道怎么办? mybatis3中增加了使用注解来配置Mapper的新特性,使用 SelectProvider来动态生成sql. 典型的使用场景 1. 无参数@SelectProvide方法在Mapper接口方法上和@SelectProvide指定类方法上,均无参数:UserMapper.java: 1     @SelectProvider(type = SqlProvider.class, 

spring面向切面编程示例(xml配置形式[email&#160;protected]注解形式)

一.xml配置形式 1.在Spring配置文件中增加面向切面配置当调用com.activemq.service.impl.ConsumerServiceImpl接口实现类的任意方法时执行切面类中的方法. 2.写切面类 注意:1)不能对web层(比如:com.activemq.action.ConsumerController)做代理插入操作,亲测无效.(之前认为对web层进行切面处理无效,其实不是,无效的原因在于切面配置所在的文件,如果是spring-mvc.xml(Springmvc的配置文件

spring自带的定时任务功能,基于注解和xml配置

1.spring的配置文件 [html] view plain copy <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:task="http:

Spring MVC 的 Java Config ( 非 XML ) 配置方式

索引: 开源Spring解决方案--lm.solution 参看代码 GitHub: solution/pom.xml web/pom.xml web.xml WebInitializer.java WebConfig.java RootConfig.java 一.引入必要类库 spring-context spring-context-support spring-webmvc:引入该包后,maven 会自动解析依赖,引入 spring-web 等包. 1.solution/pom.xml 1

【Spring六】JDBC编程之XML配置

jdbc编程最主要的就是要引入数据源,常见的有dbcp数据源,c3p0数据源等. 几个重要的类: JdbcTemplate,里面提供了dao的方法,需要提供数据源给他! JdbcDaoSupport RowMapper 说明: 无论采用什么样的方法必须把dataSource注入到JdbcTemplate里 1.继承JdbcDaoSupport(该类有JdbcTemplate) 2.继承JdbcTemplate 3.引入JdbcTemplate 1.xml配置: <beans xmlns="

Hibernate中的Annotation注解与XML配置的使用

通过XML配置来实现持久化: 首先我们来建立一个实体类: package com.hibernate.model; public class Student {     private int id;     private String name;     private int age;          public int getId() {         return id;     }     public void setId(int id) {         this.id 

Spring MVC 通过@Value注解读取.properties配置内容

第一步:在applicationContext.xml配置: <bean id="configProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean"> <property name="locations"> <list> <value>classpath:/config/*.properti

Spring AMQP 源码分析 08 - XML 配置

### 准备 ## 目标 通过 XML 配置文件使用 Spring AMQP ## 前置知识 <Spring AMQP 源码分析 07 - MessageListenerAdapter> ## 相关资源 Sample code:<https://github.com/gordonklg/study>,rabbitmq module 源码版本:Spring AMQP 1.7.3.RELEASE ## 测试代码 gordon.study.rabbitmq.springamqp.XmlC