动力节点首页 全国咨询热线:400-8080-105

绑定手机号,登录
手机号

验证码

微信登录
手机号登录
手机号

验证码

微信登录与注册
微信扫码登录与注册

扫码关注微信公众号完成登录与注册
手机号登录
首页 > 文章

Spring源码环境搭建

07-14 11:11 569浏览
举报 T字号
  • 大字
  • 中字
  • 小字

1.环境准备

(1)下载配置jdk11。

(2)配置gradle的仓库地址:

windows环境添加环境变量:

变量名:GRADLE_USER_HOME

value:你存放下载包的文件夹

2.下载源码并编译

下载编译前最好要翻墙,不然会很慢。

使用的是ssr翻墙。下载编译是在git shell上操作的。

所以下载编译前git需要设置代理:

git config --global https.proxy http://127.0.0.1:1080
git config --global https.proxy https://127.0.0.1:1080
git config --global http.proxy socks5h://127.0.0.1:1080

取消代理命令:

git config --global --unset http.proxy
git config --global --unset https.proxy

下载:

git clone git@github.com:spring-projects/spring-framework.git
cd spring-framework

编译:

./gradlew build

导入idea:

(1)导入前需要预编译:

./gradlew :spring-oxm:compileTestJava

(2)导入前设置gradle仓库地址、idea的http代理(加快下载外网资源速度。没有翻墙,可以配置build.gradle,使用阿里镜像下载):

(3)导入代码:

等一会就好了

3.测试

(0)切换分支:

点击idea右下角git:master,切换成5.2.x。

(1)新增springdemo模块:

(2)build.gradle增加依赖

compile(project(":spring-context"))

(3)写代码测试

创建包和类:

WelcomeService类:

public interface WelcomeService {
    String sayHello(String name);
}

WelcomeServiceImpl类:

@Service
public class WelcomeServiceImpl implements WelcomeService {
    @Override
    public String sayHello(String name) {
        System.out.println("欢迎你:" + name);
        return "success";
    }
}

WelcomeController类:

@Controller
public class WelcomeController  {private ApplicationContext myContainer;
    @Autowired
    private WelcomeService welcomeService;
    public void handleRequest(){
        welcomeService.sayHello("来自Controller的问候");
    }
}

Entrance类:

@Configuration
@ComponentScan("com.imooc")
public class Entrance {
   public static void main(String[] args) {
        ApplicationContext applicationContext = new AnnotationConfigApplicationContext(Entrance.class);
        String[] beanDefinitionNames = applicationContext.getBeanDefinitionNames();
        for(String beanDefinitionName : beanDefinitionNames){
            System.out.println(beanDefinitionName);
        }
        WelcomeController welcomeController = (WelcomeController) applicationContext.getBean("welcomeController");
        welcomeController.handleRequest();
    }
}

运行Entrance类的main方法,输出:

欢迎你:来自Controller的问候

表明正常,至此可以打断点深入了解spring源码了。

动力节点在线课程涵盖零基础入门,高级进阶,在职提升三大主力内容,覆盖Java从入门到就业提升的全体系学习内容。全部Java视频教程免费观看,相关学习资料免费下载!对于火爆技术,每周一定时更新!如果想了解更多相关技术,可以到动力节点在线免费观看Spring框架视频教程学习哦!

0人推荐
共同学习,写下你的评论
0条评论
代码小兵345
程序员代码小兵345

44篇文章贡献168626字

相关课程 更多>

作者相关文章更多>

推荐相关文章更多>

Java面试题及答案整理

提枪策马乘胜追击04-21 20:01

Spring常见面试题

代码小兵92504-17 16:07

Java零基础实战项目——五子棋

代码小兵98804-25 13:57

Java string类详解

杨晶珍05-11 14:54

6道经典算法面试题

杨晶珍05-12 16:39

发评论

举报

0/150

取消