叩丁狼培训实战Java教程之自定义spring
Java培训实战教程之自定义spring1.1 描述 在企业级开发中,spring框架应用非常广。为了让已经学习过spring框架同学,可以更深入的理解和应用spring,本文将通过自定义spring,更佳系统的阐述spring核心:IoC、AOP。
IoC(Inversion of Control)控制反转:将对象的创建权交与spring框架,及将创建权反转给spring框架。IoC主要解决计算机程序的耦合问题。
AOP(Aspect Oriented Programming)面向切面编程:通过运行期动态代理实现程序功能的统一维护的一种技术。
1.2 分析l 如果要实现自定义spring,可以将器拆分成多个功能实现。
l 阶段一:编写配置文件,服务器tomcat启动时,加载配置文件
l 阶段二:使用Jsoup解析xml,并封装到指定的JavaBean中
l 阶段三:编写工厂类用于创建指定bean,并完成property注入
l 阶段四:使用@Transactional进行事务管理
1.3 搭建环境1.3.1 javabean
private UserDao userDao;
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
@Override
public void register(User user) {
this.userDao.save(user);
}
1.4.1 xml配置文件l 在src下添加 applicationContext.xml ,并将dao和service配置到xml文件中。
l 使用 bean 标签配置一个实现类
class: 配置实现类的全限定名称
id: 进行唯一命名,用于提供给程序获得
l 使用 property 配置javabean属性的注入
name: 配置的service的属性名
ref: 配置其他bean对象的引用
bean id= userServiceId > property name= userDao ref= userDaoId /property
/bean
/beans
l tomcat启动时,加载配置文件方式总结:
1.编写Servlet,配置servlet,并添加 load-on-startup ,在init(ServletConfig)初始化方式中加载。
2.编写Filter,配置filter,在init(FilterConfig)初始化方法中加载
3.编写Listener,实现接口ServletContext,配置listener,在contextInitialized(ServletContextEvent sce)方法中加载。
l spring采用listener方案
1.提供实现类ContextLoaderListener
2.编写全局初始化参数contextConfigLocation,用于确定xml位置
param-value classpath:applicationContext.xml /param-value 加载类路径下的xml文件
param-value applicationContext.xml /param-value 加载WEB-INF目录的配置文件

l xml配置
param-name contextConfigLocation /param-name
param-value classpath:applicationContext.xml /param-value
/context-param
!-- 配置监听器 --
listener
listener-class cn.itcast.myspring.listener.ContextLoaderListener /listener-class
/listener
@Override
public void contextInitialized(ServletContextEvent sce) {
// 0 获得ServletContext对象应用
ServletContext context = sce.getServletContext();
// 1 加载配置
String config = context.getInitParameter( contextConfigLocation
if(config == null){ //默认配置文件位置
config= applicationContext
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
