Spring简单介绍

Spring是一个提供了解决J2EE问题的一站式框架。

Spring的核心是反转控制,通过配置文件完成业务对象之间的依赖注入,他鼓励一个良好的习惯,就是注入对接口编程而不是对类编程。Spring框架由七大模块构成:核心容器、Spring Context、Spring AOP、Spring DAO、Spring ORM、Spring Web、Spring MVC。

第一个例子 say hi~

打开Myeclipse,创建Java项目,导入Spring相关jar包和依赖(右键项目-Myeclipse-Add Spring ...):

新建Java类Hi,具体代码如下,两个变量msg、date,一个初始化函数,一个sayhi函数,4个set get 函数:

 1 package com.test;
2
3 import java.util.Date;
4
5 public class Hi {
6 private String msg = null;
7 private Date date = null;
8
9 public void init(){
10 this.msg = "hi~~";
11 this.date = new Date();
12 }
13 public String getMsg() {
14 return msg;
15 }
16 public void setMsg(String msg) {
17 this.msg = msg;
18 }
19 public Date getDate() {
20 return date;
21 }
22 public void setDate(Date date) {
23 this.date = date;
24 }
25 public void sayhi(){
26 System.out.println(msg+"\t"+date);
27 }
28
29
30 }

打开配置文件applicationContext.xml,配置以下内容:

 1 <?xml version="1.0" encoding="UTF-8"?>
2 <beans
3 xmlns="http://www.springframework.org/schema/beans"
4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5 xmlns:p="http://www.springframework.org/schema/p"
6 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
7
8 <bean id="hi" class="com.test.Hi" init-method="init">
9 </bean>
10
11 </beans>

其中:bean中id为bean的标识或者名字,class表示对应的类全名,init-method=“init”表示bean服务启动的时候会执行com.test.Hi中init方法。

新建测试类,编写以下代码,代码含义加载配置文件,取出bean,执行:

 1 package com.test;
2
3 import org.springframework.context.ApplicationContext;
4 import org.springframework.context.support.FileSystemXmlApplicationContext;
5 public class Test {
6 public static void main(String[] args) {
7 // TODO Auto-generated method stub
8 ApplicationContext context = new FileSystemXmlApplicationContext("applicationContext.xml");
9 Hi hi1 = (Hi) context.getBean("hi");
10 hi1.sayhi();
11 }
12
13 }

运行结果:

最新文章

  1. CentOS7下安装并简单设置PostgreSQL笔记
  2. Linux安装DBI/DBD-ORACLE
  3. Dapper学习 - Dapper的基本用法(一) - 查询
  4. 【Reporting Services 报表开发】— 矩阵的使用
  5. 【转】Uiautomator Api浅析
  6. JS 用角度换东南西北
  7. iOS 引导页
  8. vue新手入门——vue-cli搭建
  9. 【CJOJ P1957】【NOIP2010冲刺十模拟赛】数字积木
  10. 编译原理作业(第一次)-完成retinf.c(阉割版)
  11. JSON和JSONP,浅析JSONP解决AJAX跨域问题
  12. IM群聊消息究竟是存1份(即扩散读)还是存多份(即扩散写)?
  13. 【Java多线程】线程状态、线程池状态
  14. C# 去重处理字符大小写
  15. 查询物理表字段(mysql)
  16. BZOJ4247 : 挂饰
  17. ThreadLocal的实现
  18. STL--heap概述:make_heap,sort_heap,pop_heap,push_heap
  19. OMAPL138制作SD卡启动介质及重装Linux系统
  20. AMD 规范

热门文章

  1. DRM 简介
  2. 贴一发STL源码
  3. Matplotlib_常用图表
  4. JS中的事件、事件冒泡和事件捕获、事件委托
  5. 各种分布(distribution)
  6. spring boot 下 dataTable|pagehelper 组合进行分页 筛选 排序
  7. Bootstrap历练实例:小的按钮
  8. Spring 概念及特点 Spring下载地址 控制反转IoC实现原理
  9. [LUOGU] P1048 采药
  10. FIFO设计思考之一