我试图检查Java String是否不是null,不是空的而不是空格.
在我看来,这段代码应该完全适合这项工作.
public static boolean isEmpty(String s) {
if ((s != null) && (s.trim().length() > 0))
return false;
else
return true;
}
Run Code Online (Sandbox Code Playgroud)
根据文档,String.trim()应该如此工作:
返回字符串的副本,省略前导和尾随空格.
如果此
String对象表示空字符序列,或者此对象表示的字符序列的第一个和最后一个字符的String代码都大于'\u0020'(空格字符),则String返回对此对象的引用.
但是,apache/commons/lang/StringUtils.java它有点不同.
public static boolean isBlank(String str) {
int strLen;
if (str == null || (strLen = str.length()) == 0) {
return true;
}
for (int i = 0; i < strLen; i++) {
if ((Character.isWhitespace(str.charAt(i)) == false)) {
return false; …Run Code Online (Sandbox Code Playgroud) 我只是测试了一个gradle(这个领域的绝对菜鸟).
我在Windows机器上尝试这个.我曾经让Maven在同一台机器上为我做构建和发布.它位于具有NTLM身份验证的代理之后.过去工作正常.然而,不知何故,Gradle并没有为我做这件事.
我的build.gradle有以下配置(除了其他)
// Java plugin to build our JAR artifact.
apply plugin: 'java'
// Build stuff with jdk 1.7
sourceCompatibility = 1.7
targetCompatibility = 1.7
// Regular name and version for your project.
group = 'foo.bar.gradle'
version = '1.0-SNAPSHOT'
// The local maven repository
def localMavenRepo = 'file://C:/ProgramFiles/MavenRepository'
repositories {
// Use the maven central repository.
mavenCentral()
// ... and the local maven repository.
maven { url localMavenRepo }
// maven { url 'http://www.springsource.com/repository/' }
}
dependencies {
compile …Run Code Online (Sandbox Code Playgroud) 有没有办法指定要在Spring运行的JUnit中使用的logback配置文件?
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("/my/app/springConfiguration.xml")
public class MyTest {
private static final Logger logger = LoggerFactory.getLogger(MyTest.class);
@Autowired
Something something;
}
Run Code Online (Sandbox Code Playgroud)
现在,我有了logback.xml和其中的多个.有一个应该在prod中运行,然后有一个我想要这个测试.有一个简单的方法吗?
编辑:这个问题特定于我从Eclipse运行JUnit时的情况.我正在使用Windows 7上的Eclipse 4.3.
我有一个java桌面服务。它当前使用速度模板来创建格式化的 RTF 文件。这些模板有相当多,并且无法更改它们(或改变速度)。
我正在寻找一种使用 java 代码将 RTF 文件更改为 PDF 的快速简便的方法。我已经检查了以下途径。1. iText 2. OpenOffice 3. JodConverter
然而,他们都是 PDF 创建者。我需要将 RTF 转换为 PDF 的工具。请帮忙。谢谢。
我必须在DB2数据库中加载大约1500万行数据- 使用java.
为了简单起见,我不打算谈论文件的格式或数据库中的表数.比方说,只有一个包含5列的表从一个巨大的单个csv文件中获取数据.
在这种情况下 - 我需要一些东西
我并不担心
在我看来,使用简单的批量插入java是要走的路.我知道Spring Batch但不知道是否值得努力添加该层.
问题分组 - 你会建议什么.Java / Java EE世界上任何东西都是可以接受的解决方案(只要它不需要我们需要购买的软件).
这是关于excel中的宏.
当按下组合键(即触发宏)时,我需要对具有ActiveCell的行的第1列到第10列进行一些格式更改.
目前我正在选择整行
ActiveCell.EntireRow.Select
Run Code Online (Sandbox Code Playgroud)
但是,我只需要选择第1行到第10行.我认为它应该是类似的
ActiveCell.Range(1, 10).Select
Run Code Online (Sandbox Code Playgroud)
但这不起作用.
为了清楚起见,我已经读过了
ActiveCell.Offset(5, -4).Select
Run Code Online (Sandbox Code Playgroud)
但这不符合我的情况.ActiveCell可以是行的任何列,因此硬编码的偏移量无济于事.
所以,那里的优秀大师,我希望这是一个快速的东西,只是我不知道怎么找不到答案.请帮忙.
我对Java泛型有一个奇怪的问题.实际上它可能根本不是一个问题,我可能只是因为我试图在设计中错误地使用泛型.我不会透露申请的全部细节(这是无关紧要和无聊的).
我创建了一个小片段,捕捉问题的本质.
有一个Producer界面,看起来像这样.
public interface Producer<P> {
public P produce();
}
Run Code Online (Sandbox Code Playgroud)
这个接口的实现看起来像这样
public class IntegerProducer<P> implements Producer<P> {
@Override
public P produce() {
return (P)new Integer(10);
}
}
Run Code Online (Sandbox Code Playgroud)
我在制作方法中真正需要做的就是这样
if (P instanceOf Integer) return (P)new Integer(10);
else throw new Exception("Something weird happened in the client app");
Run Code Online (Sandbox Code Playgroud)
当然,P instanceOf Integer不起作用.但如果你已经了解了我想要做的事情,请你分享一个解决方案.
谢谢你的帮助.
澄清1:问题不在于我只想返回整数.问题是在函数produce()中,我需要检查客户端程序使用的泛型类型,并根据它更改函数的行为.这不是我想要限制用于特定类型的Object(我可以使用通配符)的泛型的类型,但我需要函数produce()根据泛型中使用的Object的类型稍微不同地表现客户端代码.