Tag: java

Java 8并行stream中的自定义线程池

是否有可能为Java 8 并行stream指定自定义线程池? 我找不到任何地方。 想象一下,我有一个服务器应用程序,我想使用并行stream。 但是,应用程序是大型的,multithreading的,所以我想划分它。 我不想在另一个模块的应用程序块任务的一个模块中运行缓慢的任务。 如果我不能为不同的模块使用不同的线程池,这意味着我不能在大多数现实世界的情况下安全地使用并行stream。 试试下面的例子。 有一些CPU密集型任务在单独的线程中执行。 任务利用并行stream。 第一个任务是打破的,所以每一步需要1秒钟(由线程睡眠模拟)。 问题是其他线程卡住,等待中断的任务完成。 这是人为的例子,但想象一下,一个servlet应用程序和一个长期运行的任务提交给共享fork连接池的人。 public class ParallelTest { public static void main(String[] args) throws InterruptedException { ExecutorService es = Executors.newCachedThreadPool(); es.execute(() -> runTask(1000)); //incorrect task es.execute(() -> runTask(0)); es.execute(() -> runTask(0)); es.execute(() -> runTask(0)); es.execute(() -> runTask(0)); es.execute(() -> runTask(0)); es.shutdown(); es.awaitTermination(60, TimeUnit.SECONDS); } private […]

对于null参数,IllegalArgumentException或NullPointerException?

我有一个简单的setter方法为一个属性和null不适合这个特定的属性。 我一直在这种情况下被撕毁:我应该抛出一个IllegalArgumentException ,或一个NullPointerException ? 从javadocs,这两个看起来都合适。 有一种被理解的标准吗? 或者这只是你应该做的任何事情之一,而且都是正确的?

使用JDBC的连接池选项:DBCP vs C3P0

什么是可用于Java / JDBC的最佳连接池库? 我正在考虑2个主要候选人(自由/开源): Apache DBCP – http://commons.apache.org/dbcp/ C3P0 – http://sourceforge.net/projects/c3p0 我在博客和其他论坛上阅读了很多关于他们的内容,但是无法做出决定。 这两个有没有相关的select?

JTable中的多行select

我有一个JTable,有一列是不可编辑的文本,第二列是一个checkbox显示布尔值….现在我想要的是,当用户select多行并取消选中任何一个选中的checkbox,则选中的所有checkbox应该取消选中,反之亦然。

什么是Java混合 – Applet +应用程序?

我怎么写一个? 从评论到我的回复 ,接下来是: “我们以前的东西 – 一个Applet和应用程序 – 现在不可用了。” 并反驳: 垃圾。 它(一个小应用程序和应用程序)被称为混合,而且还活着。 如果您想要澄清,请另行咨询。 我想问一下这个Java混合是什么? 我已经search,但由于某种原因,找不到任何有用的信息,以“活着和好”的东西。 我使用的关键字可能稍微偏离,这可能是一个原因。

问题返回JSON值

我没有得到来自服务器的JSONtypes数据的响应。 我正在使用JSON插件。 jQuery( "#dialog-form" ).dialog({ autoOpen: false, height: 500, width: 750, modal: true, buttons :{ "Search" : function(){ jQuery.ajax({type : 'POST', dataType : 'json', url : '<s:url action="part" method="finder" />', success : handledata}) } } }); var handledata = function(data) { alert(data); } 如果dataType = 'json'我没有得到任何回应,但如果我没有提到任何dataType ,我得到的页面的HTML格式。 public String list(){ JSONObject jo = new JSONObject(); […]

java.sql.SQLException参数索引超出范围(1>参数个数,即0)

validationselectcombobox后,我已经select我无法插入我的数据库。 Tomcat提供以下错误 java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0). 这是如何造成的,我该如何解决?

BufferedWriter不会将所有内容写入输出文件

我有一个Java程序,从文件中逐行读取一些文本,并将新文本写入输出文件。 但是在程序结束之后,并不是所有写入我的BufferedWriter的文本都出现在输出文件中。 这是为什么? 细节:程序将一个CSV文本文档转换成SQL命令,将数据插入到一个表中。 该文本文件有超过10000行看起来类似于以下内容: 2007,10,9,1,1,1006134,19423882 该程序似乎工作正常,除了它只是通过创build一个新的SQL语句已经将其打印到SQL文件中的半途停止在文件中。 它看起来像这样: insert into nyccrash values (2007, 1, 2, 1, 4, 1033092, 259916); insert into nyccrash values (2007, 1, 1, 1, 1, 1020246, 197687); insert into nyccrash values (2007, 10, 9, 1 这发生在约10000行之后,但在文件结束之前的几百行。 发生中断的地方在1和1之间。 但是,字符似乎并不重要,因为如果我将1更改为42则写入新文件的最后一个内容是4 ,即从该整数中切掉2。 所以读者或写作者在写作/阅读一定量之后似乎就要死去了。 我的Java代码如下: import java.io.*; public class InsertCrashData { public static void main (String […]

你如何在Java中设置“11th”,“21st”或“23rd”的月份? (有序指标)

我知道这会给我一个月的一天( 23 ): SimpleDateFormat formatDayOfMonth = new SimpleDateFormat("d"); 但是,如何在一个月的日子里设置一个序数指标 ,比如说Java中的11th 21st或23rd呢?

java.net.SocketException:连接重置

我正在尝试从套接字读取以下错误。 我正在做的InputStream readInt() ,我得到这个错误。 仔细阅读文档,这表明连接的客户端部分closures了连接。 在这种情况下,我是服务器。 我有权访问客户端日志文件,并且不closures连接,实际上它的日志文件表明我正在closures连接。 那么有人知道为什么会发生这种情况吗? 还有什么要检查的? 当有地方资源达到阈值时,这是否会出现? 我注意到,我有以下行: socket.setSoTimeout(10000); 就在readInt() 。 有一个原因(长话短说),但只是好奇,有什么情况下,这可能导致指出的错误? 我的服务器运行在我的IDE中,而我恰巧把我的IDE卡在一个断点上,然后我注意到在我的IDE中我自己的日志中出现了完全相同的错误。 无论如何,只要提到它,希望不是一个红色的鲱鱼。 🙁