最近基本上天天和这三个东西打交道!在公司实习,做的项目里和服务器交换数据用的是json,前段是安卓平台,自然得用java。而这两天在做的课程作业里,自己用Tomcat搭服务器做了个网页,服务器端是servlet,网页前段js简直霸道得不得了啊!今天就简单总结一下这三个J的关系!
json(javascript object notation),是一种现在十分流行和普遍的数据交换格式。。用起来确实比xml方便的多,而且也很轻便。就在项目中真是使用的感受而言,我觉得json比XML好用无疑!不过好像一个叫什么flatbutter的东西据说有取代json的趋势。不过作为一个普通程序员,我在意这个干嘛?什么好用我就用什么!
javascript,可以说这东西是现代浏览器脚本语言无法撼动的王者,可以说是最吊没有之一。 如果js官方出宣传片的话,在中国肯定是要违反广告法了!不过这个和java并没有直接的联系,这个应该是常识了吧。
java就不多说了,世界编程语言排行第一。去争论什么语言好与不好,牛与不牛,对于程序员来说貌似没有什么意义。既然选择了某个语言平台,这种语言好的东西当然需要多多利用,然而不足的地方,自然是要努力克服才是。
在Java中,有很多json的jar包。比如阿里巴巴的fasrjson,jacksob,gson。不过,我使用的是Android SDK自带的json jar。org.json。个人觉得这个包带有的json已经可以满足轻度的开发使用需求了。在org.json包下,主要的类就是JSONObject和JSONArray这两个类。例如有一段json字符串:txt = "{
name:"bill",
country:"us"
}";
对于这个字符串,构造一个json对象的方法十分简单:JSONObject json = new JSONObject(txt);要获取某个值,只需要调用json.getString/int/double...(String key),就可以了。比如:String name = json.getString("name"),此时name的值就会是 bill了。十分简单明了啊!JSONArray也差不多,从JSONArray对象里分离出单个JSONObject对象就可以了,JSONArray支持迭代,可以方便的使用for each。
如果要构造json字符串。JSONObject和JSONArray都提供了put方法。该方法可以把一切东西都放进去,可以是键值对的形式,可以是单值的形式,可以放JSONArray和JSONObject对象,可以放String,可以放int等等!具体使用手段还是去参考API好了,太多了说不过来!
json都是js发明的,js自然是原生支持json的解析了!可是不才,对于js这么流行而且强大的语言,我却只会一点点的一点点。这里只能简单的记录一下js对json数据的解析过程。还是刚刚的那段字符串,在js中获得一个json对象可以这么做:var json = eval("(" + txt + ")");对于为什么要在txt前加一堆括号,这个eval这个函数有关!这里我没必要深究,普遍都是这么在用。而取值的方式也很简单,比如:var name = json.name;这样也能得到name的值为bill。由于js是弱类型语言,数据类型并没有太多划分,所以json数组也理解为一个对象就好了。获取的方式依然是json.key的形式。
最近的学习还真的是经常和这三个J打交道呢。学习的过程还真是痛苦,每分钟都在想砸电脑肝炸!!!不过加油吧,每天进步一点点,也不是不可以的!
最后,记录一个常识。.md结尾的文件,代表内容格式支持markdown格式,最近才知道这个东西,也在简单的是有,用来写写周报啊什么的,还是很方便,不用花太多的时间在排版上。另外一个彩蛋就是git默认的README文件就是.md格式。看来是要多多学习啊。
网友评论