`
wiselyman
  • 浏览: 2081070 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
博客专栏
Group-logo
点睛Spring4.1
浏览量:81086
74ae1471-94c5-3ae2-b227-779326b57435
点睛Spring MVC4...
浏览量:130134
社区版块
存档分类
最新评论

04点睛Spring4.1-资源调用

 
阅读更多

4.1 Resource

  • spring用来调用外部资源数据的方式
  • 支持调用文件或者是网址
  • 在系统中调用properties文件可参考<<02点睛Spring4.1-Java Config>>中结合@PropertySourceEnvironment来使用
  • 也可以使用@Value来注入资源,@Value的使用将在<<13点睛Spring4.1-Spring EL>>章节中有更详细的使用

4.2 示例

4.2.1 新增commons-io到maven依赖

需使用commons-io的IOUtils工具类将InputStream转换成String 在pom.xml的中添加如下

<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.3</version>
</dependency>

4.2.2 新建测试用info.txt

sadfasdfasdfasdfasdfsad
sadfasdfasdfasdfasdfsad
sadfasdfasdfasdfasdfsad

4.2.3 测试

package com.wisely.resource;

import java.io.IOException;

import org.apache.commons.io.IOUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.core.io.Resource;
import org.springframework.core.io.UrlResource;
import org.springframework.stereotype.Component;

@Component
public class Main {
    @Value("classpath:com/wisely/resource/info.txt")
    private Resource info;

    public static void main(String[] args) throws IOException {
        AnnotationConfigApplicationContext context =
                        new AnnotationConfigApplicationContext("com.wisely.resource");
        Main main = context.getBean(Main.class);
        System.out.println(main.injectInfo());
        System.out.println("----------------------------");

        //classpath: spring的一个模拟协议,类似于http:
        Resource file = context.getResource("classpath:com/wisely/resource/info.txt");
        System.out.println(IOUtils.toString(file.getInputStream()));
        System.out.println("----------------------------");

        Resource url = (UrlResource) context.getResource("http://www.baidu.com");
        System.out.println(IOUtils.toString(url.getInputStream()));
        context.close();
    }

    public String injectInfo() throws IOException{
        return IOUtils.toString(info.getInputStream());
    }

}

输出结果

sadfasdfasdfasdfasdfsad
sadfasdfasdfasdfasdfsad
sadfasdfasdfasdfasdfsad
----------------------------
sadfasdfasdfasdfasdfsad
sadfasdfasdfasdfasdfsad
sadfasdfasdfasdfasdfsad
----------------------------
<!DOCTYPE html><!--STATUS OK--><html><head>
.......

新书推荐《JavaEE开发的颠覆者: Spring Boot实战》,涵盖Spring 4.x、Spring MVC 4.x、Spring Boot企业开发实战。

 

京东地址:http://item.jd.com/11894632.html

当当地址:http://product.dangdang.com/23926195.html

亚马逊地址:http://www.amazon.cn/图书/dp/B01D5ZBFUK/ref=zg_bsnr_663834051_6 

淘宝地址:https://item.taobao.com/item.htm?id=528426235744&ns=1&abbucket=8#detail

 

 

 

或自己在京东、淘宝、亚马逊、当当、互动出版社搜索自选。

 


0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics