本文主要是介绍spring,spring_mybatis集成,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Spring概述
Spring 是一个轻量级的,IOC 和 AOP 的一站式 Java 开发框架,是为了简化企
业级应用开发而生的。(整个后端框架进行管理)
Ioc
即 Inversion of Control(控制反转 把创建对象的控制权反转给sring框架),缩写为 IOC,是由 Spring 管理对象,而非传统实现
中由程序代码直接操控.
Aop
Aspect Oriented Programming 直译过来就是面向切面编程。AOP 是一种编
程思想,是面向对象编程(OOP)的一种补充。面向对象编程将程序抽象成各
个层次的对象,而面向切面编程是将程序抽象成各个切面.
Spring hello word
Maven 导入 spring 核心基础 jar
<!-- spring-context spring核心jar包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.2.RELEASE</version>
</dependency>
编写 spring 配置文件,在resources包下创建一个配置文件
配置文件约束
<?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="user" class="com.ff.spring.model.User"> </bean>
</beans>
Spring bean管理
Bean对象 由于把对象交给spring管理后,spring会对对象进行功能的增强,所以在spring生成的对象中,统一称为bean对象
Spring配置管理的两种方式
- 基于xml配置的
id="" 对象名称可以在getbean中获得spring生成的对象
class="" 可以让spring管理的类的地址
scope="singleton" 默认值singleton,一次创建一个对象,在加载配置文件的时候就创建了
scope="prototype" 原型的(多例的) 在创建对象的时候才会创建,加载过程中不会创建
注意的是需要在对象中创建构造方法(无参的) spring在创建对象的时候会默认调用无参构造方法,
scope="singleton"
scope="prototype"
IOC指的是让spring框架为创建对象,在创建对象的同时还有一个动作注入依赖,
依赖注入:在创建对象的时候为对象属性赋值
依赖注入有两种方式
1.通过属性注入,调用set方法
- 通过构造方法注入
类里面有类的依赖注册
2.基于注解的
不同的处理层所用注解不相同,dao层使用@Repository,service层使用@Service
模型层使用@Component,虽然效果差不多,但是为了方便管理不同的处理层使用的注解各不相同
添加@Autowired注解就可以在创建这个类的时候自动加载这个类中的该属性,前提是该属性对应的类要加上注解,让spring可以找到他。
spring自动注入
@Autowired是spring框架提供的注解
用于在属性和属性的set方法上 默认情况下要注入的值不能为空
自动注入的有两种值的匹配方式
1.通过属性的类型查找
2.通过对象的名字查找@Qualifier(value = "adminDao")名字必须为定义包所创建的名字
@Resource java提供的注解,可以通过类型也可以通过名字进行查找,
xml与注解的区别
注解优点: 方便,直观,高效(代码少,没有配置文件的书写那么复杂)。
注解缺点:以硬编码的方式写入到 Java 代码中,修改是需要重新编译代码的。
xml 优点是: 配置和代码是分离的,在 xml 中做修改,无需编译代码,只需重
启服务器即可将新的配置加载。
xml 的缺点是:编写麻烦,效率低,大型项目过于复杂。
Spring数据访问管理层
Spring集成mybatis
创建一个web项目
导包
在resources包下面创建spring与mybatis的xml文件,创建一个mapper文件夹,印射的sql语句的文件
对spring.xml进行配置
Mapper/*Mapper.xml定义mapper文件夹下面的命名格式,扫描印射文件,无需在mybatis里面注册-
Com.ffyc.ssm.dao生成了代理对象,在dao层下面就无需在加注解
对mybatis进行配置
写一个测试
这篇关于spring,spring_mybatis集成的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!