Java 返回空值的Bean

Java 返回空值的Bean,java,javabeans,Java,Javabeans,当我运行testrunner类时,它应该以Views=1047的形式给出预期的输出,而不是返回Views=0,即null值。我做错了什么 这是我的主课 public class TestRunner { public static void main(String[] args) { // TODO Auto-generated method stub JsonRestApi abc = new JsonRestApi(); SocialBean bean = n

当我运行testrunner类时,它应该以Views=1047的形式给出预期的输出,而不是返回Views=0,即null值。我做错了什么

这是我的主课

public class TestRunner {

public static void main(String[] args) {
    // TODO Auto-generated method stub


    JsonRestApi abc = new JsonRestApi();

    SocialBean bean = new SocialBean();

    System.out.println("Views="+bean.getViews());
}
}

这是RestApi类,我将从中向bean注入值

public class JsonRestApi {

public JsonRestApi() {

    try {

        String Response = "{\"Youtube Data\":\"Views\":\"1047\"}";

        JSONParser parser = new JSONParser();

        try {

            Object obj = parser.parse(Response);

            JSONObject jsonObject = (JSONObject) obj;
            JSONObject jsonObject3  = (JSONObject)jsonObject.get("Youtube Data");

            Long yviews = new Long((String)jsonObject3.get("Views"));

            SocialBean bean = new SocialBean();

            bean.setViews(yviews);

    }
  }
} }

这是我的bean类

public class SocialBean {
private long views;
public long getViews() {
        return views;
    }
    public void setViews(long views) {
        this.views = views;
    }

SocialBean是JsonRestApi构造函数的本地。使之成为私人领域

private SocialBean bean = new SocialBean();
public JsonRestApi() {

try {

    String Response = "{\"Youtube Data\":\"Views\":\"1047\"}";

    JSONParser parser = new JSONParser();

    try {

        Object obj = parser.parse(Response);

        JSONObject jsonObject = (JSONObject) obj;
        JSONObject jsonObject3  = (JSONObject)jsonObject.get("Youtube Data");

        Long yviews = new Long((String)jsonObject3.get("Views"));

        bean.setViews(yviews);

 }
}

public SocialBean getSocialBean(){
   return bean;
}
在您的主要方法中:

System.out.println("Views="+abc.getSocialBean().getViews());

仅供参考:您在本代码中没有使用SpringBean。

为什么
abc
会对主方法中的
bean
产生任何影响?它会影响它在自己的构造函数中创建的实例,然后该实例立即超出范围。您有两个
SocialBean
实例,一个是在
TestRunner
中创建的,另一个是在
JsonRestApi
中创建的。在这段代码中,您根本没有使用Spring,也没有进行任何依赖项注入。(你说你在“向bean中注入值”,但你没有注入任何东西)。我可以通过什么方式访问TestRunner类中JsonRestApi构造函数内的bean值集吗?整个问题与Spring无关。你确定你甚至想到了依赖注入吗?视图仍然返回空值。我认为你的json无效。字符串响应=“{\”Youtube数据\“:{\”视图\“:\”1047\“}”;