spring框架如何加载外部jar包中的类

问题描述

这两天在学习spring框架,有一个问题困扰了我很久,希望在这里能得到解答。

目前状况

目前的程序是可以运行的,项目文件的结构是这样的:
https://img1.mukewang.com/5cbfd1b900014a7102560218.jpg

UserDao的代码如下:

package com.rl.spring.dao;


public interface UserDao {

    void test();


}

UserDaoImpl的代码如下:


package com.rl.spring.dao.impl;


import com.rl.spring.dao.UserDao;


public class UserDaoImpl implements UserDao {

    public void test(){

        System.out.println("userDaoImpl test success");

    }


}

配置文件ApplicationContext.xml的内容如下:


<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://www.springframework.org/schema/beans

        http://www.springframework.org/schema/beans/spring-beans-4.3.xsd">

        <bean id="userDao" class="com.rl.spring.dao.impl.UserDaoImpl" ></bean>

</beans>

我创建了一个单元测试,代码如下:


package com.rl.spring.test;


import org.junit.Test;

import org.springframework.context.ApplicationContext;

import org.springframework.context.event.ApplicationContextEvent;

import org.springframework.context.support.ClassPathXmlApplicationContext;


import com.rl.spring.dao.UserDao;

public class TestSpring {

    @Test

    public void test(){

        ApplicationContext ctx = new ClassPathXmlApplicationContext("ApplicationContext.xml");

        UserDao obj = (UserDao) ctx.getBean("userDao");

        obj.test();

    }


}

到目前为止,一切都是十分顺利的。


问题

假设我自己的项目中只有一个基类UserDao,而UserDao的具体实现UserDaoImpl则是别人写的,他把生成的jar包发给我,那我怎么样才能不修改我的代码,直接修改配置文件ApplicationContext.xml,就能加载别人写的类,在我的程序中生成UserDaoImpl对象呢?


子衿沉夜
浏览 2227回答 2
2回答

噜噜哒

可以在maven中添加相关的依赖。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java