Spring教程--IOC(注解方式)和整合junit
1 IOC装配Bean(注解方式)
1.1 Spring的注解装配Bean
Spring2.5 引入使用注解去定义Bean
@Component 描述Spring框架中Bean
Spring的框架中提供了与@Component注解等效的三个注解:
@Repository 用于对DAO实现类进行标注
@Service 用于对Service实现类进行标注
@Controller 用于对Controller实现类进行标注
1.2 Bean的属性注入:
普通属性:
@Value(value="sihai")private String info;
对象属性:
@Autowired:自动装配默认使用类型注入.
@Qualifier("userDao")--- 按名称进行注入.
@Qualifier("userDao")private UserDao userDao;等价于@Resource(name="userDao")private UserDao userDao;
1.3 Bean其他的属性的配置:
配置Bean初始化方法和销毁方法:
init-method 和 destroy-method.
@PostConstruct 初始化
@PreDestroy 销毁
配置Bean的作用范围:
@Scope
1.4 Spring3.0提供使用Java类定义Bean信息的方法
@Configurationpublic class BeanConfig {@Bean(name="car")public Car showCar(){Car car = new Car();car.setName("长安");car.setPrice(40000d);return car;}@Bean(name="product")public Product initProduct(){Product product = new Product();product.setName("空调");product.setPrice(3000d);return product;}}
1.5 实际开发中使用XML还是注解
XML:
bean管理
注解;
注入属性的时候比较方便.
两种方式结合;一般使用XML注册Bean,使用注解进行属性的注入.
<context:annotation-config/>@Autowired@Qualifier("orderDao")private OrderDao orderDao;
2 Spring整合web开发
正常整合Servlet和Spring没有问题的
但是每次执行Servlet的时候加载Spring配置,加载Spring环境.
解决办法:在Servlet的init方法中加载Spring配置文件
将加载的信息内容放到ServletContext中.ServletContext对象时全局的对象.服务器启动的时候创建的.在创建ServletContext的时候就加载Spring的环境.
ServletContextListener:用于监听ServletContext对象的创建和销毁的.
2.1 导入
spring-web-3.2.0.RELEASE.jar
2.2 在web.xml中配置
<listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:applicationContext.xml</param-value></context-param>
修改程序的代码:
WebApplicationContext applicationContext = WebApplicationContextUtils.getWebApplicationContext(getServletContext());WebApplicationContext applicationContext = (WebApplicationContext) getServletContext().getAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
3 Spring集成JUnit测试
3.1.程序中有Junit环境.
3.2.导入一个jar包.spring与junit整合jar包.
spring-test-3.2.0.RELEASE.jar
3.3测试代码:
@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations="classpath:applicationContext.xml")public class SpringTest {@Autowiredprivate UserService userService;@Testpublic void demo1(){userService.sayHello();}}
Spring教程--IOC(注解方式)和整合junit相关推荐
- Spring的AOP-AspectJ注解方式
目录 Spring的AOP-AspectJ注解方式 1.创建类,在类里面定义方法 2.创建增强类 3.进行通知的配置 (1)在Spring 配置文件中,开启直接扫描 (2)使用注解创建User 和 U ...
- spring AOP自定义注解方式实现日志管理
转:spring AOP自定义注解方式实现日志管理 今天继续实现AOP,到这里我个人认为是最灵活,可扩展的方式了,就拿日志管理来说,用Spring AOP 自定义注解形式实现日志管理.废话不多说,直接 ...
- 十二 Spring的AOP开发入门,整合Junit单元测试(AspectJ的XML方式)
创建web项目,引入jar包 引入Spring配置文件 编写目标类,完成配置 编写测试类 Spring整合Junit单元测试 编写一个切面类 配置切面类,产生代理: <?xml version= ...
- springmvc3.2+spring+hibernate4全注解方式整合(一)
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http:// ...
- SSM—Spring框架,IOC理论推导,Hello Spring,IOC创建对象方式,Spring的配置,DI(依赖注入)
文章目录 1.Spring 1.1.Spring简介(了解) 1.2.spring优点 1.3.组成(七大模块) 1.4.拓展 2.IOC理论推导 2.1.IOC本质 3.Hello Spring 4 ...
- Spring学习:Spring的IOC注解
文章目录 一.简介 二.IOC注解 (一)常用的注解 (二)扫描包 (三)数据装配 三.生命周期 四.Bean实例化的时机 五.Bean在IOC容器中单例和多例 六.SpringIOC注解完整示例代码 ...
- Spring IOC注解方式
1.首先要导包 2.导入context名称空间 <?xml version="1.0" encoding="UTF-8"?> <beans x ...
- Spring:Spring IOC注解方式注册beanDefinition
文章目录 1.美图 2.概述 3.案例 3.1 案例1 4.容器初始化 5.AnnotationConfigApplicationContext 5.1 registerBean 5.1.1 clas ...
- SpringBoot 注解方式快速整合Mybatis
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:yizhiwazi www.jianshu.com/p/82 ...
最新文章
- BZOJ 2456: mode 水题
- Python多线程技术增加网站帖子的查看量
- 【若依(ruoyi)】打开新的选项卡
- java是解释型编程语言_程序设计语言可以分为两类:编译型语言和解释型语言...
- php 网格,PHP中的数据网格
- P3312 [SDOI2014]数表(离线 + 树状数组前缀和优化)
- Android 学习Kotlin吗?
- 永远不要放弃你所爱的人
- 广告CTR预估中用户行为学习和记忆建模
- python切片长度_python的间隔切片技巧
- Angularjs中设置cookies的过期时间
- 摩拜开锁系统是用什么服务器,摩拜昨晨现“开锁难” 市民:系统需更稳定
- python查看指定文件的绝对路径和当前工作路径
- 如何查看我的订单-REST的流程API设计案例
- python填充nan_Python Pandas Dataframe填充NaN值
- 机器学习之手写数字图片数据处理及识别
- java安全体系:JCA、JCE、JSSE、JAAS
- 打造卓越的 Android 游戏体验
- 在职非全日制计算机考研上岸心得分享
- go内存分析工具介绍--pprof