标签:
今天做了一个在网页上显示股票动态更新的效果图。
可是最后却因为IDE的不同,而造成了很大的后果,就是:很不高兴!!!
事情是这样的:
刚开始,是使用MyEclipse来写代码的。MyEclipse自身集成了很多的工具,而且好多东西不用自己手动设置就可以配置的很好。可是这对于像我这种初学者而言,这是很不好的。
刚开始用MyEclipse写的时候,只需将主要的代码写完就OK了。
后来换到Eclipse,就是一直有报错。
具体代码如下(只显示主要代码):
1,ActionServlet部分;
if ("/quoto".equals(action)) {
// 模拟生成几只股票的信息
List<Stock> stocks = new ArrayList<Stock>();
Random r = new Random();
for (int i = 0; i < 8; i++) {
Stock s = new Stock();
s.setCode("60023" + i);
s.setName("峰铜电子" + i);
s.setPrice(r.nextInt(500));
stocks.add(s);
}
// fromObject方法也可以传进来数组
JSONArray jsonObj = JSONArray.fromObject(stocks);
String jsonStr = jsonObj.toString();
out.println(jsonStr);
}
2,stock.jsp部分:
<%@page pageEncoding="utf-8" contentType="text/html;charset=utf-8"%>
<html>
<head>
<style>
#d1 {
width: 500px;
height: 400px;
background-color: black;
margin-left: 400px;
margin-top: 30px;
}
#d2 {
color: yellow;
height: 40px;
background-color: red;
}
table {
color: white;
font-size: 24px;
font-style: italic;
}
</style>
<script type="text/javascript" src="js/ajax.js">
</script>
<script type="text/javascript" src="js/prototype-1.6.0.3.js">
</script>
<script type="text/javascript">
function showStock() {
setInterval(quoto, 1000);
}
function quoto() {
var xhr = getXhr();
xhr.open(‘get‘, ‘quoto.do‘, true);
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
var txt = xhr.responseText;
//将json字符串转换成js对象
var arr = txt.evalJSON();
var trs = ‘‘;
for (i = 0; i < arr.length; i++) {
var s = arr[i];
trs += ‘<tr><td>‘ + s.code + ‘</td><td>‘ + s.name
+ ‘</td><td> ‘ + s.price + ‘</td></tr>‘;
}
$(‘tb1‘).innerHTML = trs;
}
};
xhr.send(null);
}
</script>
</head>
<body style="font-size: 30px;" onload="showStock();">
<div id="d1">
<div id="d2">股票实时行情</div>
<div id="d3">
<table width="100%">
<thead>
<tr>
<td>代码</td>
<td>名称</td>
<td>价格</td>
</tr>
</thead>
<tbody id="tb1">
</tbody>
</table>
</div>
</div>
</body>
</html>
3,ajax.js部分
function getXhr() {
var xhr = null;
if (window.XMLHttpRequest) {
xhr = new XMLHttpRequest();
} else {
xhr = new ActiveXObject(‘MicroSoft.XMLHttp‘);
}
return xhr;
}
整体基本就这样了。但是在TOMCAT上运行时,总是出现找不到‘quoto.do‘的错误提示。进行了若干种锚点测试和各种检查,还是没发现问题原因。但是这段代码在MyEclipse上运行就没半点问题。
后来,真的没什么耐性了,就一行一行的对比代码,可是CV大法什么时候出过错呢?结果还是失败。
休息了一会儿,再看代码,从一个旁观者的角度去看,根本就没把运行的问题放在心上,然后就是以这种心态,终于找到原因了:
很坑的原因:在MyEclipse中,xml文件是自动配置好的,无需人工参与;但是在Eclipse中,TM就得纯手工去配!!!!!!!!!!!!
一个一个的去配置各种参数。
然后,就是那个参数少了个*.do的路径,所以,一切的运行都是扯淡!!!
此时的心情就不用去说了。整整一天的时间,全都浪费在这里了。
总结:
各种IDE,各种不同的配置文件的生成和手工,各种设置的参数不同。
ps:还没在NetBeans上测试,也幸好没在那上面测试,不然坑更大。
或许会让我从此与Eclipse为路人。
教训在此了,写下来,然后都来嘲笑我吧。
~瞧,这个白痴,还在码楼~
标签:
原文地址:http://www.cnblogs.com/SummerinShire/p/4665604.html