[笔记]Spring-Day2 — 注解开发

IOC/DI配置管理第三方bean

案例:配置Druid

环境准备

  1. 创建maven项目

  2. pom.xml添加依赖 spring-context

  3. resources下添加 applicationContext.xml

  4. 编写运行类 ApplicationContext ctx

pom.xml导入 druid 依赖

配置类配置第三方bean

    <!--管理DruidDataSource对象-->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://localhost:3306/spring_db"/>
        <property name="username" value="root"/>
        <property name="password" value="950827"/>
    </bean>
    </beans>

从IOC容器中获取对应的bean对象

注意事项

  1. 对于新的技术,不知道具体的坐标该如何查找?

    1. 百度

    2. 从mvn的仓库https://mvnrepository.com/中进行搜索

  2. 报的错为ClassNotFoundException,具体的类为com.mysql.jdbc.Driver错误的原因是缺少mysql的驱动包

    1. 在pom.xml把驱动包引入即可

加载properties文件

原因: 属性写在Spring的配置文件中不利于后期维护 ​ —> 将这些值提取到一个外部的properties配置文件中

具体步骤:

resources下创建一个jdbc.properties文件

开启context命名空间、加载properties配置文件、完成属性注入

多个property文件需要加载时

核心容器

简单的理解为ApplicationContext

容器的创建方式

bean的三种获取方式

容器类层次结构

  • 容器的最上级的父接口为 BeanFactory

BeanFactory —额额不太懂

使用BeanFactory来创建IOC容器

总结

  • 使用BeanFactory创建的容器是延迟加载

  • 使用ApplicationContext创建的容器是立即加载

  • 具体BeanFactory如何创建只需要了解即可

IOC/DI注解开发

注解开发定义bean

  1. 环境准备

  2. 删除原XML配置的<bean>标签

  3. Dao上添加@Component注解

  4. 配置Spring的注解包扫描 @ComponentScan

  5. ServiceImpl类上也添加@Component

  6. 运行行为类测试

XML与注解配置的对应关系

@Controller@Service@Repository

纯注解开发模式

  • 将配置文件applicationContext.xml删除掉,使用类来替换

【❗更新】环境准备

  1. 创建maven

  2. pom.xml

  3. springconfig【刚学的注解开发定义bean】

  4. 添加类

创建一个配置类SpringConfig 、标识该类为配置类、用注解替换包扫描配置

创建运行类并执行

注解开发bean的作用范围和生命周期管理

注解对应关系图Untitled

注解开发依赖注入

bean和service的关系

  • 之前的配置文件application配置好的bean和service的关系还没用注解开发,所以bookDao对象为Null,调用其save方法就会报空指针异常

  • 解决办法:在BookServiceImpl类的bookDao属性上添加@Autowired注解

按照名称注入

  • 如果Dao接口类有多个实现类,解决方案:按照名称注入

DaoImpl文件

ServiceImpl文件

简单数据类型注入

DaoImpl文件

ServiceImpl文件

注解读取properties配置文件

resource下准备properties文件

springconfig加载properties配置文件

DaoImpl读取配置文件中的内容

IOC/DI注解开发管理第三方bean

案例:注解开发管理第三方bean

导入对应的jar包

在配置类中添加一个方法、添加@Bean注解

从IOC容器中获取对象并打印

引入外部配置类

新建一个JdbcConfig配置类

在Spring配置类中引入 @import

注解开发实现为第三方bean注入资源

简单数据类型

—— 使用@Value注解引入值

引用数据类型

在SpringConfig中扫描BookDao

—— @ComponentScan("com.itheima.dao")

在JdbcConfig类的方法上添加参数

注解开发总结

Untitled

spring整合! --整合Mybatis

环境准备

数据库表

创建项目导入jar包**

根据表创建模型类

创建Dao接口

创建Service接口和实现类

添加jdbc.properties文件

添加Mybatis核心配置文件

编写应用程序

运行程序

正式整合!

项目中导入整合需要的jar包

创建Spring的主配置类

创建数据源的配置类**

创建Mybatis配置类并配置SqlSessionFactory**

— 代替Mybatis核心配置文件

主配置类中读properties并引入数据源配置类、Mybatis配置类

最后更新于