我知道,我知道必须有一些线索涵盖这个主题.但我使用搜索并没有得到符合我需要的答案.所以我们走了:
如何检查一个变量,如果是null
或undefined
,是什么之间的差异null
和undefined
?
"=="和"==="之间有什么区别(Google很难搜索到==
)?
我们的团队有像日志这样做的政策
if (LOGGER.isDebugEnabled()) {
LOGGER.debug("model[" + model + "]");
}
Run Code Online (Sandbox Code Playgroud)
而不是像这样简单地调用日志记录方法:
LOGGER.debug("model[" + model + "]");
Run Code Online (Sandbox Code Playgroud)
这种做法能够带来一些性能提升,但另一方面它使代码库更加复杂.我们的应用程序没有性能问题,可能永远不会,引入策略的论点只是它是一个很好的做法,因此每次我们进行日志记录时都应该使用它.
你认为这是一个好政策吗?
我如何利用MySQL的缓存预准备语句的能力?使用预准备语句的一个原因是,如果要再次使用相同的预准备语句,则不需要多次发送预准备语句本身.
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydb" +
"?cachePrepStmts=true", "user", "pass");
for (int i = 0; i < 5; i++) {
PreparedStatement ps = conn.prepareStatement("select * from MYTABLE where id=?");
ps.setInt(1, 1);
ps.execute();
}
conn.close()
Run Code Online (Sandbox Code Playgroud)
运行上面的Java示例时,我在mysqld日志文件中看到了5对Prepare和Execute命令.将ps赋值移到循环之外会导致单个Prepare和5 Execute命令.连接参数"cachePrepStmts = true"似乎没有任何区别.
使用Spring和Hibernate运行类似程序时,发送的Prepare命令数(1或5)取决于是否启用了cachePrepStmts连接参数.Hibernate如何执行预准备语句以利用cachePrepStmts设置?是否有可能使用纯JDBC模仿这个?
我在MySQL Server 4.1.22和mysql-connector-java-5.0.4.jar上运行它
我有哪些选项可以从JSP页面中读取当前用户的角色?我知道visibleOnUserRole="myRole"
Tomahawk组件的属性,但我需要角色来处理比简单可见性更复杂的事情.
在解析不同时区的日期时,我注意到NSDateFormatter在处理过去的日期时会产生奇怪的结果.
我有以下代码:
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
[dateFormatter setLocale:usLocale];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm"];
NSString* dateString1 = @"1890-09-30 12:00";
NSString* dateString2 = @"1890-10-01 12:00";
NSLog(@"original timezone %@", [dateFormatter timeZone]);
NSDate* localDate1 = [dateFormatter dateFromString:dateString1];
NSDate* localDate2 = [dateFormatter dateFromString:dateString2];
NSLog(@"localDate1 %@ » %@", dateString1, localDate1);
NSLog(@"localDate2 %@ » %@", dateString2, localDate2);
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
NSDate* utcDate1 = [dateFormatter dateFromString:dateString1];
NSDate* utcDate2 = [dateFormatter dateFromString:dateString2];
NSLog(@"utcDate1 %@ » %@", dateString1, utcDate1);
NSLog(@"utcDate2 %@ » %@", dateString2, …
Run Code Online (Sandbox Code Playgroud) 可能是最着名的软件开发人员面试问题之一.
你的答案是什么?
编辑:我想知道如何在现实生活中回答这个问题.请尝试像在实际面试时一样制定答案(完整,但不要太长,当然不发布任何链接).