目录
前言:
第一次在CSDN写文章,不知道怎么写,特别紧张害羞,怕自己做不好,毕竟是个理工男,且是一个集善良,帅气,智慧,才华,宅寝室自卑。。不与人打交道的小白兔,感觉就像新姑娘出嫁一般……好腼腆啊,咳咳,那就按照学习笔记的方式进行吧,因为是第一次学习嘛,笔记肯定会有很多问题,欢迎各位大佬指正,在下感激不进,笔记中会加入学习的心得和思考,对于这篇Spring的学习笔记,我也第一次学,学的也只是它的形,也就是它的一些语法啊,怎么实现这些功能啊,但是底层原理的意,我是不太懂的,可以给入门者作参考,好吧,废话不多说,直接开始。
入门学习:
1、认识spring:
学习任何一门技术,我认为先从认识它开始,就好比人与人之间成为朋友,也是从认识开始的,你觉得这个人能处,慢慢的就成了朋友。spring是什么呢?spring是一门框架技术,就将复杂的事情简单化,或者说难以管理的事情变成简单的管理。(没有百度,都是自己学习后的记忆和理解,如有错误,欢迎指正,感激不尽!下面也是)spring的作用就是用来解耦:不主动用去new对象,使用spring来创建(Bean)
spring用来简化开发的技术:1、IOC(反转控制) 2、AOP(面向切面编程)
spring还整合很多的框架技术,比如mybatis、struts等等,spring的发展就是一些思想的不断改进和实现、整合。spring包含的技术很多,可以去官网查看,首先学习的springFramework是基础。
2、spring案例:IOC
学习了理论后,直接实战练习,方便加强记忆。使用maven搭建项目
首先导入坐标:
<dependencies>
<!--导入spring的坐标spring-context,对应版本是5.2.10.RELEASE-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.10.RELEASE</version>
</dependency>
</dependencies>
本次使用配置文件的方式管理spring----->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"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 创建bean-->
<!--id属性表示给bean起名字 class属性表示给bean属性定义类型-->
<bean id="bookDao" class="com.yzm.dao.impl.BookDaoImpl"/>
<bean id="bookService" class="com.yzm.service.impl.BookServiceImpl">
<property name="bookDao" ref="bookDao"/>
</bean>
</beans>
具体所以代码:
//接口
package com.yzm.dao;
public interface BookDao {
public void save();
}
//接口实现类
package com.yzm.dao.impl;
import com.itheima.dao.BookDao;
public class BookDaoImpl implements BookDao {
public void save() {
System.out.println("book dao save ...");
}
}
//接口
package com.yzm.service;
public interface BookService {
public void save();
}
//接口实现类
package com.yzm.service.impl;
import com.yzm.dao.BookDao;
import com.yzm.service.BookService;
public class BookServiceImpl implements BookService {
//接收了BookDao的对象,不主动自己去new了,由spring给
private BookDao bookDao;
public void save() {
System.out.println("book service save ...");
bookDao.save();
}
//spring给对象,需要调用set方法,所以给出一个set方法
public void setBookDao(BookDao bookDao) {
this.bookDao = bookDao;
}
}
//测试代码
package com.yzm;
import com.yzm.dao.BookDao;
import com.yzm.service.BookService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class App2 {
public static void main(String[] args) {
//首先创建spring容器,这是由于spring管理对象是将对象放在容器里管理的
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
//获取Bean,即spring管理的对象,需要的参数是配置文件中的id值,需要一致
BookService bookservice = (BookService) ctx.getBean("bookService");
//对象调用方法
bookservice.save();
}
}
3、说明:
解释都在代码中,由于是笔记,所以不多赘述,想学习的可以参考大佬们的文章,有很详细的教程;我在写的过程中总有种在教学的感觉,明明自己的懂的并不多,见笑了各位。如果有什么好的建议,望各位不吝赐教,不要用留情,只管批斗在下。哈哈哈哈
总结:
使用spring,对象不用自己new,spring给,就是在配置文件中定义bean。下次笔记说明bean的创建的多种形式方法。本次笔记不清楚的地方:IOC没有解释明白,文章整体逻辑不清晰,东说西说,spring的工作原理没有明白。姑且算懵懵懂懂,姑且是个入门吧,第一次,有点紧张,还不知道这是第一篇文章还是最后一篇文章,好吧,那就这样吧,哈哈哈