首页
学习
活动
专区
圈层
工具
发布

JavaWeb - Servlet:基本概念,HTTP 协议,Tomcat 服务器

GET 请求特点:会将请求数据添加到请求 URL 地址的后面,只能提交少量的数据、不安全 POST 请求 发出 POST 请求的主要方法:点击 submit 按钮,提交 对象数组,其中包含给定请求参数所具有的所有值,如果该参数不存在,则返回空值 Enumeration getParameterNames() 返回包含此请求中包含的参数名称的字符串对象的枚举...Enumeration getInitParameterNames() 将 servlet 的初始化参数的名称作为字符串对象的枚举返回,如果 servlet 没有初始化参数,则返回空枚举 ServletContext...() 方法可以获得 ServletContext 对象。...() 将 servlet 的初始化参数的名称作为字符串对象的枚举返回,如果 servlet 没有初始化参数,则返回空枚举 String getRealPath(String path) 返回包含给定虚拟路径的实际路径的字符串

1.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    REST API有关幂等性等11条最佳实践

    规则 #4:不要将数组作为顶级响应返回 来自端点的顶级响应应该始终是一个对象,而不是一个数组。...问题在于,当您返回数组时,很难进行向后兼容的更改。对象允许您进行附加更改。 在这个特定示例中,明显的共同演变是添加分页。您可以随时添加totalCount或hasMore字段,老客户端将继续工作。...如果您的端点返回顶级数组,您将需要一个全新的端点。 规则 #5:不要返回映射结构 我经常看到 JSON 响应中用于集合的映射结构。相反,返回一个对象数组。...当调用(例如)GET /things/{thing_id}请求一个不存在的东西时,响应应表明:1)服务器理解了您的请求;2)没有找到该东西。遗憾的是,404 响应并不能保证 #1。...在 409 响应正文中提供原始 ID 亮点:通过允许具有相同参数的重复请求或在冲突时返回现有 ID,使 API 具有幂等性。

    1K20

    AJAX+JSON总结

    method:请求的类型;GET 或 POST url:文件在服务器上的位置 async:true(异步)或 false(同步) send(string) 将请求发送到服务器。...string:仅用于 POST 请求 method:请求的类型;GET 或 POST url:文件在服务器上的位置 async:true(异步)或 false(同步) send(string) 将请求发送到服务器...string:仅用于 POST 请求 服务器响应 如需获得来自服务器的响应,请使用 XMLHttpRequest 对象的 responseText 或 responseXML 属性。...属性 描述 responseText 获得字符串形式的响应数据。 responseXML 获得 XML 形式的响应数据。...根对象的键是一个空字符串:""。 如果 replacer 是一个数组,则仅转换该数组中具有键值的成员。成员的转换顺序与键在数组中的顺序一样。

    2.4K20

    Django 视图层

    代码写在哪里也无所谓,只要它在你的Python目录下,除此之外没有更多的要求。为了将代码放在某处,约定是将视图放置在项目或应用程序目录中的名为views.py的文件中。...这个视图会返回一个HttpResponse对象,其中包含生成的响应,每个视图函数都负责返回一个HttpResponse对象 三.HttpRequest对象 request属性 django将请求报文中的请求行...1.HttpRequest.GET 一个类似于字典的对象,包含HTTP GET的所有参数,详情参考QueryDict对象 2.HttpRequest.POST 一个类似于字典的对象,如果请求中包含表单数据...get_username() 永远返回空字符串。 is_staff 和 is_superuser 永远为False。 is_active 永远为 False。...,并返回一个渲染后的HttpResponse对象 参数: request: 用于生成响应的请求对象 template_name: 要使用的模板的完整名称,可选的参数 context

    2.6K20

    JavaScript常用数组方法

    )方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度 返回值:当调用该方法时,新的length属性值将被返回。...slice slice()方法返回一个新的数组对象,这一对象是一个由begin和end决定的原数组的浅拷贝(包括begin,不包括end) 原始数组不会被改变 返回值:一个含有被提取元素的新数组 shift...此方法更改数组的长度。 返回值:从数组中删除的元素; 如果数组为空则返回undefined unshift unshift()方法将一个或多个元素添加到数组的开头,并返回该数组的新长度。...返回值:返回调用方法对象的新length属性值。 join join()方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串,用逗号或指定的分隔符字符串分隔。...如果数组只有一个元素,那么将返回该元素而不使用分隔符。 返回值:一个所有数组元素连接的字符串。如果 arr.length 为 0,则返回空字符串。

    39410

    SpringBoot2 参数管理实践,入参出参与校验

    这里就来聊一下参数管理,围绕:入参、校验、返参三个方面内容。...Data数据 接口响应的主体数据,不同的业务响应的对象肯定不同,所以这里基于泛型机制接收即可,再以JSON格式响应页面。...在系统运行过程中,任何参数都不是绝对可靠的,所以参数校验随处可见,不同场景下的参数校验,都有其必要性,但其根本目的都是为了给到请求端提示信息,快速打断流程,快速响应。...1、借鉴参考 很多封装思想,设计模式,或者这里说的参数校验,都可以参考现有Java源码或者优秀的框架,这是一个应该具备的基础意识。...= null) { return clazz; } } 在Spring框架中除了基础的if判断之外,还封装一个org.springframework.util.Assert断言工具类。

    77810

    PWA 入门

    web worker 代表一个后台任务,web worker 脱离于页面主线程之外,将一些复杂的耗时任务交给他,可以提高页面响应速度。缓解主线程压力。...(url) 抓取这个 URL, 检索并把返回的 response 对象添加到给定的 Cache 对象,这个功能等同于调用 fetch(), 然后使用 Cache.put() 将 response 添加到...cache 中; Cache.addAll(url) 抓取一个 URL 数组,检索并把返回的 response 对象添加到给定的 Cache 对象中; Cache.match(url, options...cache addAll 方法的参数是存放 url 数组,它会对这些 url 发起 get 请求,把请求到的数据存入 cache 中。...如果断网了,远端的数据就会请求失败,这个时候我们可以将请求转发到本地缓存中,本地缓存如果能用请求匹配到响应内容,我们就返回响应数据,这样页面就不再是空白了。

    2.2K21

    从任务到线程:Java结构化并发应用程序

    任务池的优势在于: 通过复用现有线程而不是创建新的线程,降低创建线程时的开销; 复用现有线程,可以直接执行任务,避免因创建线程而让任务等待,提高响应速度。...; 如果任务在执行的过程中抛出异常,get方法会将该异常封装为ExecutionException中,并可以通过getCase方法获得具体异常原因; 如果将一个Callable对象提交给ExecutorService...,submit方法就会返回一个Future对象,通过这个Future对象就可以在主线程中获得该任务的状态,并获得返回值。...invokeAll支持限时提交一组任务(任务的集合),并获得一个Future数组。...invokeAll方法将按照任务集合迭代器的顺序将任务对应的Future对象放入数组中,这样就可以把传入的任务(Callable)和结果(Future)联系起来。

    72120

    13 Java 集合

    数组虽然也可存储对象,但长度固定; 而集合长度可变 集合只用于存储对象, 集合长度是可变的, 集合可以存储不同类型的对象....extends E> c) 将指定 collection 中的所有元素都添加到此 collection 中(可选操作)。...除了基于索引的 get() 和 set() 方法之外,List 接口还定义了一些方法,用于把元素添加到特定的索引,把元素从特定的索引移除,或者返回指定值在列表中首次出现或最后出现的索引。...ArrayList详解:拥有角标的方法是其特有方法 可变长度数组的原理 :当元素超出数组长度,会产生一个新数组,将原数组的数据复制到新数组中,再将新的元素添加到新数组中。...如果要把单个对象当成集合传入方法,可以使用这些方法。 Collections 类还定义了一些返回空集合的方法。

    2.8K20

    jQuery深入——动画、常用工具、JSON、Ajax

    // return ''; 返回空格数组 })   6、更多数组操作方法 $.inArray(value, array) 返回值在数组中的下标 console.log($.inArray(2,...[1, 2, 3, 4, 5]));   $.makeArray(object) 将类数组对象转换为数组 var arrayLikeObject = {     0: 'a',     1: 'b',...,将数组2合并至1 var arr1 = [0, 1, 2] var arr2 = [3, 4, 5] $.merge(arr1, arr2);   7、对象操作 扩展对象 $.extend([deep...除字符串之外还可以发送复杂类型数据 abort 方法 舍弃一个请求 readyState 会被置 0 但不触发 readystatechange 事件 请求还是会送到服务器,仅仅是客户端“视而不见”...可选择是否带上 cookie 简单请求与复杂请求 复杂请求会先发送一次 OPTIONS 方法的预检请求 简单请求需要同时满足的条件: 请求 Method 必须为 HEAD、GET、POST 之一 请求头中的字段不超过

    1.9K10

    CodeSpirit.Aggregator聚合器使用指南

    聚合器是CodeSpirit框架中的一个强大功能,旨在解决API响应数据中ID字段需要转换为实际名称显示的问题。...X-Aggregate-Keys 值 2.JSON解析:使用 Newtonsoft.Json 将响应体解析为JSON对象 3.规则应用:对每个匹配的字段路径应用相应规则 4.嵌套处理:自动识别和处理嵌套对象和数组...5.重新序列化:将处理后的JSON对象转换回字符串 四、语法说明表 五、使用示例 public class UserModel { public string Id { get; set...; set; } } 呈现效果: 六、聚合器高级用法 路径处理 支持多级嵌套:data.items.user.createdBy 支持数组遍历:自动对数组中的每个对象应用规则 Base64编码 当头部值包含非...ASCII字符时,系统自动进行Base64编码 聚合器能自动识别和解码Base64编码的头部值 空值处理 如果数据源返回空值,系统默认保留原始值 可在模板中通过 {field} 引用数据源返回值,即使为空也能正确处理

    14710

    《javascript高级程序设计》核心知识总结

    () 将数组转化为以逗号分隔的字符串 valueOf() 返回的还是数组 // 栈方法 push() 可以接收任意数量的参数,把他们逐个添加到数组的末尾,返回修改后数组的长度 pop() 从数组末尾移除最后一项...// location即是window对象的属性也是document对象的属性 1. hash // "#contents" 返回url的hash,如果不包含返回空 2. host // "www.wrox.com...等, "exam.php", false) 参数为请求类型,请求url,是否异步的boolean xhr.open("get","exam.php", false); // 调用该方法并不是真正的请求,...而是请求一个请求以备发送 // 发送真正的请求,接收一个参数,即作为请求主体要发送的数据,不发送数据时必须传递null,因为对于某些浏览器来说该参数是必须的 xhr.send(null) // 检验响应的状态...(); // get请求:向现有url中添加查询字符串 function addUrlParam(url, name, value){ url += (url.indexOf("?")

    2.7K20

    Java 8 中使用 Lambda 表达式和 Stream API 解决 LeetCode 的两数之和问题

    除此之外,使用哈希表算法还具有以下优点: 可以处理包含重复元素的情况:如果输入数组中包含重复元素,那么双重循环的解法将会返回最后一组满足条件的元素下标。...而哈希表算法可以正确地处理这种情况,返回第一组满足条件的元素下标。 可以处理无序数组的情况:如果输入数组是一个无序数组,那么双重循环的解法将需要进行排序操作,从而增加额外的时间和空间开销。...,返回空数组 return new int[0]; } /** * 在这个实现中,我们使用了一个 Map 对象来存储数组中的元素及其下标。...return new int[]{map.get(complement), i}; } // 将当前元素及其下标添加到 Map 中...然后,boxed() 方法将这个 // IntStream 对象转换为一个装箱后的 Stream 流。

    27010

    Java Review (二十七、集合----- List 集合)

    Object get(int index): 返回集合 index 索引处的元素。 int indexOf(Object 0): 返回对象 。 在 List 集合中第 一次出现的位置索引。...int lastlndexOf(Object 0): 返 回 对象 。 在 List 集合中最后 一 次出现的位置索引 。...因为 List 集合添加宇符串对象时 ,添加的是通过 new 关键宇创建的新字符串对象,①行代码处也是通过 new 关键宇创建的新字符串对象,两个字符串显然不是同一个对象,但 List 的 indexOf...size; 除此之外,ArrayList 和 Vector 还提供了如下两个方法来重新分配 Object[]数组: void ensureCapacity(int minCapacity): 将 ArrayList...讲义"); // 将一个字符串元素加入栈的顶部 books.push("轻量级Java EE企业应用实战"); // 将字符串元素添加到队列的头部(相当于栈的顶部) books.offerFirst

    63710
    领券