去官网下载:
创建一个简单的spring需要导入5个jar包:
创建一个xml配置文件,做一些配置:
创建一个实体类User,然后创建一个测试类Test,然后写代码:
一个入门的spring案例就这么完成了。
================
工厂模式可以降低耦合度
传统我们是建个main方法:
但是在spring中用的方法是利用配置文件:
然后测试这个方法:
=======
先创建一个实体类,然后加入属性和有参构造:
然后去xml文件中配置:
最后进行测试:
=============
向属性中设置空值,在xml中改用<null>标签:
设置的值中有特殊符号的写法:
===============
创建service类和dao类:
然后service调用dao中的方法:
原始方式:
用spring的方式:
先要在service类中加上userdao这个属性和set方法:
去xml文件中配置:
测试这个外部bean注入:
=====
演示一对多,多对一:
先创建两个实体类:
部门类:
员工类:
在xml文件中进行配置:
去测试方法:
级联赋值:
测试级联赋值:
第二种级联赋值的写法:
不过这种方法要加上get方法:
=============
先创建实体类:
去xml文件中进行配置(用<array>或者<list>标签都可以):
在实体类中加个方法:
测试注入方法:
=======
讲对象注入到实体类属性中:
先创建一个类:
在stu中加一个属性:
配置文件:
============
写个实体类:
先修改配置文件:
然后公共部分注入:
然后进行测试:
==========
创建一个实体类:
配置文件:
测试:
=========
======
了解前后置处理器
============
自动装配:
===========
在spring环境下,配置数据库连接池,直接配置的方法(先要导入jar包):
创建一个properties配置文件:
然后去xml文件中引入新的名称空间:
然后进行配置:
================
注解操作:
在xml中引入名称空间:
开始组件扫描的多种方式:
运用注解:
测试方法:
=======
对于扫描的范围进行具体设置:
根据注解的不同进行扫描(下面这个就是只扫描加了controller注解的类):
下面这个是对哪些不扫描进行设置(加了controller注解的类不扫描):
=====
然后进行测试
======
先去给userdaoimpl加个别名:
然后userservice里就要根据别名识别:
然后测试:
======
resource既可以根据类型注入,也可以根据名称注入:
====
value注解:
===============================================
AOP:
实现JDK动态代理:
开始写代码:
先创建一个接口:
然后创建一个实现类:
实现代理对象:
第一种写法是方法中的第三个参数用匿名内部类:
第二中方法,是创建一个类,继承第三个参数里的接口:
把需要增强的那个类传递过来:
然后是具体增强逻辑:
修改main方法:
===
导入jar包:
现在引入的全部jar包已经有:
==========
AOP操作,通过aspectj注解:
先创建一个类,在里面定义方法:
创建增强类(编写增强逻辑):
接下来:
配置配置文件,开启扫描:
给实体类加注解:
给增强类加注解:
在配置文件中开启代理对象:
去给增强类的方法加注解:
进行测试:
增强类中可以放5中通知(增强方法):
新建一个增强类:
原来的增强类:
============
不用注解了,用配置文件的方式实现AOP操作:
先创建两实体类:
然后在配置文件中配置创建对象的内容:
然后再加上AOP操作的其他配置:
测试:
了解,完全用注解怎么做:
原文:https://www.cnblogs.com/jmfy/p/14681924.html