这是我渲染JTable并更改行颜色的代码,但它没有在第6列中显示复选框,只显示字符串(true,false).
你能提供解决方案吗?
提前致谢.
public class JLabelRenderer extends JLabel implements TableCellRenderer
{
private MyJTable myTable;
/**
* Creates a Custom JLabel Cell Renderer
* @param t your JTable implmentation that holds the Hashtable to inquire for
* rows and colors to paint.
*/
public JLabelRenderer(MyJTable t)
{
this.myTable = t;
}
/**
* Returns the component used for drawing the cell. This method is
* used to configure the renderer appropriately before drawing.
* see TableCellRenderer.getTableCellRendererComponent(...); for more comments on the …Run Code Online (Sandbox Code Playgroud) 我有一个大文件(英文维基百科文章只有数据库作为XML文件).我正在使用一次读一个字符BufferedReader.伪代码是:
file = BufferedReader...
while (file.ready())
character = file.read()
Run Code Online (Sandbox Code Playgroud)
这实际上有效吗?或者ready只是false在等待硬盘返回数据时返回,而不是EOF在达到数据时实际返回?我试图使用,if (file.read() == -1)但似乎遇到了一个我无法找到的无限循环.
我只是想知道它是否正在阅读整个文件,因为我的统计数据显示已经阅读了444,380个维基百科页面,但我认为还有更多的文章.
这里(使用JQuery和Jquery-svg进行SVG拖动,接受了答案)是实现拖放功能来移动圆圈.它基于可移动圆对象的变化cx和cy属性.
如何拖放多边形?
我怎样才能使用任何其他没有的元素cx,cy坐标?
我应该重新计算所有对象点吗?
我希望有一种更简单的方法.我打算使用JavaScript + jQuery
我们已经实现了Java Lucene搜索引擎4.5,我试图搜索内容,即使字段值不区分大小写(例如,如果我搜索名为"Banglore"的城市,我得到一个结果,但是当我搜索一个名字的城市时"banglore"我得到0结果).
我用来StandardAnalyzer分析数据并WildcardQuery匹配一个Like条件(我试过这里没有成功).
我不知道我哪里出错了.我很感激有关修复此区分大小写问题的任何指导.
public SearchHelper
{
Analyzer analyzer;
Directory index;
public IndexSearcher searcher = null;
public IndexWriter indexWriter = null;
public QueryParser parser = null;
private static int hitsPerPage = 100;
/**
* @param indexFileLocation
* @throws IOException
*/
public SearchHelper(String indexFileLocation) throws IOException
{
// this.analyzer =new StandardAnalyzer();
this.analyzer = new CaseStandardAnalyzer();
// analyzer = new ThaiAnalyzer();
this.index = FSDirectory.open(java.nio.file.Paths.get(indexFileLocation));
}
/**
* @param create
* @return
* @throws IOException …Run Code Online (Sandbox Code Playgroud) 我有一个List的Pin对象(List<Pin>),其中的Pin类具有以下属性:
String pinNumber, String pinType, Date insertDate
我想得到一个HashMap具有<String pinNumber, int count>不同pinNumber的,告诉我在中有多少不同的pinNumber List<Pin>以及每个计数。
所以我知道的方法是:
List<Pin>HashMap包含pinNumber的键值,并且:我想对Pin对象中的每个字段执行相同的操作。
我确定应该有一个更简单的方法来做到这一点?
番石榴也许更简单?
我最近将我的开发环境从Java 7升级到Java 8,现在发现了大量以前未检测到的javadoc问题.
默认情况下,Ant(通过Eclipse Mars调用)将其警告(我假设错误)限制为100:

是否有任何参数强制Ant显示所有 javadoc警告而不是限制为100?
我试图-Xmaxwarns 1000通过compilerarg元素使用参数,但似乎Eclipse Mars(Ant 1.9.4)javadoc任务中的当前Ant版本不支持该compilerarg元素(它仅在javac任务中受支持):
<!-- Generate the API documentation. -->
<target name="javadoc" depends="clean" description="Generate the API documentation.">
<!-- Create the build directory structure used by javadoc. -->
<mkdir dir="${build.folder}" />
<mkdir dir="${docs.folder}" />
<!-- Run javadoc. -->
<javadoc destdir="${docs.folder}/api" author="true" version="true" use="true" windowtitle="${documentation.title}">
<compilerarg value="-Xmaxerrs 1000 -Xmaxwarns 1000" />
<classpath>
...
Run Code Online (Sandbox Code Playgroud)

Java 8 javadoc 确实支持这些参数(Java 7 b100中 …
我是春天的新手。我注意到在处理静态资源时,有两个选项可用:
选项1:
如果使用以下代码DispatcherServlet将Spring映射到/,这使其成为“默认 Servlet”,则可以使用RequestMapping注释(覆盖AbstractAnnotationConfigDispatcherServletInitializer类)将某些静态资源映射到 Spring 处理程序:
@Override
protected String[] getServletMappings() {
return new String[]{"/"};
}
Run Code Online (Sandbox Code Playgroud)
然后我们仍然可以启用容器的“默认 Servlet”来处理那些 URL 模式没有被 Spring 请求映射(覆盖WebMvcConfigurerAdapter类)覆盖的静态资源:
@Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
configurer.enable();
}
Run Code Online (Sandbox Code Playgroud)
这基本上使用servlet容器的“默认servlet”为包罗万象的处理所有的静态资源错过由Spring的DispatcherServlet。
选项 2:
(覆盖WebMvcConfigurerAdapter类)
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
super.addResourceHandlers(registry);
registry.addResourceHandler("*.efi").addResourceLocations("/");
}
Run Code Online (Sandbox Code Playgroud)
我通常选择选项 2,因为我想坚持使用 Spring,但我知道这不是一个强有力的理由。
一些与静态资源处理相关的参考:
我在类中使用Java登录。
例:
public class MyClass {
private static Logger logger = Logger.getLogger(MyClass.class.getName());
....
}
Run Code Online (Sandbox Code Playgroud)
当我为该类编写JUnit测试时,我想将Loglevel设置为'FINE'。我试过了:
@Before
public void setup() throws PluginException {
Logger.getGlobal().setLevel(Level.FINE);
....
}
Run Code Online (Sandbox Code Playgroud)
但这没有效果。使用Java日志记录时,如何在JUnit测试中控制日志级别?我正在使用Maven运行测试。
我已经用尽了我的能力来研究和试验解决这个问题.我已经尝试过Trust Managers,ssl socket工厂,hostName验证器,scheme注册表,ssl上下文修改等.
有人可以帮帮我吗?
该计划是:
import java.io.BufferedReader ;
import java.io.InputStreamReader ;
import java.io.Reader ;
import java.net.URL ;
import java.net.URLConnection ;
import java.security.cert.X509Certificate ;
import javax.net.ssl.HostnameVerifier ;
import javax.net.ssl.HttpsURLConnection ;
import javax.net.ssl.SSLContext ;
import javax.net.ssl.SSLSession ;
import javax.net.ssl.TrustManager ;
import javax.net.ssl.X509TrustManager ;
public class
TestSSL {
public static void
main(String[] args)
throws Exception {
// Create a trust manager that does not validate certificate chains
TrustManager[] trustAllCerts = new TrustManager[]
{ new X509TrustManager() {
public java.security.cert.X509Certificate[]
getAcceptedIssuers() {
return null ; …Run Code Online (Sandbox Code Playgroud) 我们有一个构建作业,其中控制台输出显示许多奇怪的消息,如下所示,因此我们无法加载完整日志,并且必须删除-X构建配置中的选项以摆脱它们。我认为这是在我升级 Jenkins 版本后发生的。
知道是什么原因造成的吗?
[DEBUG] http-outgoing-0 >> "j[0x5]q4/J[0x18]^di[0x86][0xbf]C_[0xd6]G[0x1d]
[0xd4][0x7][0xf3][0xc7][0x14][0xdf][0x8d][0xe1][0x13][0xd8]$y|#[0x1e][0xbf]
[0xe6][0x81]<[0xca][0x6][0xa1]~j[0x81]3[0xbc][0x98][0xd1][0x83][0xa7]
[0xc5]8[0xfa]>[0xd9]edZ[0xb2][0xc][0xe0][0x5][0xab][0xf3][0x1a]M[0xb3][0xe7]
[0x1][0xf4][\n]"
[DEBUG] http-outgoing-0 >> "[0xcd][0x9d][0x86]Zjp[0xb4][0x8d][0x87]
[0x8f]cn[0xe7][0xab]oL.[0xb2]}[0x86][0xf8]D[0x87][0xba][0x9d][0xcc]j[0x15]
[0xa4][0xe6]![0x9f]_BBC[0xbf]j[0xab]Rl[0x10][0x92][0xc5])[0xb2][0xc5]i[0xc2]
Run Code Online (Sandbox Code Playgroud)