hello spring春天来了
这是小小小零食 废话不多说 现在看到
spring这个管家

先说第一个 ioc :在每个框架的中都有一个容器的概念,所谓的容器就是将常用的服务,封装起来,然后,用户只需要遵循一定的规则,就可以达到统一、灵活、安全、方便、快速的目的。
IOC是一个依赖注入DI(Dependence Injection)的方式达到控制反转目的的框架。
控制反转:的优势在于将服务交给容器。 换句话说 你可以把ioc容器当作一个罐子 然后嘞把 不同的操作比如什么dao 什么bean(domain) impl(降低耦合度== )什么的当作不同口味的果汁
然后分别一层一层的把他们放进 ioc这个罐子里面 用一层塑料薄膜把他们隔开= = 然后你可以插插根管子 插进每一层 比如你然后呢 你就可以靠这管子 可以插进不同层 混合在一起了= =当然这根管子有点特殊 为了安全起见了 你还可以 分管子 比例酸酸的用一根 甜的用一根= 后面的自行脑补..
面向切面编程了 理解字面意思 切面 = 也就是可以在 一个物体上 开一个小面你可以放入 一块木板 当然也可以把这块木板取出来= =这叫做可插拔式 具体的了
当然这都是后话了 先来毕竟标题是hello spring 滑稽 OK 做出hello spring主要有两个步骤 当你搭建好 spring 框架需要一个 java(bean)类 一个xml配置文件 以及一个 test类 话不多说 上步骤
先是一个bean类
package com.java.bean;
public class Myspringx {
private String name;
private String gender;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
@Override
public String toString() {
return "Myspringx{" +
"name='" + name + '\'' +
", gender='" + gender + '\'' +
'}';
}
}
这个很简单 只需要 set get +tostring即可 然后是配置文件 = =这个配置文件的名字了最好跟你的page的名字挂上钩 当然我这个比较扯淡 叫做bean-bean.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"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="mysprings" class="com.java.bean.Myspringx">
<property name="name" value="张三"></property>
<property name="gender" value="boy"></property>
</bean>
<!-- <bean id="he" class="com.java.bean.He">
<property name="addres" value="非洲"></property>
<property name="age" value= "17"></property>
<property name="fuck" value="是你"></property>
</bean>-->
</beans>
再加上test类
package test.com.java.bean;
import com.java.bean.Myspringx;
import org.junit.Test;
import org.junit.Before;
import org.junit.After;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import java.util.Arrays;
/**
* Myspringx Tester.
*
* @author <Authors name>
* @since <pre>���� 8, 2017</pre>
* @version 1.0
*/
public class MyspringxTest {
@Before
public void before() throws Exception {
}
@After
public void after() throws Exception {
}
/**
*
* Method: getName()
*
*/
@Test
public void testGetName() throws Exception {
ApplicationContext ac =new ClassPathXmlApplicationContext("beanx.xml");
/* 这个名字要和 xml里面的一样 */
Myspringx mysprings = (Myspringx) ac.getBean("mysprings");
System.out.println(mysprings.getGender()+mysprings.getName());
/*这个 获取bean的名字 而已*/
/* String[] names =ac.getBeanDefinitionNames();
System.out.println(Arrays.toString(names));*/
}
}
ok hello spring 水文完成..
hello spring春天来了的更多相关文章
- 照虎画猫写自己的Spring
从细节跳出来 看了部分Spring的代码,前面用了四篇内容写了一些读书笔记. 回想起来,论复杂度,Spring够喝上好几壶的.他就像一颗枝繁叶茂的大树,远处看,只是一片绿:走近看,他为你撑起一片小天地 ...
- 转:为什么要有Spring?
Java后端技术https://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247484822&idx=1&sn=6fbee2 ...
- Spring容器
1.Spring简介: a)Spring春天 b)官网:https://spring.io c)设计理念:轮子理念,不要重复创造轮子: d)Spring可以被理解为一个容器,用于管理其他的框架: e) ...
- Spring总结————spring核心Core
一.spring的概念 spring是一个开源的,轻量级控制反转和面向切面的容器框架,解决企业应用开发的复杂性,降低耦合,更易于测试. spring春天.如果写一个小的项目,我们可以在项目中想创建一个 ...
- 13、Spring教程之全部(包括所有章节)
Spring 教程 1.Spring概述 简介 Spring : 春天 --->给软件行业带来了春天 2002年,Rod Jahnson首次推出了Spring框架雏形interface21框架. ...
- 1、Spring教程之Spring概述
1.Spring概述 简介 Spring : 春天 --->给软件行业带来了春天 2002年,Rod Jahnson首次推出了Spring框架雏形interface21框架. 2004年3月24 ...
- 五分钟,手撸一个Spring容器!
大家好,我是老三,Spring是我们最常用的开源框架,经过多年发展,Spring已经发展成枝繁叶茂的大树,让我们难以窥其全貌. 这节,我们回归Spring的本质,五分钟手撸一个Spring容器,揭开S ...
- 0029 Java学习笔记-面向对象-枚举类
可以创建几个对象? n多个:大部分的类,都可以随意创建对象,只要内存不爆掉 1个:比如单例类 有限的几个:采用单例类的设计思路,可以只允许创建少数的几个特定的对象:还有就是枚举类. 创建少数几个对象, ...
- Java之enumeration(枚举)
enumeration(枚举)是JDK1.5引入的新特性,放在java.lang包中. 1.枚举类方法介绍 package com.enums; public class TestEnum { pub ...
随机推荐
- jsp面试题
1, JSP中有那些内置对象,以及作用? 共有9种基本内置组件: request 用户端请求,此请求会包含来自GET/POST请求的参数: response 网页传回用户端的回应: pageConte ...
- https证书链不完整
公司的一个域名,用浏览器打开能正常访问,但是在linux下使用curl命令,总是报错,报错信息如下: curl: (60) Peer certificate cannot be authenticat ...
- Day14 JavaScript
区分: JavaScript和JAVA一点关系没有,是一门单独的语言.(浏览器就是JavaScript的解释器) JavaScript代码存在形式: #这些代码一般都是在<head>< ...
- Linux 文件目录解释
/bin:bin是binary(二进制)的缩写.这个目录是对UNIX系统习惯的沿袭,存放着使用者最经常使用的命令.例如:cp,ls,cat. /boot:这里存放的是启动LINUX时使用的一些核心文件 ...
- gradle 将依赖打入Jar包的方法
使用的是IDEA,直接引入 plugins { id 'com.github.johnrengelman.shadow' version '1.2.3' } 放在build.gradle的最上面,然后 ...
- 44.1khz 16位比特双声道一分钟的音乐文件占多少硬盘空间?
2*2*44.1*1000*60=10584000字节=10M2个声道*(16比特/8比特)字节*采样率(每秒采样44.1*1000次)*一分钟有60秒16比特是精度,描述振幅的,16比特等于2个字节 ...
- 洛谷 P1462 解题报告
P1462 通往奥格瑞玛的道路 题目背景 在艾泽拉斯大陆上有一位名叫歪嘴哦的神奇术士,他是部落的中坚力量 有一天他醒来后发现自己居然到了联盟的主城暴风城 在被众多联盟的士兵攻击后,他决定逃回自己的家乡 ...
- NOIP2017Day1题解
Day1 T1.小学奥数... 代码: #include<iostream> #include<cstring> #include<string> #include ...
- scrapy中 Mongo的存储
import pymongo MONGO_HOST = 'localhost' MONGO_PORT = 27017 MONGO_DB = 'today' MONGO_COLL = 'mm' clas ...
- 为什么我离开Mac for Windows:苹果已经放弃了[译]
为什么我离开Mac for Windows:苹果已经放弃了[译] 如果你问任何知道我的人,我可能是他们知道的最大的苹果粉丝.要求提供什么电脑可以获得的建议,我几乎肯定会告诉你MacBook Pro,还 ...