个别且不连续的JTable的小区选择

是否有任何干净的方法允许用户选择JTable的多个非连续单元格? 或者我被迫实现自己的ListSelectionModel? 我在JTable上使用setCellSelectionEnabled()和setSelectionModel()方法,但我只能选择连续单元组。 编辑: 我试过@mKorbel不错的SSCCE。 它适用于列表,但似乎没有完全在表上工作。 这是一个SSCCE: import java.awt.Component; import java.awt.event.InputEvent; import java.awt.event.MouseEvent; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; public class TableSelection extends JFrame{ String[] columnNames = {“First Name”, “Last Name”, “Sport”, “# of Years”, “Vegetarian”}; Object[][] data = { {“Kathy”, “Smith”, “Snowboarding”, new Integer(5), new Boolean(false)}, {“John”, “Doe”, “Rowing”, new Integer(3), new […]

在java中操作和比较浮点数

在Java中,没有精确表示浮点运算。 例如这个java代码: float a = 1.2; float b= 3.0; float c = a * b; if(c == 3.6){ System.out.println(“c is 3.6”); } else { System.out.println(“c is not 3.6”); } 打印“c不是3.6”。 我对超过3位小数的精度感兴趣(#。###)。 我如何处理这个问题来乘以浮点数并可靠地比较它们?

替代ui:JSF中的片段

我正在搜索一种支持的方式来渲染JSF中的一段代码,我通常使用这种方法: 由于ui:fragment不支持渲染大部分IDE(如netbeans将其标记为错误但是它可以工作,因为在JSF参数中是inheritance的。 解决此问题的一种方法是使用另一种结构(例如,如果您使用SEAM) …. 另一种方法是在所有内部内容中设置渲染,如下所示: 但我不喜欢这种方式,因为你必须将渲染添加到每个元素。 另一种方法是使用但是c:如果从JSF树中删除元素而不是你总是想要做什么,特别是如果你使用AJAX。 所以你们有另一种解决方案吗?

在JFreeChart XYPLot中更改单点的形状

我正在使用JFreeChart XYPLot绘制具有不同标签的XYData集。 我为不同的标签创建了不同的XYSeries对象,这样我就可以为不同的标签设置不同的颜色。 现在我需要更改每个XYDataSeries中特定点(测试数据)的形状,如下所示 。 在上面的绘图中,有两种不同的XYSeries,蓝色和红色。 在这两个中,我需要将某些点(测试数据)的形状更改为X而不是圆形。 是否有可能在JFreeChart。 这篇文章解释了如何为整个数据集做到这一点,但我想只改变特定点 下面是我到目前为止编写的代码 public static Map createXYSeries(Data[] dataSet){ Map xySeries = new HashMap(); for(Data data : dataSet){ if(xySeries.get(data.actualLabel) == null){ xySeries.put(data.actualLabel, new XYSeries(data.actualLabel)); } xySeries.get(data.actualLabel).add(data.dimensionValues[0],data.dimensionValues[1]); } return xySeries; } public XYDataset createXYSeriesCollection(Map plottingDataSet) { XYSeriesCollection xySeriesCollection = new XYSeriesCollection(); for (String key : plottingDataSet.keySet()) { xySeriesCollection.addSeries(plottingDataSet.get(key)); } return […]

如何保存程序的状态然后加载它?

我正在尝试保存并重新加载我的Swing程序的状态,在这种情况下是一个扫雷游戏。 我的董事会代码如下。 package mines; import java.awt.Graphics; import java.awt.Image; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.util.Random; import javax.swing.BorderFactory; import javax.swing.ImageIcon; import javax.swing.JLabel; import javax.swing.JPanel; public class Board extends JPanel { public static void main (String[] args) {} private final int NUM_IMAGES = 13; private final int CELL_SIZE = 15; private final int COVER_FOR_CELL = 10; private final […]

JAXB编组XMPP节

我正在尝试使用以下代码段来编组消息: JAXBContext jContext = JAXBContext.newInstance(Iq.class); Marshaller m = newJAXBContext.createMarshaller(); m.setProperty(Marshaller.JAXB_FRAGMENT, Boolean.TRUE); m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); Bind bind = new Bind(); bind.setResource(“resource”); Iq iq = new Iq(); iq.setId(iqId); iq.setType(“set”); iq.getAnies().add(bind); ByteArrayOutputStream baos = new ByteArrayOutputStream(); m.marshal(iq, baos); 这里,Iq和Bind是由相关xmpp模式形成的对象。 我的问题是,使用jaxb 2.0及更高版本,所有命名空间都在根元素中声明: resource 但是,这里需要的是命名空间应该占用适当的位置: resource 有没有办法通过JAXB 2.0或更高版本在第二个xml节中看到它们来编组xmpp节? 长话短说,我在这里有两个问题:1。在适当的位置声明命名空间。 2.删除我理解的命名空间前缀可以使用NamespacePrefixMapper删除? 但不确定,一个例子会很棒。

Java中的感叹号是什么意思?

在控制语句中的布尔表达式意味着相反之前,我想确认!=的含义: 例如: if (!networkConnected()) 这是否意味着“如果网络没有连接”?

如何配置Tomcat以连接MySQL

有人可以提供一些关于如何配置Tomcat来访问MySQL的细节吗? 我在Tomcat中的哪个目录下放置mysql-connector-java-5.1.13-bin ? 我应该将它放在Tomcat 6.0\webapps\myapp\WEB-INF\lib吗? 我是否需要将配置添加到context.xml或server.xml ? 我应该创建一个web.xml文件并将其放在Tomcat 6.0\webapps\myapp\WEB-INF吗? 如果是这样,那么这个文件的内容应该是什么样的?

Java EE规范和multithreading

我正在使用Struts和Spring编写Java EE应用程序。 在其中一个操作中,存在大量数据库处理,因此存在性能问题。 我想知道的是我可以在这里使用multithreading吗? 我认为Java EE规范不允许创建自定义线程,而不是由Server创建的线程(我使用Weblogic)。 请指导我完成这个。

内存中的方法表示是什么?

在思考Java / C#中的编程时,我想知道如何在内存中表示属于对象的方法,以及这个事实如何涉及multithreading。 是一个单独为内存中的每个对象实例化的方法,还是同一类型的所有对象共享该方法的一个实例? 如果是后者,执行线程如何知道要使用哪个对象的属性? 是否可以在C#中使用reflection修改方法的代码,并且只能修改同一类型的多个对象中的一个对象? 一个不使用类属性的静态方法总是线程安全吗? 我试着对这些问题下定决心,但我对他们的答案非常不确定。