JAVA坎坷之路(14 day)

编程开发   © 文章版权由 admin 解释,禁止匿名转载

#楼主# 2022-7-17

spring是什么?

spring是轻量级的开源的j2ee框架

spring可以解决企业应用开发的复杂性

spring两个核心部分 ioc和aop

ioc:控制反转,把创建对象的过程交给spring管理

aop:面向切面,不修改源代码进行功能的增强

spring特点:方便解耦,简化开发,aop编程的支持,方便程序的测试,方便集成各种优秀的框架,降低java ee api的使用难度,方便进行事务的操作

**入门案例**

先进官网查看spring版本:

本帖含有隐藏内容,请您 回复 后查看
选择ga的版本

我这里选择5.3.22的ga版本,然后导入相关依赖坐标

```xml



org.springframework
spring-context
5.3.22



```

创建类

```java
package com.hzx.spring;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Book {
void showBook(){
System.out.println("显示书籍");
}
}

class Req {
public static void main(String[] args) {
// 传统方法
Book book = new Book();
book.showBook();
// spring方法
// 加载spring配置文件 使用类路径加载spring配置文件
ApplicationContext context = new ClassPathXmlApplicationContext("classpath:application.xml");
// 获取配置创建的对象 Book.class表示转换的类型 show就是我们bean标签的id属性的值
Book show = context.getBean("show", Book.class);
show.showBook();
}
}

```

spring配置文件

```xml

本帖含有隐藏内容,请您 回复 后查看
' target='_blank'>
本帖含有隐藏内容,请您 回复 后查看
[/reply]"
xmlns:xsi="
本帖含有隐藏内容,请您 回复 后查看
"
xsi:schemaLocation="
本帖含有隐藏内容,请您 回复 后查看
' target='_blank'>
本帖含有隐藏内容,请您 回复 后查看
[/reply]
本帖含有隐藏内容,请您 回复 后查看
' target='_blank'>
本帖含有隐藏内容,请您 回复 后查看
[/reply]/spring-beans.xsd">





```

什么是ioc

控制反转,把对象创建和对象之间的调用过程,交给spring管理

使用ioc的目的,降低耦合度

ioc的底层原理

xml解析、工厂模式、反射

spring提供ioc的两种实现方式

ioc思想基于ioc容器完成 ioc容器底层就是对象工厂

```
BeanFactory:ioc容器的基本实现,是spring内部的使用接口,不提供开发人员使用
加载配置文件的时候不会创建对象,在获取对象或使用对象时才创建对象
ApplicationContext:BeanFactory的子接口,提供更多更强大的功能,一般由开发人员使用
加载配置文件时就会把在配置文件对象创建
```

spring创建对象spring注入属性两种实现方式 xml配置文件```javapackage com.hzx.spring;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class Book { private int age; private String name; public Book(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } void showBook(){ System.out.println("显示书籍"+age+name); }}class Req { public static void main(String[] args) {// 传统方法// Book book = new Book();// book.showBook();// spring方法// 加载spring配置文件 使用类路径加载spring配置文件 ApplicationContext context = new ClassPathXmlApplicationContext("classpath:application.xml");// 获取配置创建的对象 Book.class表示转换的类型 show就是我们bean标签的id属性的值 Book show = context.getBean("show", Book.class); show.showBook(); }}``````xml ```注解方式

地板
好学生88 2022-7-18
收藏吃灰了
4楼
呵呵二爷爷 2022-7-18
[滑稽][滑稽][滑稽][滑稽][滑稽]我就是记录打卡,坚持学习吃灰不要紧的
5楼
我等你 2022-7-20
能帮我看看配一个文件吗?奉上凯币
6楼
呵呵二爷爷 2022-7-20
真的嘛 先说好啊 我不是为了凯币[乖][滑稽][滑稽][滑稽]
7楼
妙笔生花 2022-7-20
看都看不懂怎么玩
8楼
呵呵二爷爷 2022-7-20
图一乐就行[滑稽][滑稽]
9楼
妙笔生花 2022-7-20
[阴险][阴险][阴险][阴险]本来就是看都看不懂怎么玩
10楼
妙笔生花 2022-7-20
收徒弟不[阴险][阴险]

评论

登录后才可发表内容
  • 主题

    23

  • 帖子

    325

  • 关注者

    0

Copyright © 2019 凯特网.   Powered by HYBBS 2.3.4  

Runtime:0.0964s Mem:2164Kb