在Java中,如何编写HTTP请求消息并将其发送到HTTP WebServer?
我已经解析了java.util.Datea,String但是它将本地时区设置为date对象的时区.
时区没有指定String从中Date解析.我想设置date对象的特定时区.
我怎样才能做到这一点?
我在Eclipse中开发了一个动态Web项目.现在我可以使用以下URL通过浏览器访问它:
http://localhost:8080/MyDynamicWebApp
Run Code Online (Sandbox Code Playgroud)
现在我想将访问URL更改为
http://localhost:8080/app
Run Code Online (Sandbox Code Playgroud)
我从项目"属性| Web项目设置|上下文根"中更改了上下文根.
但它没有用.Web应用程序仍具有之前的访问URL.我已经在Tomcat上重新部署了应用程序,重新启动了Tomcat并完成了应该完成的所有操作,但访问URL与之前的相同.
我发现该server.xml文件没有附加WAR文件.那么Tomcat如何确定我的Web应用程序的上下文根server.xml并允许我通过该URL访问应用程序?
我编写了很多解析器.到目前为止,我使用HtmlUnit无头浏览器进行解析和浏览器自动化.
现在,我想分开两个任务.
由于80%的工作只涉及解析,我想使用轻量级HTML解析器,因为在HtmlUnit中首先加载页面需要花费很多时间,然后获取源然后解析它.
我想知道哪个HTML解析器是最好的.如果它接近HtmlUnit解析器,解析器会更好.
编辑:
最好的,我至少需要以下功能:
如果它不清除脏HTML代码,那对我来说没问题.我不需要清理任何HTML源代码.我只需要一种最简单的方法来移动HtmlElements并从中获取数据.
@Version注释如何在JPA中起作用?
我找到了各种答案,摘录如下:
JPA使用实体中的版本字段来检测对同一数据存储记录的并发修改.当JPA运行时检测到同时修改同一记录的尝试时,它会向尝试最后提交的事务抛出异常.
但我仍然不确定它是如何工作的.
同样来自以下几行:
您应该考虑版本字段不可变.更改字段值具有未定义的结果.
这是否意味着我们应该将我们的版本字段声明为final?
我在执行多线程程序时遇到以下错误
java.lang.OutOfMemoryError: Java heap space
Run Code Online (Sandbox Code Playgroud)
上述错误发生在其中一个线程中.
据我所知,堆空间仅由实例变量占用.如果这是正确的,那么为什么在运行正常一段时间之后发生此错误,因为在创建对象时分配了实例变量的空间.
有没有办法增加堆空间?
我应该对我的程序进行哪些更改,以便它可以减少堆空间?
我正在使用Selenium RC自动执行某些浏览器操作,但我希望浏览器不可见.这可能吗?怎么样?那么Selenium Grid呢?我也可以隐藏Selenium RC窗口吗?
我在JScrollPane上嵌入了一个JTextArea,并使用该JTextArea进行输出.
我想,只要在输出中超出的JTextArea的大小,JTextArea中自动滚动,这样用户就不必做手工向下滚动查看最近的输出.
我怎样才能做到这一点?
我已经将JTextArea和JScrollPane的autoscroll属性设置为true.
class CheckStore {
private String displayText;
private boolean state;
private String meaningfulText;
private URL url;
public CheckStore(String text, boolean state) {
this.displayText = text;
this.state = state;
}
:
:
}
Run Code Online (Sandbox Code Playgroud)
由于我只在构造函数中初始化两个变量(displayText和state),其余两个变量(meaningfulText以及url具有该值的变量null)是否需要内存空间来存储null值.
Q1.我认为他们需要空间.如果他们愿意,那么一个int值在内存中占用多少内存(比如displayText需要4个字节).
Q2.字符串在内存中占用多少空间.我想这将取决于字符串的长度.那么一个字符串需要多长的空间?
我通过java访问网页如下:
URLConnection con = url.openConnection();
Run Code Online (Sandbox Code Playgroud)
但在某些情况下,网址会重定向到另一个网址.所以我想知道前一个网址重定向的网址.
以下是我作为回复得到的标题字段:
null-->[HTTP/1.1 200 OK]
Cache-control-->[public,max-age=3600]
last-modified-->[Sat, 17 Apr 2010 13:45:35 GMT]
Transfer-Encoding-->[chunked]
Date-->[Sat, 17 Apr 2010 13:45:35 GMT]
Vary-->[Accept-Encoding]
Expires-->[Sat, 17 Apr 2010 14:45:35 GMT]
Set-Cookie-->[cl_def_hp=copenhagen; domain=.craigslist.org; path=/; expires=Sun, 17 Apr 2011 13:45:35 GMT, cl_def_lang=en; domain=.craigslist.org; path=/; expires=Sun, 17 Apr 2011 13:45:35 GMT]
Connection-->[close]
Content-Type-->[text/html; charset=iso-8859-1;]
Server-->[Apache]
Run Code Online (Sandbox Code Playgroud)
所以目前,我正在从头Set-Cookie字段的值构建重定向的URL .在上面的例子中,重定向的URL是copenhagen.craigslist.org
是否有任何标准方法可以确定特定网址将重定向到哪个网址.
我知道当一个url重定向到其他url时,服务器会发送一个包含Location头字段的中间响应,该头字段告诉重定向的url但我没有通过该url.openConnection();方法接收到该中间响应.
java ×8
html ×2
contextroot ×1
date ×1
eclipse ×1
heap-memory ×1
html-parsing ×1
http ×1
http-headers ×1
java-ee ×1
jpa ×1
jscrollpane ×1
jtextarea ×1
parsing ×1
python ×1
selenium ×1
selenium-rc ×1
swing ×1
timezone ×1
url ×1
web-scraping ×1