8月22日开发笔记

来源:互联网 发布:图片墙制作软件 编辑:程序博客网 时间:2024/06/06 04:46

昨天奋战了一天,终于将APP该修该补的地方完善好了,也算是告了一段落。
今天专注搞了一天WEB,遇到几个数据库的坑,还好都是因为粗心写错参数或者少写了半边引号造成的,检查一下很好解决。有时数据库连接出问题不用着急,把SQL语句打印出来看看,清晰明了,错误的地方一下就发现了。
1、JS中POST传值问题
直接上代码

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>使用javascript传递数据</title><script type="text/javascript">function postData(){var myForm = document.create_r_rElement("form");myForm.method = "post";myForm.action = "a.jsp";var inputs=document.getElementsByName("post_data");var i;for (i=0;i<inputs.length;i++) {var myInput = document.create_r_rElement("input");myInput.type = "text";myInput.name="post_data";myInput.value=inputs[i].value;myForm.a(myInput);}document.body.a(myForm);myForm.submit();document.body.removeChild(myForm);}</script></head><body><form name="form1" action="a.jsp" method="post"><input name="post_data" type="text"></input><input type="button" onclick="postData()" value="提交"></input></form><form name="form2" action="a.jsp" method="post"><input name="post_data" type="text"></input><input type="button" onclick="postData()" value="提交"></input></form><form name="form3" action="a.jsp" method="post"><input name="post_data" type="text"></input><input type="button" onclick="postData()" value="提交"></input></form></body></html>

接收数据那边跟接收普通表单传值一样,就不多说了。
以前没怎么接触过JSP,发现自己真的很小白,连servlet是靠name来get传过来的值都不知道,还一个劲以为ID那个地方打错了。惭愧呀

2、JS数组问题
我觉得JS一个很奇怪的地方就是变量竟然不用区分类型,不像JAVA又是String,又是int的,统统var就好。我以为JS中数组会有特别一点的表示方法,没想到还是var。
在w3school中也很详细介绍了JS array的用法。可以选择初始化时定义好数组长度,也可以不定义,这点感觉比JAVA要灵活,每次JAVA因为没有声明数组长度导致添加值时抛出错误真的很烦。
有两种向数组赋值的方法(你可以添加任意多的值,就像你可以定义你需要的任意多的变量一样)。
1

var mycars=new Array()mycars[0]="Saab"mycars[1]="Volvo"mycars[2]="BMW"

也可以使用一个整数自变量来控制数组的容量:

var mycars=new Array(3)mycars[0]="Saab"mycars[1]="Volvo"mycars[2]="BMW"

2

var mycars=new Array("Saab","Volvo","BMW")

3、JS操作HTML中的元素
我一直对JS有个疑惑,就是JS代码到底能不能加密混淆,直接暴露在浏览器中一点安全感的没有,目前看到的JS最多只是混淆了一下变量,加大了阅读难度,不过有耐心的还是能够看。这个问题有待研究。

<div id="div1"><p id="p1">这是一个段落</p><p id="p2">这是另一个段落</p></div><script>var para=document.createElement("p");var node=document.createTextNode("这是新段落。");para.appendChild(node);var element=document.getElementById("div1");element.appendChild(para);</script>

好多有用的代码放到程序中就好难找了,以后一定要记得把能够复用的代码单独保存好,要不回头看太浪费时间。
WEB项目的首尾工作慢悠悠得弄着,连续高强度两个月的爬代码,搞得自己身心憔悴。今天对服务器进行了一下压力测试,结果太不尽人意了,50个用户就卡死,不知道是数据库还是带宽的问题,看来等进入生产状态了还是得让学校弄个高配机。明天休息一天,后天开始爬bmob JS版这个坑