有很多例子使用FlatFileItemReader和TaskExecutor.我在下面提供了示例(包括XML和Java Config): > Using Oracle Coherence with Spring Batch> Spring Batch Multithreading Example 我已经将自己的XML配置用于大型CSV(GB大小),使用开箱即用的JpaItemWriter写入数据库.即使没有设置save-state = false或采取任何特殊处理,似乎也没有问题. 现在,FlatFileItemReader被记录为不是线程安全的. 我的猜测是,如果hashCode()和equals()覆盖...
我在Deitel和Deitel的书“Java:如何编程”中读到了这个错误预防技巧(3.1).我不明白这意味着什么.我只知道它正在讨论下面的代码行:// display the name stored in object myAccount System.out.printf("Name in object myAccount is:%n%s%n", myAccount.getName());该段如下:Never use as a format-control a string that was input from the user. When method System.out.printf evaluates the format-control string in its f...
我目前正在研究Comparator接口,并注意到在Comparator’s equals方法的文档中,它说明了Note that it is always safe not to override Object.equals(Object)我已经检查了Object类中默认equals方法的实现因此,使用equals方法的默认实现,它只是检查两个实例是否指向同一个对象,因为这= = obj测试参考相等性. 但是如果我有两个Comparator实例会发生什么,它们返回的结果是相同的,我想知道它们是否相同.如果我不重写默认的Object的equals...
public class DataEvent {private static final AtomicInteger lastRevision = new AtomicInteger();private final int revision;private final long threadId;private final long timestamp;private DataEvent(int revision) {this.revision = revision;this.threadId = Thread.currentThread().getId();this.timestamp = System.nanoTime();}public static DataEvent newInstance() {return new DataEvent(lastRevision.incremen...
以下类不是线程安全的(在Proving the following code not thread safe中证明) 是否有一个框架可以帮助编译时/运行时分析并告诉我们以下是不是线程安全的? 对于编译时间,理想情况下在Eclipse中出现了摇摆下划线并告诉我们该类不是线程安全的吗? 对于运行时,任何静态代码分析都会将该类捕获为非线程安全的吗?public class LazyInitRace {private ExpensiveObject instance = null;public ExpensiveObject getInstance() {if (inst...
有人在Android上使用过DTLS,还是有支持DTLS的开源Java实现? 在Android上保护UDP流量的其他选择是什么?解决方法:尚未在纯Java中提供DTLS支持.我们最终通过JNI使用OpenSSL.我怀疑你会在Android上找到任何东西. 您应该使用TLS(这意味着您必须使用TCP).
我创建了Web服务@WebService(serviceName = "DynamipsService2") @Stateless() public class DynamipsService2 {@WebMethod(operationName = "StartSession")public static String StartSession(@WebParam(name = "key") String key) {try {return "100-Session started";} catch (Exception ex) {return null;}}}我想在页面上测试http://localhost:8080/DynamipsService2/DynamipsService2?Tester崩溃bugError generating artifac...
我们有一个Java应用程序,它使用RxTx来更新我们游戏控制台的固件.当用户通过WebStart在我们的网站上启动Java应用程序时,为了避免安全警报,我们已经购买了可信证书并使用该证书对应用程序进行了签名.所有检查都表明它已成功签名,如果我在Mac(OS X 10.6.8)上使用Java 1.6.0_41通过Safari启动应用程序,它会在没有任何抱怨的情况下启动. 但是,如果我在Windows 8计算机上使用IE9启动它,我会收到一条警告:“您是否要运行此应用程序?此应...
我看到很多Java CVE与运行恶意applet有关 – 但我很少看到CVE会影响JVM的服务器端组件.示例:http://www.f-secure.com/v-descs/exploit_java_cve_2012_4681_h.shtml 任何人都可以解释与示例或来源(可能是服务器端与客户端cves列表?)的差异,比较两者?解决方法:一般来说,您没有看到很多影响服务器端的CVE,因为服务器端实际上从不运行用户提供的代码(或攻击者的代码).服务器端的漏洞主要是无法正确处理输入,配置问题,所以不是Java的...
我想在我的春季网络应用程序中添加几个过滤器,但它们中没有关于安全性的任何内容,至少目前是这样.所以.在没有spring-security的情况下我所能做的就是在web.xml中定义多个过滤器(定义过滤器的旧方法).看起来很奇怪,为了能够使用spring过滤器链,我需要添加spring-security作为我项目的依赖项.也许我做错了,确实有过滤链可以在没有弹簧安全依赖的情况下使用?解决方法:Spring Security能够使用Spring Security中包含的FilterChainProx...
我想使用用户名密码域(只是一个字符串)进行身份验证. 它不是唯一的用户名,而是用户名域的唯一组合. 做这个的最好方式是什么? 我正在使用grails 2.3.7解决方法:尝试这样的事情(代码未经过测试):@Component public class BasicAuthenticationProvider implements AuthenticationProvider {@Autowiredprivate UserService registerService;@Overridepublic Authentication authenticate(Authentication authentication) throws Auth...
我最近一直在为一些项目使用弹簧靴,我非常喜欢它.对于一个新项目,我们想使用tomcat-users.xml进行真正的基本身份验证,但我无法弄清楚如何在没有web.xml文件的情况下使用该机制.大多数使用弹簧靴的人似乎都在使用弹簧安全装置. 是否可以使用spring boot java配置模型使用tomcat容器安全性?我理解这打破了可运行的jar范例,但我们计划将其作为战争部署.解决方法:从official Spring doc开始:WEB-INF/web.xml and WebApplicationIniti...
我有一个基于Javascript的Web应用程序使用的JAX-RS API(在Wildfly 8服务器上运行).我们正在学习,因此我们对这个实现可能是愚蠢的事情表示道歉. 我们已经启动并运行基于PBKDF2的密码存储的基本身份验证,但出于显而易见的原因,我们不希望用户每次单击Web应用程序中的新导航项时都必须进行身份验证. 我们目前在开发过程中所做的是在第一次输入凭据时获取凭据并将其存储在BASE64编码的本地变量中,该变量用于所有后续请求(一切都通过HTT...
我试图从java调用web服务.这基本上并不困难,除了webservice期望以用户名和密码以及nonce形式的某些安全性.当我尝试从SoapUi调用web服务时,我看到原始消息如下所示:<soapenv:Envelope xmlns:sch="http://somedomain.com/pe/ws/schema"xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header><wsse:Security soapenv:mustUnderstand="1"xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-...
考虑一个无状态EJBfrom ejb 3.1 speccontainers will support many instances of a sessionbean executing concurrently; however, each instance sees only aserialized sequence of method calls. Therefore, a stateful orstateless session bean does not have to be coded as reentrant 所以一个无状态的seession bean一次最多可以“服务”一个请求,这通常由管理bean池的容器实现.所有这一切的伟大目标是线程安全. 我的问题是...