我有以下Java代码来获取给定URL的HTML页面的全部内容.这可以以更有效的方式完成吗?欢迎任何改进.
public static String getHTML(final String url) throws IOException {
if (url == null || url.length() == 0) {
throw new IllegalArgumentException("url cannot be null or empty");
}
final HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection();
final BufferedReader buf = new BufferedReader(new InputStreamReader(conn.getInputStream()));
final StringBuilder page = new StringBuilder();
final String lineEnd = System.getProperty("line.separator");
String line;
try {
while (true) {
line = buf.readLine();
if (line == null) {
break;
}
page.append(line).append(lineEnd);
}
} finally {
buf.close();
}
return page.toString();
} …Run Code Online (Sandbox Code Playgroud) 有没有人知道一个快速,免费的本地HTML验证器来复制和粘贴代码,直接在各自的行上显示错误?
我有一个场景,我在事务中循环结果集,我需要通过结果集在每个迭代中插入一个唯一的日期时间值 - 每次都会重新计算GetDate()或者只是第一次计算它然后通过循环每次迭代都是一样的?
我的伪代码如下:
BEGIN TRANSACTION
GO
DECLARE @ID INT
DECLARE @table TABLE (/* Columns */)
WHILE (SELECT COUNT(*) FROM @table WHERE PROCESSED = 0) > 0
BEGIN
SELECT TOP 1 @ID = ID FROM @table WHERE PROCESSED = 0
-- INSERT GetDate() into child table at this point.
-- Will GetDate() be re-evaluated each time?
UPDATE @table SET PROCESSED = 1 WHERE ID = @ID
END
END TRANSACTION
GO
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我正在写一个任务,涉及在Solaris盒子上向PostgreSQL添加一些功能.作为任务的一部分,我们需要在客户端打印一些信息(即:使用elog.)
PostgreSQL已经有很多帮助方法可以打印出所需的信息,但是,帮助方法包含了数百个printf调用,并且该elog方法仅适用于c风格的字符串.
我可以暂时将printf调用重定向到缓冲区,以便我可以轻松地将其发送elog到客户端吗?
如果那是不可能的,那么修改辅助方法以最终将缓冲区作为输出的最简单方法是什么?
我正在尝试将很长的UTC时间戳转换为东部标准时间,并且完全迷路了。任何提示都很棒!
谢谢,R
我有一个对象数组,我知道元素是String类型,比如说我需要多次访问它们.
哪个会运行得更快?如果它是在一个内存有限的移动设备上,这将是一个更好的做法?谢谢.
我是Python的新手,我在使用数组函数时遇到了一些麻烦.我想制作一个4乘4的数组,其中包含1到16之间的数字.
我知道使用 np.zeros((4,4))输出4x4数组全部为零.使用np.array(range(17))我可以获得所需数字的数组但不是正确的形状(4x4).
它肯定相当简单吗?所有评论都非常感谢.
Java编程语言中最昂贵的(字节码和cpu周期)语句是什么?
有没有办法禁用UITableView行的"可选择性"?
示例:我想在某个时间与某位造型师预约理发.向用户显示的是以半小时为增量的时间列表,但是不可用的时间是灰色的/不可选的.
在Java 6 HotSpot VM上,以下哪一项更优化?
final Map<Foo,Bar> map = new HashMap<Foo,Bar>(someNotSoLargeNumber);
for (int i = 0; i < someLargeNumber; i++)
{
doSomethingWithMap(map);
map.clear();
}
Run Code Online (Sandbox Code Playgroud)
要么
final int someNotSoLargeNumber = ...;
for (int i = 0; i < someLargeNumber; i++)
{
final Map<Foo,Bar> map = new HashMap<Foo,Bar>(someNotSoLargeNumber);
doSomethingWithMap(map);
}
Run Code Online (Sandbox Code Playgroud)
我认为他们对意图都很清楚,所以我不认为风格/增加复杂性是一个问题.
直觉看起来第一个会更好,因为只有一个'新'.但是,如果不保留对地图的引用,HotSpot是否能够确定为每个循环创建相同大小的映射(内部为Entry [someNotSoLargeNumber]),然后使用相同的内存块(即不做了很多内存分配,只是将调零比调用每个循环的clear()更快?
一个可接受的答案是指向文档的链接,该文档描述了HotSpot VM实际可以实现的不同类型的优化,以及如何编写代码来协助HotSpot(而不是手动优化代码的天真魅力).
java ×5
optimization ×3
arrays ×2
string ×2
bytecode ×1
c ×1
datetime ×1
getdate ×1
html ×1
inputstream ×1
iphone ×1
jvm-hotspot ×1
numpy ×1
objective-c ×1
performance ×1
postgresql ×1
printf ×1
python ×1
redirect ×1
solaris ×1
sql-server ×1
t-sql ×1
uitableview ×1
utc ×1
validation ×1
w3c ×1