spring框架之快速入门

来源:互联网 发布:origin 画图 mac 编辑:程序博客网 时间:2024/06/05 02:42

1. spring概述

spring中有一个非常概念: bean (是java中的任何一种对象 javabean/service/action/数据源./dao, ioc(控制反转 inverse of control) di( dependency injection 依赖注入)。

spring实际上是一个容器框架(struts 是 web 框架 (jsp/action/actionfrom),hibernate 是 orm框架,处于持久层.),管理web层、业务层、dao层、持久层,该框架可以配置各个层的组件即种bean(action/service/domain/dao),并可以维护各个bean之间的关系,当我们需要使用某个bean的时候,我们可以getBean(id),使用即可.

ioc(inverse of controll ) 控制反转: 所谓控制反转就是把创建对象(bean),和维护对象(bean)的关系的权利从程序中转移到spring的容器(applicationContext.xml),而程序本身不再维护.。

di(dependency injection) 依赖注入: 实际上di和ioc是同一个概念,spring设计者认为di更准确表示spring核心技术。

2. spring快速入门(spring框架既可以用于web项目,也可以用于java项目)

(1)引入spring的开发包(最小配置spring.jar 该包把常用的jar都包括, 还要 写日志包 common-logging.jar

(2)创建spring的一个核心文件 applicationContext.xml, [hibernate有核心 hibernate.cfg.xml struts核心文件 struts-config.xml], 该文件一般放在src目录下,该文件中引入 xsd文件 

(3)配置bean

<!-- 在容器文件中配置bean(service/dao/domain/action/数据源) -->
<!-- bean元素的作用是,当我们的spring框架加载时候,spring就会自动的创建一个bean对象,并放入内存 -->

代码示例:

applicationContext.xml中的配置:

<?xml version="1.0" encoding="utf-8"?><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:tx="http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"><bean id="userService" class="com.service.UserService"><!-- 这里就体现出注入的概念. --><property name="name">      //或者写成<property name="name" value="Join" /><value>Join</value></property></bean></beans>

UserService.java代码:

package com.service;public class UserService {private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}public void sayHello(){System.out.println("hello "+name );byeService.sayBye();}}

Test.java代码:

//spring 的applicationContext对象(容器对象)ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");UserService us=(UserService) ac.getBean("userService");us.sayHello();

原创粉丝点击