1.表单提交

html自带的from方法,简单易懂,便于操作,依靠于标签中的type="submit"进行表单传输,或者根据js进行控制提交表单。其中由method属性决定以post或者get方式进行提交。

jsp代码:

账号:

密码:

java代码(根据name属性获取参数):

String user = request.getParmeter("user_name");

String user = request.getParmeter("user_password");

2.URL传参(超链接请求)

这种传参方式,一般比较单一,所选取的值都是现有或者已经定义的,并且只能用get提交方式去发送请求。所以大多数情况下,超链接只用来作为跳转接口,而一般不会被用作传递参数的功能。不过,当JS来进行动态处理时,URL的方式还是十分灵活的,这里就不一一举例了。

这里还可以通过href向servlet传参

String user = request.getParameter("user_name");

String pass = request.getParameter("user_password");//java取值代码

3.Javabean传参

JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,set和get方法获取。

Javabean使用有如此好处

1.提高代码的可复用性:对于通用的事务处理逻辑,数据库操作等都可以封装在JavaBean中,通过调用JavaBean的属性和方法可快速进行程序设计。

2.程序易于开发维护:实现逻辑的封装,使事务处理和显示互不干扰。

3.支持分布式运用:多用JavaBean,尽量减少java代码大量出现在显示界面。

4.可以便捷地传递数据。

以下用代码举个小栗子:

Javabean代码:

package model;

public class User{

private String user_name;

private String user_password;

public String getUser_name() {

return user_name;

}

public void setUser_name(String user_name) {

this.user_name = user_name;

}

public String getUser_password() {

return user_password;

}

public void setUser_password(String user_password) {

this.user_password = user_password;

}

}

传递参数的页面:

user.setUser_name("小明"); 4 user.setUser_password("******")

%>

提交

接收页面:

姓名:

密码:

姓名:

密码:

4.session对象传参

Session 对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session 对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。

当用户请求来自应用程序的 Web 页时,如果该用户还没有会话,则 Web 服务器将自动创建一个 Session 对象。当会话过期或被放弃后,服务器将终止该会话,Session 对象最常见的一个用法就是存储用户的首选项。

简单来说,就是服务器在确定每一个用户过后都会存放用户相关信息在服务器端,这个被存放的值的集合就是session对象。

传参界面与接收的界面:

//传参界面

session.setAttribute("user_name", "小明");

session.setAttribute("user_password", "******");

%>

提交

//接收界面

out.println("姓名:"+session.getAttribute("username"));

out.println("密码:"+session.getAttribute("user_password"));

%>

5.cookie

Cookie实际上是一小段的文本信息。客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客 户端浏览器颁发一个Cookie。客户端浏览器会把Cookie保存起来。当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务 器。服务器检查该Cookie,以此来辨认用户状态。服务器还可以根据需要修改Cookie的内容。Java中把Cookie封装成了javax.servlet.http.Cookie类,每个Cookie都是该Cookie类的对象,服务器通过操作Cookie类对象对客户端Cookie进行操作。

java代码

Cookie cookie = new Cookie("username","password");// 新建Cookie

cookie.setMaxAge(3600); // 设置生命周期为3600秒

response.addCookie(cookie); // 输出到客户端

6.application全局变量

application对象代表JSP所属的WEB应用本身,可用于JSP页面,或者Servlet之间交换信息。常用的方法有getAttribute(String attName), setAttribute(String attName,String attValue)和getInitParameter(String Param)等。

服务器启动后就产生了这个application对象,当客户再所访问的网站的各个页面之间浏览时,这个application对象都是同一个,直到服务器关闭。

但是与session不同的是,所有客户的application对象都是同一个,即所有客户共享这个内置的application对象。

传参界面与接收的界面:

//传参界面

application.setAttribute("user_name", "小明");

application.setAttribute("user_password", "******");

%>

提交

//接收界面

out.println("姓名:"+application.getAttribute("username"));

out.println("密码:"+application.getAttribute("user_password"));

%>

7.request对象

request对象是当客户端向服务器端发送请求时,服务器为本次请求创建的,并在调用Servlet的service方法时,将该对象传递给service方法。

Request对象中封装了客户端发送过来的所有的请求数据。只要是有关于客户端请求的信息,都可以藉由它来取得,例如请求标头、请求方法、请求参数、客户端IP,客户端浏览器等等信息。

当然,它进行正常传参时是和session与application类似的,毕竟同属于四大范围域。

//传参界面

request.setAttribute("user_name", "小明");

request.setAttribute("user_password", "******");

%>

提交

//接收界面

out.println("姓名:"+request.getAttribute("username"));

out.println("密码:"+request.getAttribute("user_password"));

%>

8.jsp动作传参

1.jsp:forward动作做页面跳转时传递参数。

2.jsp:param它可以实现主页面向包含页面传递参数。

传参界面:

接收界面

out.println("姓名:" + request.getParameter("user_name"));

out.println("密码:" + request.getParameter("user_password"));

%>

java web传递参数_Javaweb的八种传值方式相关推荐

  1. 【值传递和引用传递之外的第三种传值方式 - 传名参数】

    引言 先看下Scala 的以下方法该如何调用那? class Demo {val assertIsOpen = truedef test(isTrue: () => Boolean): Unit ...

  2. Web开发必知的八种隔离级别

    Web开发必知的八种隔离级别 转自:http://www.infoq.com/cn/articles/eight-isolation-levels ACID性质是数据库理论中的奠基石,它定义了一个理论 ...

  3. Java基本数据类型(四类八种)

    Java基本数据类型(四类八种) 基本数据类型--四类八种:整数类(byte.short.int.long).浮点类(float.double).字符类(char).布尔型(boolean): 除此之 ...

  4. JAVA Web项目中所出现错误及解决方式合集(不断更新中)

    JAVA Web项目中所出现错误及解决方式合集 前言 一.几个或许会用到的软件下载官网 二.Eclipse的[preferences]下没有[sever]选项 三.Tomcat的安装路径找不到 四.T ...

  5. 【STM32】GPIO工作原理(八种工作方式超详细分析,附电路图)

    STM32F1xx官方资料: <STM32中文参考手册V10>-第8章通用和复用功能IO(GPIO和AFIO ) 芯片数据手册(datasheet) STM32的GPIO介绍 STM32引 ...

  6. ajax参数中有加号,浅谈在js传递参数中含加号(+)的处理方式

    一般情况下,URL 中的参数应使用 url 编码规则,即把参数字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+). 但是对于带有中文的参数 ...

  7. java源代码实例倒计时_Java倒计时三种实现方式代码实例

    写完js倒计时,突然想用java实现倒计时,写了三种实现方式 一:设置时长的倒计时: 二:设置时间戳的倒计时: 三:使用java.util.Timer类实现的时间戳倒计时 代码如下: package ...

  8. python自动化测试xpath_selenium自动化测试:5.xpath八种定位方式

    0.前言 如果可以的话,请先关注(专栏和账号),然后点赞和收藏,最后学习和进步.你的支持是我继续写下去的最大动力,个人定当倾囊而送,不负众望.谢谢!!! 1.前提 基于win10专业版64位系统+64 ...

  9. Selenium八种定位方式

    八种定位方式分别是:id.name.class name.tag name .link text.partial link textxpath.css selector. 元素标签或者元素属性:id. ...

最新文章

  1. 2021年大数据Spark(二十六):SparkSQL数据处理分析
  2. Python 算术运算符
  3. python 中的路径. ./ .. ../和相对路径的写法
  4. PAT1048 数字加密 (20 分)
  5. 检测动态生成的单选按钮和jQuery的变化
  6. Spring入门(四)之BeanFactory
  7. 简单java在线测评程序
  8. 关于list遍历时sychronizedList方法和synchronized同步块的线程安全问题思考
  9. Dart 6-Day
  10. 红魔游戏手机6 Pro氘锋透明版明日开启预售:售价5599元
  11. hadoop3.1.0集群搭建
  12. 占用率_有问有答:任务管理器里面的GPU占用率到底是怎么算的?
  13. 百度地图InfoWindow弹窗圆角
  14. 【ArcGIS】02 植被分类
  15. 干货分享:5年SEO经验得来的101条总结
  16. matlab差分法求解ppt,有限差分法求解薛定谔方程_宫建平.pdf
  17. Java Instrument(一) Java Agent
  18. 麒麟系统开发笔记(七):在线安装软件后,提取其安装包,部署目标机使用离线软件包方式安装软件
  19. 刷入Magisk/SuperSU实现ROOT
  20. 华南理工机械考研经验贴——踏踏实实复习是硬道理,第一没有捷径

热门文章

  1. 搜索算法-搜索的优化
  2. 浙大 PAT 乙级1056
  3. 双塔模型的瓶颈究竟在哪?
  4. oracle数据库连接违反,Oracle 数据库连接的一些坑
  5. python3模拟登录_Python3.4模拟登陆例子
  6. word 段显示在页面最下方_最快速地把同一内容插入到Word文档不同页面的相同位置...
  7. 今天日期减去过去日期_汽车各零部件也有身份证,教你们如何看这些部件的quot;出生日期quot;...
  8. mysql国内源码安装,mysql 源码包安装
  9. Leetcode每日一题:738.monotone-increasing-digits(单调递增的数字)
  10. 吴恩达机器学习1——单变量线性回归、梯度下降