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

合肥集团网站建设安庆高端网站建设公司

合肥集团网站建设,安庆高端网站建设公司,中企动力科技股份有限公司扬州分公司,什么是微信wordpress上一篇 个人整理非商业用途#xff0c;欢迎探讨与指正#xff01;#xff01; 文章目录 11.模块化Controller层12.AJAX12.1使用场景 13.JSON13.1如何使用后端发送JSON数据 11.模块化Controller层 将对应模块的Servlet写入到一个指定的模块中,模块化编程 使用switch方式 p…« 上一篇 个人整理非商业用途欢迎探讨与指正 文章目录 11.模块化Controller层12.AJAX12.1使用场景 13.JSON13.1如何使用后端发送JSON数据 11.模块化Controller层 将对应模块的Servlet写入到一个指定的模块中,模块化编程 使用switch方式 package com.qf.servlet;import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.Arrays;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import sun.rmi.transport.proxy.HttpReceiveSocket;/*** Servlet implementation class EmpServlet*/ WebServlet(/emp/*) public class EmpServlet extends HttpServlet {private static final long serialVersionUID 1L;/*** see HttpServlet#HttpServlet()*/public EmpServlet() {super();// TODO Auto-generated constructor stub}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 请求的urlString requestURL request.getRequestURL().toString();System.out.println(requestURL);String[] split requestURL.split(/); // System.out.println(Arrays.toString(split)); // 获取到需要执行得Servlet方法String method split[split.length-1];switch (method) {case insert:insert(request,response);break;case delete:delete(request,response);break;default:return;}}public void delete(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println(我是删除方法);}public void insert(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println(我是添加方法);}/*** see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);} }使用反射 WebServlet(/dept/*) public class DeptServlet extends HttpServlet {private static final long serialVersionUID 1L;public DeptServlet() {super();}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String requestURL request.getRequestURL().toString();String[] split requestURL.split(/);String method split[split.length-1];// 当前类对象Class? extends DeptServlet clazz this.getClass(); // 获取当前对象的方法try { // 获取需要执行的方法Method declaredMethod clazz.getDeclaredMethod(method, HttpServletRequest.class,HttpServletResponse.class); // 启动暴力反射declaredMethod.setAccessible(true); // 方法的反向执行declaredMethod.invoke(this, request, response);} catch (Exception e) {System.out.println(没有对应的方法);}}public void insert(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {System.out.println(添加方法);}private void delete(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {System.out.println(删除方法);}private void update(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {System.out.println(修改方法);}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);} }12.AJAX 异步的JS与XML技术,可以实现JS和服务器之间的异步交互 异步交互:在不刷新网页的前提下,局部代码与服务器进行交互 AJAX不是新技术,也不是编程语言,就是一个使用JS和后端进行交互的技术 AJAX的优点:用户体验非常好;缺点:开发改错困难,不可回退 12.1使用场景 场景1:AJAX验证用户名是否重复 package com.qf.servlet;import java.io.IOException; import java.util.ArrayList;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;/*** Servlet implementation class CheckNameServlet*/ WebServlet(/check) public class CheckNameServlet extends HttpServlet {private static final long serialVersionUID 1L;public CheckNameServlet() {super();}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String name request.getParameter(name); // 模拟从数据库中获取数据ArrayListString list new ArrayList();list.add(张三);list.add(李四);list.add(王五);list.add(tom);list.add(jack);list.add(rose);// 何如判断name在list中boolean contains list.contains(name); // false是可用 true是不可用 // System.out.println(contains); // 0不可用 1可用response.getWriter().print(contains?0:1);}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);} }!DOCTYPE html htmlheadmeta charsetutf-8title/title/headbodyinput typetext idusernamespan idmsg/spanscriptwindow.onload function(){let username document.querySelector(#username);let msg document.querySelector(#msg);username.onblur function(){// 发送ajax请求// 1.创建AJAX对象let xhr new XMLHttpRequest();// 2.封装AJAX的请求数据(形式为:xxxxServlet?xxxxxxxxxxxxxx)xhr.open(GET,check?nameusername.value);// 3.发送请求xhr.send();// 4.AJAX的请求状态判断// readyState// 0:ajax创建但未初始化// 1:ajax创建完成但未发送请求// 2:ajax发送请求到服务器端// 3:ajax请求正在被处理// 4:ajax请求处理完成,可以使用ajax获取服务器响应的数据xhr.onreadystatechange function(){if(xhr.status 200 xhr.readyState 4){// 5.获取响应的数据let result xhr.responseText;if(result 0){msg.innerHTML 用户名已存在;msg.style.color red;}else{msg.innerHTML √;msg.style.color green;}}}}}/script/body /html13.JSON 配合AJAX进行分离式开发中数据的交互形式之一 JSON可以实现不同系统,不同语言之间的数据交互 JSON是一种数据格式,类似于JS中的{}对象 语法:   {    “key”:“value”,    “key”:“value”,    …   } 数据体量小,可以做为数据传入的载体 13.1如何使用后端发送JSON数据 使用第三方工具(jar、依赖) Gson  谷歌发布 Jackson  Springn内置的 FastJson  阿里发布的 package com.qf.test;import java.util.ArrayList; import java.util.HashMap;import org.junit.Test;import com.fasterxml.jackson.databind.ObjectMapper; import com.google.gson.Gson;public class TestJSON {Testpublic void test01() {System.out.println(helloworld);}Testpublic void test02() {Gson gson new Gson();String json gson.toJson(helloworld);System.out.println(json);}Testpublic void test03() {Gson gson new Gson();String json gson.toJson(new Dog(1,李四));System.out.println(json);}Testpublic void test04() {ArrayListDog dogs new ArrayList();dogs.add(new Dog(1,1));dogs.add(new Dog(2,2));dogs.add(new Dog(3,3));dogs.add(new Dog(4,4));String json new Gson().toJson(dogs);System.out.println(json);}Testpublic void test05() {ArrayListDog dogs new ArrayList();dogs.add(new Dog(1,1));dogs.add(new Dog(2,2));dogs.add(new Dog(3,3));dogs.add(new Dog(4,4));int currPage 10;HashMapString,Object map new HashMap();map.put(dogs, dogs);map.put(page, currPage);String json new Gson().toJson(map);System.out.println(json);}Testpublic void test06() throws Exception {Dog dog new Dog(1,1);ObjectMapper objectMapper new ObjectMapper();String json objectMapper.writeValueAsString(dog);System.out.println(json);} }
http://www.hkea.cn/news/14533933/

相关文章:

  • 5118素材网站深圳市住房和建设局官网
  • 网站建设二级分销网站建设与设计大作业
  • 辽宁购物网站制作网站做项目
  • 汕头正规网站建设模板总部苏宁易购网站建设的目标
  • 洛南网站建设百度seo搜搜
  • 新野微网站开发松江网站建设多少钱
  • 建设网站号码是多少网站开发需要注意什么
  • 凤岗镇仿做网站美化网站代码
  • 网站建设接外包流程图徐州英文网站优化
  • 人动物做电影网站青岛网站设计建立公司
  • 5G网站建设设计吧官网
  • 加强网站网络安全建设公司建一个网站多少费用
  • wordpress首页调用文章数量广州推动优化防控措施落地
  • 做视频网站的备案要求吗百度一下首页官网百度
  • 大连做网站价格重庆建设摩托车价格
  • 特价网站源码网站侧边栏怎么做
  • 怎么建站网站邯郸高端网站建设
  • 重庆市网站建设公司建网站需要什么人
  • 网站提交了被收录后改怎么做设计师培训计划方案
  • 建设网站简单教程设计logo网站知乎
  • 镇江网站设计制作济南网站制作搜到
  • 网站备案名称必须是公司名网络营销课程心得体会
  • 做网站学习什么重庆观音桥步行街
  • 免费自助建站源码做收钱的网站要什么条件
  • 手机网站建设软件有哪些方面网站建设"淘宝网" 在颜色选取和搭配方面有哪些值得学习的地方.
  • 婚恋网站女孩子做美容郑州睿网站建设
  • 鞍山做网站的公司网站首页被k 内页还有
  • 电商网站开发的功能建设工程 法律 网站
  • 盐城网站开发代理商事件营销的步骤
  • 网站打开速度很慢做淘宝一件代发的网站