doGet()方法和doPost()方法有什么区别?

1. 一般上,get是从服务器上获取数据,post是向服务器传送数据。

2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。

3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。

4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。

5. get安全性非常低,post安全性较高。但是执行效率却比Post方法好。

可以简洁总结为:

doGet:路径传参。效率高,安全性差

doPOST:实体传参。效率第,安全性好

建议:

1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;

2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式;

原文地址:https://www.cnblogs.com/yonyong/p/9337500.html

时间: 2024-10-10 12:54:42

doGet()方法和doPost()方法有什么区别?的相关文章

Thread类的sleep()方法和对象的wait()方法都可以让线程暂停执行,它们有什么区别? 线程的sleep()方法和yield()方法有什么区别?

Thread类的sleep()方法和对象的wait()方法都可以让线程暂停执行,它们有什么区别? sleep()方法(休眠)是线程类(Thread)的静态方法,调用此方法会让当前线程暂停执行指定的时间,将执行机会(CPU)让给其他线程,但是对象的锁依然保持,因此休眠时间结束后会自动恢复.wait()是Object类的方法,调用对象的wait()方法导致当前线程放弃对象的锁(线程暂停执行),进入对象的等待池(wait pool),只有调用对象的notify()方法(或notifyAll()方法)时

线程中sleep方法和wait方法有什么区别?(转)

线程中sleep方法和wait方法有什么区别? 如果你没有接触过java的多线程,那么多对于这两个方法可能有点陌生,看名字好像这两个方法是差不多的,但是实际上面差别好大. 首先我们看一下官方的API Sleep(sleep有两个方法,另一个方法传递两个参数,还有一个参数也是时间,只不过是纳秒级别的,所以和这个方法几乎一样,所以这里只分析这个毫秒级别的方法) public static void sleep(long millis) throws InterruptedException 首先是个

javascript中apply()方法和call()方法有什么区别?

JavaScript作为web前端开发的必用技术之一,在前端编写的过程中,都会涉及到.但在编写JavaScript的过程中,有一些方法却让人很是纳闷,比如apply()和call()方法. 存在即是合理的,很多时候在编程中,我们不得不用apply()和call()方法的场景,下面我们就通过代码来看看这两种方法的应用. <html> <body> <script> var product = "house"; var boss = { chooseWo

start()方法和run()方法有什么区别?

通过调用线程类的start()方法来启动一个线程,使线程处于就绪状态,即可以被JVM来调度执行,在调度过程中,JVM通过调用线程类的run()方法来完成实际的业务逻辑,当run()方法结束后,此线程就会终止. 如果直接调用线程类的run()方法,会被当作一个普通的函数调用,程序中仍然只有主线程这一个线程.即start()方法能够异步的调用run()方法,但是直接调用run()方法却是同步的,无法达到多线程的目的. 因此,只用通过调用线程类的start()方法才能达到多线程的目的. 原文地址:ht

sleep()方法和yield()方法有什么区别?

两者都是Thread类的静态方法,定义如下 public static void sleep(long millis) throws InterruptedException public static void yield() 1)sleep()方法给其他线程机会时不会考虑线程的优先级,因此会给低优先级的线程以运行的机会,而yield()方法只会给相同优先级或更高优先级的线程以运行的机会. 2)线程执行sleep()方法后会转入阻塞状态,所以,执行sleep()方法的线程在指定的时间内肯定不会

Hibernate中Session.get()方法和load()方法的详细比较(转)

一.get方法和load方法的简易理解 (1)get()方法直接返回实体类,如果查不到数据则返回null.load()会返回一个实体代理对象(当前这个对象可以自动转化为实体对象),但当代理对象被调用时,如果没有数据不存在,就会抛出个org.hibernate.ObjectNotFoundException异常 (2)load先到缓存(session缓存/二级缓存)中去查,如果没有则返回一个代理对象(不马上到DB中去找),等后面使用这个代理对象操作的时候,才到DB中查询,这就是我们常说的 load

Hibernate中Session.get()方法和load()方法的详细比较

一.get方法和load方法的简易理解 (1)get()方法直接返回实体类,如果查不到数据则返回null.load()会返回一个实体代理对象(当前这个对象可以自动转化为实体对象),但当代理对象被调用时,如果没有数据不存在,就会抛出个org.hibernate.ObjectNotFoundException异常 (2)load先到缓存(session缓存/二级缓存)中去查,如果没有则返回一个代理对象(不马上到DB中去找),等后面使用这个代理对象操作的时候,才到DB中查询,这就是我们常说的 load

详解HTTP请求:get方法和post方法的区别

在讨论get方法和post方法的区别时,我们经常会提到两点: 1.get传送的数据量较小,不能大于2KB,而post传送的数据量较大,一般被默认为不受限制: 2.get安全性非常低,但是post安全性较高: 究其根本,为什么呢?就需要提到http报文以及http报文的格式. 首先我们先看一下HTTP请求报文的通用格式: 在<计算机网络--自顶向下方法>一书中提到很关键的两句话: 使用get方法时实体主体为空,而使用post方法时才使用. HTML表单经常使用GET方法,将输入数据(在表单字段)

wait方法和sleep方法的区别

一.概念.原理.区别 Java中的多线程是一种抢占式的机制而不是分时机制.线程主要有以下几种状态:可运行,运行,阻塞,死亡.抢占式机制指的是有多个线程处于可运行状态,但是只有一个线程在运行. 当有多个线程访问共享数据的时候,就需要对线程进行同步.线程中的几个主要方法的比较: Thread类的方法:sleep(),yield()等 Object的方法:wait()和notify()等 每个对象都有一个机锁来控制同步访问.Synchronized关键字可以和对象的机锁交互,来实现线程的同步. 由于s