在spring中使用JdbcTemplate进行数据库管理操作
JdbcTemplate1、JdbcTemplate概念及使用 a)Spring 框架对 JDBC 进行封装,使用 JdbcTemplate 方便实现对数据库操作
b)引入相关 jar 包
c)在 spring 配置文件配置数据库连接池
1234567<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close"> <property name="url" value="jdbc:mysql:///test" /> <property name="username" value="root" /> <property name="password" value="root" /> <property name="driver ...
Spring5框架新功能(通用日志、函数式表达式、webflux、响应式编程)
整个 Spring5 框架的代码基于 Java8,运行时兼容 JDK9,许多不建议使用的类和方法在代码库中删除了。
1、Spring 5.0 框架自带了通用的日志封装 (1)Spring5 已经移除 Log4jConfigListener,官方建议使用 Log4j2
(2)Spring5 框架整合 Log4j2
第一步 引入 jar 包
第二步 创建 log4j2.xml 配置文件
123456789101112131415161718192021<?xml version="1.0" encoding="UTF-8"?><!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL --><!--Configuration 后面的 status 用于设置 log4j2 自身内部的信息输出,可以不设置,当设置成 trace 时,可以看到 log4j2 内部各种详细输出--><c ...
Spring中事务的使用及配置
Spring——事务操作1、事务概念a)什么是事务 (1)事务是数据库操作最基本单元,逻辑上一组操作,要么都成功,如果有一个失败所有操 作都失败
(2)典型场景:银行转账 张三 转账 100 元 给 李四; 张三少 100,李四多 100
b)事务四个特性(ACID)(1)原子性 (2)一致性 (3)隔离性 (4)持久性
可查看这篇文章描述
2、事务操作(模拟事务操作环境)a)创建 service,搭建 dao,完成对象创建和注入关系12345678910111213//(1)service 注入 dao,在 dao 注入 JdbcTemplate,在 JdbcTemplate 注入 DataSource@Servicepublic class UserService { //注入 dao @Autowired private UserDao userDao;}@Repositorypublic class UserDaoImpl implements UserDao { @Autowired private JdbcTemplate jdbcTemp ...
spring IOC容器 Bean 管理——基于注解方式
IOC 操作 Bean 管理(基于注解方式) 1、什么是注解
(1)注解是代码特殊标记,格式:@注解名称(属性名称=属性值, 属性名称=属性值…)
(2)使用注解,注解作用在类上面,方法上面,属性上面
(3)使用注解目的:简化 xml 配置
2、Spring 针对 Bean 管理中创建对象提供注解
下面四个注解功能是一样的,都可以用来创建 bean 实例
(1)@Component
(2)@Service
(3)@Controller
(4)@Repository
3、基于注解方式实现对象创建
第一步 引入依赖 (引入spring-aop jar包)
第二步 开启组件扫描
12345<!--开启组件扫描 1 如果扫描多个包,多个包使用逗号隔开 2 扫描包上层目录--><context:component-scan base-package="com.atguigu"></context:component-scan>
第三步 创建类,在类上面添加创建对象注解
123456789//在 ...
Spring-AOP概念及使用
Spring-AOP1、AOP 基本概念 (1)面向切面编程(方面),利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得 业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。
(2)通俗描述:不通过修改源代码方式,在主干功能里面添加新功能
(3)使用登录例子说明 AOP
2、AOP(底层原理) a)AOP 底层使用动态代理 ,动态代理有两种情况:
第一种 有接口情况,使用 JDK 动态代理 ;创建接口实现类代理对象,增强类的方法
第二种 没有接口情况,使用 CGLIB 动态代理;创建子类的代理对象,增强类的方法
3、AOP(JDK 动态代理) 1)使用 JDK 动态代理,使用 Proxy 类里面的方法创建代理对象
调用 newProxyInstance 方法,方法有三个参数:
123public static Object newProxyInstance(ClassLoader loader, Class<?>[] interfaces, ...
Spring IOC容器-Bean管理——基于XML方式(续集)
Spring IOC容器-Bean管理——基于XML(续集)1、IOC 操作 Bean 管理(FactoryBean)
1、Spring 有两种类型 bean,一种普通 bean,另外一种工厂 bean(FactoryBean)
2、普通 bean:在配置文件中定义 bean 类型就是返回类型
3、工厂 bean:在配置文件定义 bean 类型可以和返回类型不一样 第一步 创建类,让这个类作为工厂 bean,实现接口 FactoryBean 第二步 实现接口里面的方法,在实现的方法中定义返回的 bean 类型
12345678910111213141516171819202122public class MyBean implements FactoryBean<Course> { //定义返回bean @Override public Course getObject() throws Exception { Course course = new Course(); course.setCname ...
Spring——IOC(控制反转)
一、IOC容器1、什么是IOC(控制反转) a)把对象创建和对象之间的调用过程,交给Spring进行管理
b)使用IOC目的:为了降低耦合度
2、IOC底层 a)xml解析、工厂模式、反射
3、Spring提供的IOC容器实现的两种方式(两个接口) a)BeanFactory接口:IOC容器基本实现是Spring内部接口的使用接口,不提供给开发人员进行使用(加载配置文件时候不会创建对象,在获取对象时才会创建对象。)
b)ApplicationContext接口:BeanFactory接口的子接口,提供更多更强大的功能,提供给开发人员使用(加载配置文件时候就会把在配置文件对象进行创建)推荐使用!
4、ApplicationContext接口的实现类(具体根据API文档查看☺****)二、IOC容器-Bean管理1、IOC操作Bean管理 a)Bean管理就是两个操作:(1)Spring创建对象;(2)Spring注入属性
2、基于XML配置文件创建对象
3、基于XML方式注入属性(DI:依赖注入(注入属性))a)set方式注入//(1)传统方式: 创建类,定 ...