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

网站建设与维护下载百度联盟个人怎么接广告

网站建设与维护下载,百度联盟个人怎么接广告,农业网站建设招标书,网站建设合同违约责任一.后端(包装servlet) 使用BaseServlet进行请求的初步处理(利用继承进行执行这个) 在BaseServlet中 处理请求的类型找到对象的方法,并使用注解找到参数名,执行参数自动注入。 package com.csdn.controlle…

一.后端(包装servlet)

        使用BaseServlet进行请求的初步处理(利用继承进行执行这个)

                在BaseServlet中  处理请求的类型找到对象的方法,并使用注解找到参数名,执行参数自动注入。

package com.csdn.controller;import com.csdn.annotation.ParamName;
import com.csdn.annotation.RequestMethod;
import com.csdn.common.Message;
import com.csdn.util.ResponseUtil;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedReader;
import java.io.IOException;
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;public class BaseServlet extends HttpServlet {@Overrideprotected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("进入service");/*request里的请求体里面储存着json格式的数据,其中存在一个键为method,*/ObjectMapper mapper = new ObjectMapper();JsonNode jsonNode = mapper.readTree(request.getReader());System.out.println("jsonNode:"+jsonNode);JsonNode methodNameNode = jsonNode.get("method");if (methodNameNode == null || !methodNameNode.isTextual()|| methodNameNode.asText().trim().isEmpty()) {throw new ServletException("没有指定方法名");}String methodName = methodNameNode.asText();System.out.println("方法名字:"+methodName);try {// 通过反射获取当前类的所有方法Method[] methods = this.getClass().getDeclaredMethods();for (Method method : methods) {// 检查方法是否被@RequestMethod注解标记if (method.isAnnotationPresent(RequestMethod.class)) {RequestMethod requestMethod = method.getAnnotation(RequestMethod.class);// 检查注解的值是否与请求中的方法名匹配if (requestMethod.value().equals(methodName)) {//得到参数Object[] params = getParameters(method, jsonNode);method.setAccessible(true);// 调用找到的方法 并 自动注入参数//result是一个java对象Object result = method.invoke(this, params);if (result != null) {// 将返回值(java对象)转换为json格式String message = mapper.writeValueAsString(result);System.out.println(message);response.getWriter().write(message);} else {response.getWriter().write("{}");System.out.println("result 为空!  程序错误\n\n\n");}return;}}}} catch (Exception e) {System.out.println(",没有找到对应方法");e.printStackTrace();}}// 参数注入(得到参数)private static Object[] getParameters(Method method, JsonNode jsonNode) {Class<?>[] paramTypes = method.getParameterTypes();Parameter[] parameters = method.getParameters();Object[] params = new Object[paramTypes.length];for (int i = 0; i < paramTypes.length; i++) {Parameter parameter = parameters[i];// 检查参数上是否有ParamName注解if (parameter.isAnnotationPresent(ParamName.class)) {ParamName paramNameAnnotation = parameter.getAnnotation(ParamName.class);String paramName = paramNameAnnotation.value();JsonNode paramValueNode = jsonNode.get(paramName);if (paramValueNode != null) {// 根据实际类型转换参数值params[i] = convertJsonNodeToJavaType(paramValueNode, paramTypes[i]);}} else {// 如果没有ParamName注解,使用默认逻辑处理System.out.println( "!!!\n\n\n没有ParamName注解\n\n\n");}}return params;}private static Object convertJsonNodeToJavaType(JsonNode node, Class<?> type) {ObjectMapper mapper = new ObjectMapper();try {// 尝试将JsonNode转换为Java对象return mapper.treeToValue(node, type);} catch (JsonProcessingException e) {// 处理转换失败的情况System.err.println("Failed to convert JSON node to Java type: " + type);return null; // 或者根据需要返回其他值}}}

在controller类中(参数中使用注解,并在baseServlet中进行参数自动注入)

 

二.前端与后端交互的信息类

 这里响应对象,转化为json对象进行传输,并在前端并处理后端结果。

三.前端发送请求并响应后端结果

// 进行发送请求
axios.post('/csdn_war/user',sendMail).then(response => {if(response.data.state === 100){alert("邮箱未注册请重试!");}else if(response.data.state === 110){console.log("发送验证码成功!");sendVerifyCode2(sendButton2);}else{alert("后端出现错误!");}
})

 

 

http://www.hkea.cn/news/706232/

相关文章:

  • web网站开发作品关键词歌词图片
  • 汕头行业网站seo培训公司
  • 网站背景图片优化关键词歌曲免费听
  • 郑州做网站哪家专业我要发布信息
  • 西安做网站优化的公司石家庄seo按天扣费
  • 2022年西安封城通知自动app优化下载
  • 无锡做网站哪家公司好一个公司可以做几个百度推广
  • 专题网站建设工作关键词林俊杰无损下载
  • adobe 网站开发软件软文写作兼职
  • 英文网站建设 淮安免费培训网站
  • 隔离需要多少钱湖南网站seo找行者seo
  • wordpress简单企业站seo怎么刷排名
  • 网站建设与运维泉州全网推广
  • 网站建站哪个公司好一点营销咨询服务
  • 值得玩的网页游戏北京seo营销培训
  • 中国建设银行网站分期通百度推广登录平台网址
  • 公司内部网站源码新闻软文推广案例
  • vf建设银行网站谷歌seo排名
  • 如何申请商业服务器武汉seo工厂
  • 祥云平台英文网站微博指数查询入口
  • 公司网站建设准备资料今日重大财经新闻
  • 发布网站后备案免费网站建站页面
  • 浙江建设职业技术学院迎新网站做一个网站要多少钱
  • axure做网站好不好手机百度问一问
  • 开发微信小程序的流程广州seo优化电话
  • 小企业网站建设和管理全能搜
  • 无棣县建设局网站游戏优化大师下载安装
  • 小额贷款 网站模板品牌推广软文
  • 网站建设开发成本天津百度搜索网站排名
  • 做的好的营销型网站有哪些内容外贸网站外链平台