小编ScA*_*er2的帖子

jstl的sql标签如何工作?

我正在使用以下代码从我的jsp查询数据库,但我想知道更多关于幕后发生的事情.

这是我的两个主要问题.

标签是直接访问ResultSet,还是查询结果存储在内存中的数据结构中?

什么时候连接关闭?

<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>

<sql:query var="query" dataSource="${ds}" sql="${listQuery}"></sql:query>
<c:forEach var="row" items="${query.rows}" begin="0">
    ${row.data }
    ${row.more_data }
</c:forEach>
Run Code Online (Sandbox Code Playgroud)

注意:我一直反对在jsp中运行查询,但我的结果集太大,无法在我的动作和我的jsp之间存储在内存中.使用此标记库看起来是最简单的解决方案.

java jsp jstl web-applications

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

如何创建使用WS-Security的ColdFusion Web服务客户端?

我使用Java和WS-Security在我们的产品中公开了几个Web服务.我们的一位客户希望使用ColdFusion来使用Web服务.ColdFusion是否支持WS-Security?我可以通过编写Java客户端并在ColdFusion中使用它来解决它吗?

(我对ColdFusion不太了解).

coldfusion ws-security web-services

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

如何将CXF Web服务使用的地址更改为与wsdl文件中指定的地址不同的地址?

当我根据配置获得wsdl时,我已经开始工作了,但是我想告诉它使用特定地址进行服务调用并使用wsdl的本地副本.

MyWebService serviceDefinition = new MyWebService(new URL(wsdlLocation));
service = serviceDefinition.getMyWebServicePort();
Run Code Online (Sandbox Code Playgroud)

有谁知道这方面的最佳做法?

xml请求有效.

<soap:Body>
<ns2:getData xmlns:ns2="http://services.test.com/">
<arg0>Test Name</arg0>
<arg1>55555555</arg1>
</ns2:getData>
</soap:Body>
Run Code Online (Sandbox Code Playgroud)

代理xml请求不起作用.

<soap:Body>
<ns1:getData xmlns:ns1="http://ws.test.com/">
<ns3:arg0 xmlns:ns2="http://services.test.com/" xmlns:ns3="http://ws.test.com/">Test Name</ns3:arg0>
<ns3:arg1 xmlns:ns2="http://services.test.com/" xmlns:ns3="http://ws.test.com/">55555555</ns3:arg1>
</ns1:getData>
</soap:Body>
Run Code Online (Sandbox Code Playgroud)

java web-services cxf

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

如何使用流解析将xml解析为"消息"并在scala中打印出来?

既然我知道如何在scala中解析xml作为流我需要帮助理解一个非平凡的例子.

我想解析下面的xml作为流,并在我解析出完整的消息时发送一条消息(打印到本例的控制台).

我理解scala中基于流的解析使用case类来处理不同的元素,但我刚刚开始,我不太明白如何做到这一点.

我使用stax解析器在java中工作,我正在尝试将其转换为scala.

任何帮助将不胜感激.

<?xml version="1.0" ?>
<messages>
<message>
   <to>john.doe@gmail.com</to>
   <from>jane.doe@gmail.com</from>
   <subject>Hi Nice</subject>
   <body>Hello this is a truly nice message!</body>
</message>
<message>
   <to>joe@gmail.com</to>
   <from>jane.doe@gmail.com</from>
   <subject>Hi Nice</subject>
   <body>Hello this is a truly nice message!</body>
</message>
</messages>
Run Code Online (Sandbox Code Playgroud)

xml scala

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

如何使用正则表达式在大括号中提取单词?

我想提取括在花括号中的所有单词,所以我有一个像这样的表达式

foo {bar} moo {mar}
Run Code Online (Sandbox Code Playgroud)

要匹配的字符串可能包含任意数量的这些单词,但我开始认为我正在以错误的方式处理此问题.

我的尝试

而且我试图将大括号分成几组,这样我就可以使用每一个匹配.所以,我做了一个正则表达式:

String rx = ".*\\{({GROUP}\\w+)\\}.*";
Run Code Online (Sandbox Code Playgroud)

注意:我正在使用JRegex语法,所以我需要逃避一些问题.

结果

我得到的结果是一个(尽管是正确的)匹配bar,而我期待两个匹配barmar.我误解了什么,我该如何纠正呢?我可能需要为该.部分使用其他一些量词,但我希望你也可以帮助我.

提前谢谢了!

java regex

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

如何用scala中的不可变couterpart替换java可变类?

我试图理解如何在scala中使用不可变类作为可变java类的替代.

我的示例用例是在数据库中搜索联系人.当命令性编程时,您将从数据库表中提取每个字段并将其设置在java对象上.

你会如何使用不可变类型和函数样式在Scala中执行此操作?

我知道我可以使用构造函数并创建一个新的对象实例,将所有必需的数据传递给它,但对于大型复杂的数据结构,这似乎并不优雅.

什么是"Scala"/"功能"方法来实现这一目标?或者与构建复杂的不可变类型有关的一些最佳实践是什么?

public List<Contact> search(String firstName, String lastName) throws SQLException {
    List<Contact> contacts = new ArrayList<Contact>();

    Connection con = null;
    PreparedStatement ps = null;
    ResultSet rs = null;
    try {
        con = dataSource.getConnection();

        ps = con.prepareStatement("select * from contacts where first_name like ? and last_name like ?");
        ps.setString(1, "%" + firstName + "%");
        ps.setString(1, "%" + lastName + "%");
        rs = ps.executeQuery();

        while (rs.next()) {
            Contact contact = new Contact();
            contact.setFirstName(rs.getString("first_name"));
            contact.setMiddleName(rs.getString("middle_name"));
            contact.setLastName(rs.getString("last_name"));
            Date birthday = rs.getDate("birthday"); …
Run Code Online (Sandbox Code Playgroud)

java functional-programming scala

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

从非常大的结果集中显示数据的最佳方法是什么?

我正在编写审计跟踪的报告视图,我需要在.jsp中显示它.将数据从数据库传输到屏幕的"最佳"方法是什么?

我们使用Spring进行依赖注入,数据访问对象和Hibernate.我可以使用hibernate或直接jdbc来生成此报告.

如果我将所有记录加载到内存中,我的内存不足.

任何不涉及在jsp中运行查询的想法?

java hibernate web-applications jdbc

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

如何使用RSA公钥加密java.util.Properties对象(可以是任何大小)?

这是我目前正在使用的代码.它使用BouncyCastle Provider.

static
{
   Security.addProvider(new BouncyCastleProvider());
}

protected String encrypt(byte[] keyData, byte[] data) throws Exception {
   X509EncodedKeySpec keyspec = new X509EncodedKeySpec(keyData);
   KeyFactory kf = KeyFactory.getInstance("RSA", "BC");
   PublicKey pk = kf.generatePublic(keyspec);
   Cipher rsa =  Cipher.getInstance("RSA/None/OAEPWithSHA1AndMGF1Padding", "BC");
   rsa.init(Cipher.ENCRYPT_MODE, pk);
   byte[] output = rsa.doFinal(data);
   String result = base64EncodeBytes(output);
   return result;
}
Run Code Online (Sandbox Code Playgroud)

我现在正在接受

 java.lang.ArrayIndexOutOfBoundsException: too much data for RSA block
    at org.bouncycastle.jce.provider.JCERSACipher.engineDoFinal(Unknown Source)
    at javax.crypto.Cipher.doFinal(DashoA13*..)
    at Encryption.encrypt(RSAToken.java:60)
Run Code Online (Sandbox Code Playgroud)

java security encryption rsa

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

如何使用Java的DatabaseMetaData从MySQL获取表的列表?

DatabaseMetaData metadata = con.getMetaData();
metadata.getTables(catalog, schemaPattern, tableNamePattern, types);
Run Code Online (Sandbox Code Playgroud)

获取表列表需要哪些字段?

java mysql

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

如何使用配置在WCF客户端上设置用户名/密码?

我知道我可以通过代码使用来做到这一点

myClient.ClientCredentials.UserName.UserName = "User";
myClient.ClientCredentials.UserName.Password = "Password";
Run Code Online (Sandbox Code Playgroud)

是否可以通过配置为客户端提供相同的功能?

.net c# wcf ws-security wcf-client

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