当前位置: 首页 > news >正文

个人网站的搭建西安国内做网站的公司有哪些

个人网站的搭建,西安国内做网站的公司有哪些,深圳建网站服务商,软件 网站模板谈到JSON,简单的说就是一种数据交换格式。近年来#xff0c;其在服务器之间交换数据的应用越来越广#xff0c;相比XML其格式更简单、编解码更容易、扩展性更好#xff0c;所以深受开发人员的喜爱。 下面简单的写一下在项目中前后台json传值的一个小例子#xff0c;供大家参…   谈到JSON,简单的说就是一种数据交换格式。近年来其在服务器之间交换数据的应用越来越广相比XML其格式更简单、编解码更容易、扩展性更好所以深受开发人员的喜爱。    下面简单的写一下在项目中前后台json传值的一个小例子供大家参考、查阅。 一前台传后台 1.前台jsp页面代码      在index中将实体对象自己创建即可插入list中再将list集合转化成json数组利用post方式发送AJAX请求将这个json数组发送至后台servlet再在后台进行解析即可。 index.jsp % page languagejava importjava.util.Date,com.badminton.utils.JsonDateValueProcessor,java.text.SimpleDateFormat,java.util.List,net.sf.json.JSONArray,net.sf.json.JSONObject,net.sf.json.JsonConfig,java.util.ArrayList,com.badminton.entity.Athlete,net.sf.json.JSONObject pageEncodingutf-8% !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN html head titleMy first json page/title %SimpleDateFormat format1 new SimpleDateFormat(yyyy-MM-dd);Athlete athlete1 new Athlete();athlete1.setAthlete_id(1003);athlete1.setAthlete_name(林丹);athlete1.setAthlete_sex(男);Date athlete_age1 format1.parse(1983-10-14);//是java.util.dateathlete1.setAthlete_age(athlete_age1);athlete1.setCoach_id(101);athlete1.setEvent_id(1);athlete1.setService_status(1);athlete1.setExperience(2013年第12届全运会男单冠军。);Athlete athlete2 new Athlete();//记录2athlete2.setAthlete_id(1004);athlete2.setAthlete_name(鲍春来);athlete2.setAthlete_sex(男);Date athlete_age2 format1.parse(1988-10-14);athlete2.setAthlete_age(athlete_age2);athlete2.setCoach_id(101);athlete2.setEvent_id(1);athlete2.setService_status(1);athlete2.setExperience(2011年亚洲羽毛球锦标赛亚军。);ListAthlete list1 new ArrayListAthlete();list1.add(athlete1);list1.add(athlete2); JsonConfig jsonConfig new JsonConfig();//解决date类型的传输问题jsonConfig.registerJsonValueProcessor(Date.class , new JsonDateValueProcessor());JSONArray jsonarray JSONArray.fromObject(list1, jsonConfig); % script typetext/javascript srcjs/json2.js/script script typetext/javascriptvar xmlHttp;function createXmlHttpRequest() {if (window.ActiveXObject) {xmlHttp new ActiveXObject(Microsoft.XMLHTTP);} else if (window.XMLHttpRequest) {xmlHttp new XMLHttpRequest();}}//回调function handleStateChange() {if (xmlHttp.readyState 4) {if (xmlHttp.status 200) {parseResults();}}}//将后台返回的数据显示在层serverResponse中function parseResults() {var resultxmlHttp.responseXML.getElementsByTagName(result)[0].firstChild.data;alert(result);}function doJSON() {var athletehead{athlete_id:1,tablename:athlete};var myobjeval(athletehead); var str1JSON.stringify(myobj);//str1以后可用来识别数据库中的表var str2%jsonarray%;var url http://localhost:8080/com.badminton.servlet/JsonServer;createXmlHttpRequest();xmlHttp.open(POST, url, true);xmlHttp.onreadystatechange handleStateChange;//回调xmlHttp.setRequestHeader(Content-Type,application/x-www-form-urlencoded;text/xml;charsetutf-8); //text/xml;charsetutf-8解决汉字封装json问题xmlHttp.send(athleteheadstr1athletestr2);//传送了两个对象} /script /head body form idform1 tabletrtd aligncenterinput typebutton namesubmit value提交 onClickdoJSON()/td/tr /table /form /body /html    后台接受前台传来的json对象解析插入数据库中且反给前台一个是否成功的消息。具体插入数据库的代码自己编写一个即可。 JsonServer.java package com.badminton.servlet; import java.io.IOException; import java.io.PrintWriter; import java.sql.Date; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.badminton.app.AthleteAction; import net.sf.json.JSONObject; import net.sf.json.JSONArray; public class JsonServer extends HttpServlet {public JsonServer() {super();}public void destroy() {super.destroy();}public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {this.doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType(text/xml);response.setHeader(Cache-Control, no-cache);response.setCharacterEncoding(UTF-8);PrintWriter out response.getWriter();AthleteAction athleteactionnew AthleteAction();try {String json1 request.getParameter(athletehead);//接收athlete表的头数据String json2 request.getParameter(athlete);//接收athlete表数据json1 java.net.URLDecoder.decode(json1,UTF-8);json2 java.net.URLDecoder.decode(json2, UTF-8);if ((json1 ! ) (json2 ! )) {//System.out.println(json1:json1);JSONObject jsonObject1 JSONObject.fromObject(json1);//生成json对象JSONArray jsonArray2 JSONArray.fromObject(json2);//生成JSON数组for(int i0;ijsonArray2.size();i){JSONObject resultObj jsonArray2.optJSONObject(i);//根据JSONArray生成JSONObjectint athlete_idresultObj.getInt(athlete_id);String athlete_nameresultObj.getString(athlete_name);String athlete_sexresultObj.getString(athlete_sex);String ageresultObj.getString(athlete_age);Date athlete_age Date.valueOf(age);//转换成java.sql.Date//System.out.println(athlete_age);int coach_idresultObj.getInt(coach_id);int event_idresultObj.getInt(event_id);System.out.println(athlete_name);String service_statusresultObj.getString(service_status);String experienceresultObj.getString(experience);athleteaction.athleteAdd(athlete_id,athlete_name,athlete_sex,athlete_age,coach_id,event_id,service_status,experience);//对数据库进行操作具体代码未附}String result 数据上传成功;out.println(response);out.println(result result /result);out.println(/response);out.close();} else{String result 传输过程出错请重传;out.println(response);out.println(result result /result);out.println(/response);out.close();}} catch (Exception e) {System.out.println(JsonServer doPost(HttpServletRequest request, HttpServletResponse response) 报错 e.getMessage());}}public void init() throws ServletException {}} 3.解决传递日期的一个工具类      若没有这个工具类date型数据会被转化成json数组的格式后台解析起来会很复杂。 JsonDateValueProcessor.java package com.badminton.utils; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; import net.sf.json.JsonConfig; import net.sf.json.processors.JsonValueProcessor; public class JsonDateValueProcessor implements JsonValueProcessor{/*** datePattern*/private String datePattern yyyy-MM-dd;/*** JsonDateValueProcessor*/public JsonDateValueProcessor() {super();}/*** param format*/public JsonDateValueProcessor(String format) {super();this.datePattern format;}/*** param value* param jsonConfig* return Object*/public Object processArrayValue(Object value, JsonConfig jsonConfig) {return process(value);}/*** param key* param value* param jsonConfig* return Object*/public Object processObjectValue(String key, Object value,JsonConfig jsonConfig) {return process(value);}/*** process* param value* return*/private Object process(Object value) {try {if (value instanceof Date) {SimpleDateFormat sdf new SimpleDateFormat(datePattern,Locale.UK);return sdf.format((Date) value);}return value null ? : value.toString();} catch (Exception e) {return ;}}/*** return the datePattern*/public String getDatePattern() {return datePattern;}/*** param pDatePattern the datePattern to set*/public void setDatePattern(String pDatePattern) {datePattern pDatePattern;} } 二后台传前台    后台以list和map两种形式封装json前台注意json数组和json对象解析时的差别即可。 1.TestJson.java package com.badminton.servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class TestJson extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doPost(request,response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType(text/html);String str request.getParameter(name);//得到ajax传递过来的paramaterSystem.out.println(str);PrintWriter out response.getWriter();List list new ArrayList();//传递List//Map mnew HashMap();//传递Map User u1new User();u1.setUsername(zah);u1.setPassword(123);User u2new User(); u2.setUsername(ztf);u2.setPassword(456);list.add(u1); //添加User对象 list.add(u2); //添加User对象//m.put(u1, u1);//m.put(u2, u2); JSONArray jsonArray2 JSONArray.fromObject( list );//转化成json对象//JSONObject joJSONObject.fromObject(m);//转化Map对象out.print(jsonArray2);//返给ajax请求System.out.println(jsonArray2);//out.print(jo);//返给ajax请求 } } 2.showjson.jsp     利用Jquery、AJAX异步传输的方式接受后台的发送请求。 % page languagejava importjava.util.* pageEncodingutf-8% !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN htmlhead script typetext/javascript srcjs/jquery-1.4.2.min.js/script script typetext/javascriptfunction test(){$.ajax({type:POST, //请求方式url:servlet/TestJson,//请求路径cache: false, data:namezah, /传参dataType: json,//返回值类型success:function(json){ alert(json[1].username json[1].password);//弹出返回过来的List对象}});} /script/headbodyinput typebutton nameb value测试/body /html
http://www.pierceye.com/news/111356/

相关文章:

  • 郑州哪家公司给国外做网站闵行网站推广
  • 微网站 开发提供坪山网站建设
  • 狗狗和人做网站centos6搭建wordpress
  • 培训教育学校的网站建设方案vx小程序怎么制作
  • 泉州网站建设优化公司酒店网络营销推广方案
  • 重庆潼南网站建设公司电话crm客户关系管理平台
  • 怎么做可以访问网站连接加密东莞++网站建设
  • 企业网站的建设与流程数据分析师要学什么课程
  • 重庆营销型网站随做的好谷歌广告投放教程
  • 个人公众号做网站广州市车管所网站建设
  • 上海网站建设公司排名王也诸葛青cp
  • 常用的设计网站有哪些wordpress如何汉化主题
  • 深圳全网营销型网站免费做调查的网站有哪些
  • 设计素材网站知乎济南seo网站推广
  • 网站建设类岗位杭州国家电网 两学一做 网站
  • html静态网站开发自我介绍网站手机客户端开发教程
  • 营销型网站是什么样的桂林北站有核酸检测点吗
  • 网站未备案被阻断怎么做it培训机构哪个好一点
  • 重庆建设注册执业中心网站网络营销百度百科
  • app网站怎么下载个人备案做视频网站
  • 西宁建一个网站公司广东网站备案
  • 网站数据比较北京网站优化推广公司
  • 想做网站的客户在哪找美间在线设计平台
  • 网站设计规划的目的和要求营销外贸网站建设案例
  • 网站营销力一级a做爰片2017免费网站
  • 昌图网站网页界面设计的要求
  • 做一个网站赚钱什么 门户网站
  • 中国建设银行购物网站帝国织梦wordpress
  • 瑞安网站网站建设松原公司做网站的流程
  • 做网站按页面收费视频解析网站如何做搜索