framework -- 18




1 2
概述今天的开发中,遇到一个问题:我需要创建某个 jar 包中的一个类对应的 bean,而在实例化这个类的过程中,必须传入我的一个 Service 作为参数,于是我如下创建 bean:@Bean public ServiceFactoryBean techlogServiceFactory() { ServiceFactoryBean factoryBean = new ServiceFactoryBean(); factoryBean.setHandler(new TechlogService()); return factoryBean; }  这样创建虽然是 OK 的,但是问题在于,这样创建的结果将造成传入的 TechlogService 对象不是 Spring 生成的 Bean,因此 TechlogService 中的 @Resource、@Autowire 注解的成员都将无法被注入而成为了 null,这个问题怎么解决呢? 通过 ApplicationContextAware 获取 Spring Bean&
#技术帖    #龙潭书斋    #遗留问题    #java   
概述上一篇日志中,我们介绍了 org.springframework.web.filter 包中提供的过滤器SpringMVC 提供的 Filter 类简介本篇日志中我们来介绍其中的一个特殊的过滤器 -- 委派过滤器代理(DelegatingFilterProxy)DelegatingFilterProxy 虽然在 org.springframework.web.filter 包中,但是他其实并不算是一个过滤器,它的原型是 FilterToBeanProxy,即将 Filter 作为 spring 的 bean,由 spring 来管理在我们的应用中,登录验证是最常用的功能,Spring Security 利用 DelegatingFilterProxy 及一系列 Filter 为我们提供了高度可定制化的请求验证机制,以及用户、角色、权限的抽象机制,来完成对我们的请求的验证 Spring SecuritySpring3.2 提供了 Spring Security 安全性框架为应用程序提供声明式安全保护,主要为&nbs
#技术帖    #mvc    #龙潭书斋    #java   
概述Junit 是一个 java 的单元测试框架,已经成为了最成功的一个单元测试框架了,多数 java 开发环境都已经集成了 JUnit 作为单元测试工具实现自动的单元测试可以大大地提高开发效率,虽然在编写测试代码时需要消耗很多精力,但是对于整个项目的稳定和健壮还是很值得的JUnit4 是 Junit 框架有史以来最大的一次改进,主要目标是使用注解特性简化测试用例的编写 pom 依赖如果要在 Spring 项目中使用 JUnit,就需要在 pom.xml 中定义依赖:<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.7</version> <scope>test</scope> </dependency>  入门实例待测试类package junit; public class Calculate { public int add(int a, int b)
#技术帖    #技术分享    #java    #framework   
概述上一篇日志中,我们讲解了如何创建并使用切面,AspectJ5 引入了使用注解来创建切面的新特性使用注解的方式定义切面,为应用程序带来了非常大的便捷性,也让代码更加美观在学习了上一篇日志中使用 xml 定义切面以后,这一节中的介绍会让你觉得非常简单Spring 面向切面实例讲解 为了支持使用注解定义面向切面的功能,需要在 xml 中写入:<aop:aspectj-autoproxy/> <!-- 支持面向切面注解 -->  前置切面和后置切面还记得上一篇日志中的 Audience 类吗?现在我们只需要为他的每个方法都加上一个注解,而舍弃冗长的 xml:package com.techlog.test.service; import org.aspectj.lang.annotation.*; /** * Created by techlog on 16/3/25. */ @Aspect public class Audience { @Pointcut("execution(* com.techlog.test.service.Performer.perform(..))") // 定义切点 public
#技术帖    #web    #龙潭书斋    #framework   

200x200


概述上一篇日志中,我们介绍了 spring aop 的基本概念,本篇日志你将看到全面的 AOP 用法和实例 pom.xml 依赖首

#技术帖    #web    #xml    #龙潭书斋   

200x200


概述前面几篇日志,我们介绍了让软件组件保持松散耦合的依赖注入机制:Spring Bean 面向切面的 AOP 编程允许你把遍布在应用各处的功能分离出来形成可重用组件通常,

#技术帖    #web    #xml    #龙潭书斋   
构造器注入在实际的应用中,往往会有很多类之间相互协作完成特定的业务逻辑,每个对象负责管理与自己相互协作的对象的引用,这就造成高度的耦合和难以测试的代码考虑下面的例子:public class DamselRescuingKnight implements Knight { private RescueDamselQuest quest; public DamselRescuingKnight() { quest = new RescueDamselQuest(); // 与 RescueDamselQuest 紧耦合 } public void embarkOnQuest() throws QuestException { quest.embark(); } }  这里我们创建了一个骑士类,这个骑士紧密的与 RescueDamselQuest 耦合在一起,结果是这个骑士只能去拯救少女,而不能去杀掉一条恶龙,不能去参加一场决斗同时,当你需要测试这个骑士的对象时,必须保证 embarkOnQuest 方法调用的同时 RescueDamselQuest 的 embark 方法也被调用 通过依赖注入,可以将这样的耦合松散化public clas
#技术帖    #web    #xml    #龙潭书斋   

200x200


概述依赖注入是控制反转的重要类型之一,控制反转即 IoC(Inversion of Control),是一种全新的设计模式,运用面向对象编程的法则解决程序的耦合问题,也是

#读书笔记    #技术帖    #web    #框架   

200x200


概述Log4j 是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事 件记录器、UNIX

#技术帖    #mvc    #mysql    #龙潭书斋   
概述hibernate 是一种 Java 语言编写的对象关系映射解决方案他对 JDBC 进行封装,提供了完善的面向对象模型访问传统关系型数据库的映射,是一个十分方便的框架他方便到即使你不知道数据库的用法(不只限于mysql),也可以无障碍的实现数据的各种操作 依赖想要在 spring 中使用 hibernate,首先需要将 hibernate 相关的依赖加入到 pom.xml 中<!-- Hibernate validator --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>${org.hibernate.verison}</version> </dependency> <!-- Hibernate framework --> <dependency> <groupId>org.hibernate</groupId> <art
#技术帖    #mvc    #database    #龙潭书斋   
1 2



京ICP备15018585号