我有一个Spring地图问题让我流泪.
我的春天看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd
">
<util:map id="mockMap">
<entry key="userTest1" value="test1"/>
<entry key="userTest2" value="test2"/>
<entry key="userTest3" value="test6"/>
</util:map>
</beans>
Run Code Online (Sandbox Code Playgroud)
然后我自动连接的代码如下(省略了相关部分):
@Autowired
@Resource(name="mockMap")
Map<String, String> testMap;
@Test
public void testGetGearListActivityOK() {
for (String key : testMap.keySet()) {
System.out.println("key = " + key);
}
}
Run Code Online (Sandbox Code Playgroud)
令人惊讶的是,这实际上会给我一个错误的自动装配步骤,说没有匹配类型字符串的bean.但是,如果我将单元测试中的地图更改为Map,那么我得到以下输出:
Run Code Online (Sandbox Code Playgroud)[junit] key = mockMap [junit] key = org.springframework.context.annotation.internalConfigurationAnnotationProcessor [junit] key = org.springframework.context.annotation.internalAutowiredAnnotationProcessor [junit] key = org.springframework.context.annotation.internalRequiredAnnotationProcessor [junit] key = org.springframework.context.annotation.internalCommonAnnotationProcessor [junit] key = systemProperties [junit] key = …
我正在编写一个PL/SQL过程,它根据输入变量执行选择,然后在select中为每个结果插入一行.由于我对PL/SQL的新意,我无法调试查询错误.我知道这一定很容易,但出于某种原因我被困在这里.谢谢你的帮助!
CREATE OR REPLACE PROCEDURE setup_name_map(ranking_id IN NUMBER, class_string IN VARCHAR2)
IS
BEGIN
FOR rec IN (SELECT NAME_ID FROM PRODUCT_NAMES WHERE NAME = class_string)
LOOP
EXECUTE IMMEDIATE 'INSERT INTO NAME_RANKING (NAME_ID, RANKING_ID) VALUES (' || rec.NAME_ID || ', ' || ranking_id || ')';
END LOOP;
END;
Run Code Online (Sandbox Code Playgroud)
根据Oracle Developer Compiler ...'NAME_ID'是无效的标识符.我试过把它放在引号中,但没有骰子.它还抱怨循环索引变量'REC'的使用无效.任何帮助深表感谢.
首先让我说我对这一切都是新手.我想要做的是使用Java中的gpg来解密加密文件.
我成功完成了什么:
有同事使用我的公钥和他的私钥加密文件并成功解密它.
走了另一条路
让另一位同事尝试解密一个不适合他的文件:失败(如预期的那样)
我的密钥是这样生成的......
(gpg --version告诉我我正在使用1.4.5而我正在使用Bouncy Castle 1.47)
gpg --gen-ley
选择选项"DSA和Elgamal(默认)"
填写其他字段并生成密钥.
该文件使用我的公钥和另一个密钥加密.我想解密它.我编写了以下Java代码来完成此任务.我正在使用几种弃用的方法,但我无法弄清楚如何正确实现使用非弃用版本所需的工厂方法,所以如果有人对我应该使用的那些实现有一个想法,那将是一个不错的奖金.
Security.addProvider(new BouncyCastleProvider());
PGPSecretKeyRingCollection secretKeyRing = new PGPSecretKeyRingCollection(new FileInputStream(new File("test-files/secring.gpg")));
PGPSecretKeyRing pgpSecretKeyRing = (PGPSecretKeyRing) secretKeyRing.getKeyRings().next();
PGPSecretKey secretKey = pgpSecretKeyRing.getSecretKey();
PGPPrivateKey privateKey = secretKey.extractPrivateKey("mypassword".toCharArray(), "BC");
System.out.println(privateKey.getKey().getAlgorithm());
System.out.println(privateKey.getKey().getFormat());
PGPObjectFactory pgpF = new PGPObjectFactory(
new FileInputStream(new File("test-files/test-file.txt.gpg")));
Object pgpObj = pgpF.nextObject();
PGPEncryptedDataList encryptedDataList = (PGPEncryptedDataList) pgpObj;
Iterator objectsIterator = encryptedDataList.getEncryptedDataObjects();
PGPPublicKeyEncryptedData publicKeyEncryptedData = (PGPPublicKeyEncryptedData) objectsIterator.next();
InputStream inputStream = publicKeyEncryptedData.getDataStream(privateKey, "BC");
Run Code Online (Sandbox Code Playgroud)
因此,当我运行此代码时,我了解到我的密钥的算法和格式如下:
算法:DSA格式:PKCS#8
然后它在最后一行打破:
Exception in thread "main" org.bouncycastle.openpgp.PGPException: error …
Run Code Online (Sandbox Code Playgroud) 我无法在Amazon Cloud上找到关于Memcached的好教程,而且我对这整个缓存事件都很陌生.我试图通过亚马逊的ElastiCache服务和spymemcached客户端使用memcached来实际进行memcached调用.
这就是我现在用Java做的事情:
try {
ConnectionFactoryBuilder connectionFactoryBuilder = new ConnectionFactoryBuilder();
MemcachedClient memcachedClient = new MemcachedClient(
connectionFactoryBuilder.build(),
AddrUtil.getAddresses("<beginning of cache node end point grabbed from AWS Console>.cache.amazonaws.com:11211"));
memcachedClient.set("test", 12, new Integer(12));
System.out.println(memcachedClient.get("test"));
} catch (IOException ioException) {
ioException.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
我尝试这个时得到的错误是:
java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:567)
at net.spy.memcached.MemcachedConnection.handleIO(MemcachedConnection.java:414)
at net.spy.memcached.MemcachedConnection.handleIO(MemcachedConnection.java:278)
at net.spy.memcached.MemcachedClient.run(MemcachedClient.java:1981)
2012-02-01 19:25:35.415 WARN net.spy.memcached.MemcachedConnection: Closing, and reopening {QA sa=<node endpoint>.cache.amazonaws.com/184.73.64.56:11211, #Rops=0, #Wops=2, #iq=0, topRop=null, topWop=net.spy.memcached.protocol.ascii.StoreOperationImpl@be8c3e, toWrite=0, interested=0}, attempt 1.
net.spy.memcached.OperationTimeoutException: Timeout waiting for value
at net.spy.memcached.MemcachedClient.get(MemcachedClient.java:1142)
at …
Run Code Online (Sandbox Code Playgroud) memcached amazon-web-services spymemcached amazon-elasticache
我有兴趣开始写Facebook游戏.快速谷歌搜索Facebook游戏技术并没有给我很多.看起来Flash很受欢迎.
公司/个人通常使用哪些其他技术来编写游戏?
我在业界经验丰富,有Java,Adobe Flex(从未使用过Flash),PHP,MySql,Javascript,XML等.
我想知道最好的起点在哪里,以及是否有人有关于好书的建议.
我在javascript中创建了一个巨大的数组......它有4个级别,很多元素很长.我在运行时使用php创建它,这样页面上的所有内容都可以顺利运行,无需查询.
但是,现在,我对Array有一些问题,我的html文件没有看到在Array之后列出的javascript函数.通过测试,我已经缩短了阵列并使其工作,但是对于我的生活,我无法弄清楚为什么它会以完整的形式切断脚本的其余部分.
我很感激任何答案要么告诉我A.如何使用Firebug找到问题(我对Firebug来说很新)或者B.告诉我#$%^问题是什么!
我将在下面列出我的整个脚本(来自php的输出).遇到问题的数组是"inventoryNames".我已经检查过问题是否是问题,但我现在已经99%肯定了.如果我评论它一切正常.谢谢
<script type="text/javascript">
var inventoryNames =
Array(
Array(
Array(
Array("AC/DC", "Back in Black", "36", "VG++", "12", ""),
Array("AC/DC", "Back in Black", "37", "VG", "8", "")
),
Array(
Array("AC/DC", "Highway to Hell", "30", "VG++", "10", ""),
Array("AC/DC", "Highway to Hell", "38", "VG", "5", ""),
Array("AC/DC", "Highway to Hell", "35", "NM", "16", ""),
Array("AC/DC", "Highway to Hell", "39", "NM", "14", "")
)
),
Array(
Array(
Array("Al Green", "Call Me", "40", "G", "5", ""),
Array("Al Green", "Call Me", "31", "NM", …
Run Code Online (Sandbox Code Playgroud)