小编Ris*_*hak的帖子

在抽象超类中注入spring依赖项

我需要使用spring框架在依赖的抽象超类中注入依赖项.

class A extends AbstractClassB{ 
    private Xdao daox ;
    ...
    public setXdao() { ... }
}

class AbstractClassB{
    ..
    private yDao  daoy;
    public seyYdao() { ... }
}
Run Code Online (Sandbox Code Playgroud)

每次我实例化抽象类B时都需要传递超类依赖项(在我的项目中可以用100种方式进行子类化)

application.xml中的条目(spring上下文文件)

<bean id="aClass" class="com.mypro.A" 
    <property name="daox" ref="SomeXDaoClassRef" /> 
    <property name="daoy" ref="SomeYDaoClassRef"/>
</bean>
Run Code Online (Sandbox Code Playgroud)

我怎样才能在application.xml中创建超类AbstractClassB的bean引用,以便我可以在所有子类bean创建中使用它?

spring dependency-injection

27
推荐指数
2
解决办法
3万
查看次数

为什么使用new运算符创建的String在字符串池中创建字符串文字

我的问题是什么是在字符串池中创建字符串对象以及在声明字符串时在Heap上创建字符串对象的用途是什么String a = new String("abc");

为什么我们在创建字符串时在堆中创建字符串String a = "abc".

java string string-pool

6
推荐指数
1
解决办法
4054
查看次数

替换字符串中的所有`[]`字符

我有一个字符串.

 String myStrangeString = "java-1.7, ant-1.6.5, sonar-runner], [java-1.7, ant-1.6.5, sonar-runner], [java-1.7, ant-1.6.5, sonar-runner";
Run Code Online (Sandbox Code Playgroud)

我想从中删除所有[]字符myStrangeString.

我试过了,

myStrangeString.replaceAll("[[]]", "")
Run Code Online (Sandbox Code Playgroud)

但得到了错误

Return Value :Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed character class near index 3
[[]]
   ^
    at java.util.regex.Pattern.error(Pattern.java:1924)
    at java.util.regex.Pattern.clazz(Pattern.java:2493)
    at java.util.regex.Pattern.sequence(Pattern.java:2030)
    at java.util.regex.Pattern.expr(Pattern.java:1964)
    at java.util.regex.Pattern.compile(Pattern.java:1665)
    at java.util.regex.Pattern.<init>(Pattern.java:1337)
    at java.util.regex.Pattern.compile(Pattern.java:1022)
    at java.lang.String.replaceAll(String.java:2162)
    at Test.main(Test.java:8)
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能删除[]我的myStrangeString

java regex

2
推荐指数
1
解决办法
727
查看次数

如何在最后两个下划线之间获取String

我有一个字符串 "abcde-abc-db-tada_x12.12_999ZZZ_121121.333"

结果是 999ZZZ

我试过用

private static String getValue(String myString) {

    Pattern p = Pattern.compile("_(\\d+)_1");
    Matcher m = p.matcher(myString);
    if (m.matches()) {

        System.out.println(m.group(1));  // Should print 999ZZZ

    } else {
         System.out.println("not found"); 
    }
}
Run Code Online (Sandbox Code Playgroud)

java regex

1
推荐指数
2
解决办法
489
查看次数

标签 统计

java ×3

regex ×2

dependency-injection ×1

spring ×1

string ×1

string-pool ×1