区别:
来源不同: 参数(parameter)是从客户端(浏览器)中由用户提供的,若是GET方法是从URL中
提供的,若是POST方法是从请求体(request body)中提供的;
属性(attribute)是服务器端的组件(JSP或者Servlet)利用requst.setAttribute()设置的
操作不同: 参数(parameter)的值只能读取不能修改,读取可以使用request.getParameter()读取;
属性(attribute)的值既可以读取亦可以修改,读取可以使用request.setAttribute(),设置可使用request.getAttribute()
数据类型不同: 参数(parameter)不管前台传来的值语义是什么,在服务器获取时都以String类型看待,并且客户端的参数值只能是简单类型的值,不能是复杂类型,比如一个对象。
属性(attribute)的值可以是任意一个Object类型。
ServletConfig: initParameter是用来获取配置文件web.xml中<servlet>标签下的子标签<init-param>配置的是初始化参数,其作用域是本servlet
ServletContext: attribute相关方法是用来操作web应用上下文中的属性,setAttribute()/getAttribute()/removeAttribute()
initParameter相关方法是获取web.xml配置文件中<context-param>标签配置的初始化参数,其作用域是整个web应用。
ServletRequest: attribute相关方法是用来操作转发请求的参数,直接在服务端设置,可由jsp或其他servlet进行操作
parameter相关方法是用来获取本次请求所携带的参数,是客户端传递过来的
Attribute 是属性 一般是域的概念就会与相应的概念 比如ServletContext 一般又在域内数据共享传输的
Parameter 是参数 一般是也是域有, 但是一般是网页中的表单数据或超链接,网址上的参数传输
InitParameter 是初始化参数, 一般用在获取配置文件的初始化数据
对于表单的编写 :
对于我们要录入的信息,可以不能写value的值 比如文本框,文本域,密码框
但对于不需要录入的信息,我们手动选择的按钮等:比如 单选框,复选框,下拉框等我们只需要选择信息的,因为你选择的信息,服务器并不知道你选择的信息的内容,就要写value的值,作为信息传输到后台。