spring
文章平均质量分 70
梦否
【@】bug修复,程序代做
展开
-
AOP切面使用---注解方式实现
依赖: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.3.5</version> </dependency> <dependency> <groupId>junit</groupId>原创 2021-04-13 15:25:32 · 543 阅读 · 0 评论 -
AOP切面使用---XML文件配置方式(二)
上篇:AOP切面使用—XML文件配置方式 依赖: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.3.5</version> </dependency> <dependency> <groupId>jun原创 2021-04-13 15:04:44 · 164 阅读 · 0 评论 -
AOP切面使用---XML文件配置方式
找到一个比较好的博客:https://www.cnblogs.com/cynchanpin/p/6931707.html,这里简单总结下: AOP是一种编程范式; 可以减少模块的耦合度; 能够把通用的业务逻辑处理代码(比如事务处理、日志管理、权限控制等)在系统中更好的实现代码复用; 可以自己主动将横切关注点织入(Weaving)到面向对象的软件系统中,从而实现了横切关注点的模块化; 由于拥有相同代码集中存放,使得维护工作变得简单轻松,且代码更加简洁; AOP技术是建立在Java语言的反射机制与动态代理机制原创 2021-04-13 08:50:04 · 289 阅读 · 0 评论 -
Spring-AOP简介
一下内容来自百度百科: AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。 1. 静态代理 在项目开发过程中,有这么种约定的思想:就是功能的扩充需要在不改变原有的功能的原创 2021-03-21 21:11:12 · 488 阅读 · 1 评论 -
spring的IoC(Inversion of Control)4——Bean自动装配,完全Java方式
在上篇中在配置文件中指定了开启注解,指定了注解扫描的包。并使用了@Autowired(协作属性自动装配)、@Component(声明为Spring托管的bean对象)、@Value(指定简单类型的属性值),来简化bean实例化的过程。在xml中开启配置如下: <!-- 配置注解扫描。 指定要扫描的包,这个包下的注解就会生效 --> <context:component-scan base-package="com.weizu.pojo"/> <context:annotati原创 2021-03-21 18:21:53 · 78 阅读 · 0 评论 -
spring的IoC(Inversion of Control)4——Bean自动装配
在上篇中使用了@Autowired来简化开发,但其实还可以简化: 在上篇中,xml指定配置的类,如下: <bean id="address" class="com.weizu.pojo.UserAddress" p:address="西安"/> <bean id="weizu" class="com.weizu.pojo.User" p:name="张三"> <property name="age" value="21"></property> <原创 2021-03-21 17:48:00 · 88 阅读 · 0 评论 -
spring的IoC(Inversion of Control)4——Bean自动装配
文档:https://docs.spring.io/spring-framework/docs/current/reference/html/core.html#beans-factory-autowire Spring容器可以自动关联协作bean之间的关系。对于<bean/>中的每个bean都可以指定autowire属性来进行协作bean的关联。默认是no,即不需要自动装配。 可选值有:byName、byType、construcotr三种。这里来进行 1. byName 同样的创建User和原创 2021-03-21 17:14:04 · 99 阅读 · 0 评论 -
spring的IoC(Inversion of Control)4——p和c命名空间
在前面的文章中,提到了在Spring中注入有构造器注入和Set方式注入,并且均对这两种注入进行了简单的案例实践。这里对于以上的两种注入方式,有两种比较简单的写法。 1. 对于构造器注入 在官方文档中叫c-namespace,对应前面学过的构造器注入方式。官方文档地址:https://docs.spring.io/spring-framework/docs/current/reference/html/core.html#beans-c-namespace 首先需要引入约束xmlns:c="http://ww原创 2021-03-21 16:07:38 · 128 阅读 · 0 评论 -
spring的IoC(Inversion of Control)4——XML注入实践
在上一篇中学习了如何注入简单的值,由于其可注入的类型很多,所以这里来尝试下。 例如,定义两个类,User.java和UserAddress.java: 在User.java类中定义如下属性: private int age; private String name; private String[] hobbeys; private List<String> cards; private Map<String, String> girlfirends; private Set<原创 2021-03-21 15:45:41 · 79 阅读 · 0 评论 -
.Spring web demo 案例
那么,接下来来个简单的案例。 首先,我们需要创建Spring WEB MVC项目,不妨从官网找如何开始,首先找官方文档, 可以看见创建Spring应用的环境要求,JDK1.8&Maven 3.2+。然后,找到手动创建的介绍: 然后,按照上面的步骤,将至导入到了idea中,并在idea中配置下maven: 指定为自己安装和配置过的maven即可,文件位置maven安装目录下的conf/settings.xml文件,比如阿里云镜像地址: <!-- 阿里云仓库 --> <mir原创 2021-03-20 21:58:39 · 306 阅读 · 0 评论 -
spring的IoC(Inversion of Control)3
上篇:spring的IoC(Inversion of Control)2 在上篇的beans.xml中,我们指定了需要实例化的类对象。在Spring的IoC中,创建对象所调用的构造方法默认是无参构造。 这里不妨测试下: 修改下UserServiceImpl类,如下: public class UserServiceImpl implements UserService{ private UserDao userDao; // set注入 public void setUserDa原创 2021-03-20 21:57:16 · 137 阅读 · 0 评论 -
spring的IoC(Inversion of Control)2
上篇:spring的IoC(Inversion of Control) 下面的一张图形象的比喻了IoC的作用,也就是解耦。 IoC是Spring框架的核心内容,使用多种方式实现了IoC,可以使用XML配置,也可使用注解。在Spring中控制反转的实现方式是依赖注入(Dependency Injection, DI)。 那么不妨来体验下 1. XML实现IoC 路径: Hello.java内容: package com.weizu; public class Hello { private St原创 2021-03-20 21:26:30 · 126 阅读 · 0 评论 -
spring的IoC(Inversion of Control)
在官方文档中,点击Core核心包,打开可以发现开篇讲的就是IoC容器。所以先了解下IoC。照例,还是从百度词条出发: 控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫“依赖查找”(Dependency Lookup)。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以原创 2021-03-20 19:58:28 · 197 阅读 · 0 评论