小编Emi*_*lla的帖子

如何获取一个类的所有属性?

我想获取类实例的所有属性的名称和值。该类可以是任何自定义的任何类,它也可以具有对象列表、哈希图、表等,并且可以从另一个类扩展。实际上我的意思是我想获得一个类的所有属性的名称和值。所以我需要做的应该是一种模板。是否可以?到目前为止我已经写过了。任何建议将不胜感激。

    public static void getObjectIntoMap(Object obj) throws IllegalArgumentException, IllegalAccessException {
    Field[] field = obj.getClass().getDeclaredFields();
    Class<?> c = obj.getClass().getSuperclass();
    if(c != Object.class)
        getObjectIntoMap(c.getClass());
    System.out.println("SSS : "+field.length);
    for (Field f : field) {
        if(f.getType() == java.util.List.class){
            java.util.List<Object> ll = (java.util.List<Object>) f.get(obj);
            for (Object o : ll) {
                Field[] ff = o.getClass().getDeclaredFields();
                for (Field field2 : ff) {
                    print(field2.getName(), field2.get(o).toString());
                }
            }
        }else if(f.getType() == Hashtable.class){

        }
        else if(f.getType() == HashMap.class){

        }else if(f.getType() == Object[].class){

        }   
        else{
            print(f.getName(), f.get(obj).toString());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

java

4
推荐指数
1
解决办法
1万
查看次数

如何使用存储在非活动类的sharedpreferences中的数据

我试图从非活动类中获取并更新我存储在sharedpreferences xml文件中的数据.但我不知道如何从android中的非活动类到达存储在sharedPreferences中的数据.在我的活动类中,我可以将数据存储在sharedprefences中,我也可以在我的活动类中检索这些数据.但是,我无法从非活动类中检索这些数据.我的代码如下.谢谢你......

    mSharedPrefs = getSharedPreferences("storageforfavorite", 0);
    mPrefsEditor = mSharedPrefs.edit();

    for(int i= 0;i<names.size();i++){
        mPrefsEditor.putString(indexForFav[i],"0"); 
    }
    mPrefsEditor.commit();

    for(int i=0;i<names.size();i++){
        String keyForFav=mSharedPrefs.getString(indexForFav[i], "2");
        valueForFav.add(keyForFav);
    }
Run Code Online (Sandbox Code Playgroud)

android sharedpreferences

3
推荐指数
1
解决办法
2798
查看次数

Spring上下文:组件扫描转换异常

我有一个奇怪的错误,我在互联网上搜索了很多.我无法理解为什么我收到此错误.我在春季jira上找到了关于这个错误的一些解释.我有context:component-scan,applicationContext.xml我在com.sow.webservices包中定义了5个包.但是,当我添加包含控制器类的控制器包时,我抛出

Error occured processing XML '[Ljava.lang.String; cannot be cast to java.lang.String'. See Error Log for more details
Run Code Online (Sandbox Code Playgroud)

这是组件扫描:

<context:component-scan base-package="com.sow.webservices.aop, 
                                          com.sow.webservices.exceptions,
                                          com.sow.webservices.models, 
                                          com.sow.webservices.services,
                                          com.sow.webservices.controller">
Run Code Online (Sandbox Code Playgroud)

我想向您展示整个异常跟踪.感谢您的帮助.

!ENTRY org.springframework.ide.eclipse.beans.core 1 0 2014-04-11 18:07:39.996
!MESSAGE Error occured processing '/SOW_WS/src/main/webapp/WEB-INF/applicationContext.xml'
!STACK 0
java.lang.ClassCastException: [Ljava.lang.String; cannot be cast to java.lang.String
    at org.springframework.context.annotation.AnnotationBeanNameGenerator.determineBeanNameFromAnnotation(AnnotationBeanNameGenerator.java:92)
    at org.springframework.context.annotation.AnnotationBeanNameGenerator.generateBeanName(AnnotationBeanNameGenerator.java:70)
    at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.doScan(ClassPathBeanDefinitionScanner.java:247)
    at org.springframework.context.annotation.ComponentScanBeanDefinitionParser.parse(ComponentScanBeanDefinitionParser.java:85)
    at org.springframework.beans.factory.xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:74)
    at org.springframework.ide.eclipse.beans.core.internal.model.namespaces.DelegatingNamespaceHandlerResolver$ElementTrackingNamespaceHandler.parse(DelegatingNamespaceHandlerResolver.java:177)
    at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1427)
    at org.springframework.ide.eclipse.beans.core.internal.model.BeansConfig$ErrorSuppressingBeanDefinitionParserDelegate.parseCustomElement(BeansConfig.java:1400)
    at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1417)
    at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:187)
    at org.springframework.ide.eclipse.beans.core.internal.model.BeansConfig$ToolingFriendlyBeanDefinitionDocumentReader.doRegisterBeanDefinitions(BeansConfig.java:1330)
    at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:110)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:494)
    at org.springframework.ide.eclipse.beans.core.internal.model.BeansConfig$2.registerBeanDefinitions(BeansConfig.java:402)
    at …
Run Code Online (Sandbox Code Playgroud)

spring spring-mvc applicationcontext

3
推荐指数
1
解决办法
2819
查看次数