第一个项目遇到的问题2
来源:互联网 发布:七武士知乎 编辑:程序博客网 时间:2024/05/23 01:23
request.getParameter("pageSize"))
返回值是null,是因为参数名不存在,应该是写错了
返回值是"",是因为表单提交过来的数据就是""空字符串,没有内容。
import com.mysql.jdbc.StringUtils;
jdbc里面有StringUtils这个类,封装了StringUtils.isNullOrEmpty("str")等方法,可以直接调用。
表单提交过来的内容要添加name属性,在Servlet中使用request.getParameter("name"),获取数据,
转发之前设置request.setAttribute("pageSize", pageSize);
在jsp中尽量使用EL表达式和JSTL获取,
css样式会重叠,后倒入的尽量放到最前面,
写模糊查询时,没判断之前where后面要加上一个永远为true的表达式,比如1=1,1<2,
然后是sql+=" and xxx like '%%'";
还有由于JavaScript是弱性语言,使用El表达式获得到的值要使用""括起来,我传过来一个12-15字符串,没有用引号括起来,特就直接给我计算了,返回个-3,找了好久才找到问题所在
另外,这是在网上看的jsp的四大作用域和九大内置对象的解释
http://blog.csdn.net/majun_guang/article/details/44462575
内置对象特点:
1. 由JSP规范提供,不用编写者实例化。
2. 通过Web容器实现和管理
3. 所有JSP页面均可使用
4. 只有在脚本元素的表达式或代码段中才可使用(<%=使用内置对象%>或<%使用内置对象%>)
常用内置对象:
1. 输出输入对象:request对象、response对象、out对象
2. 通信控制对象:pageContext对象、session对象、application对象
3. Servlet对象:page对象、config对象
4. 错误处理对象:exception对象
Request(Javax.servlet.ServletRequest)它包含了有关浏览器请求的信息.通过该对象可以获得请求中的头信息、Cookie和请求参数。
Response(Javax.servlet.ServletResponse)作为JSP页面处理结果返回给用户的响应存储在该对象中。并提供了设置响应内容、响应头以及重定向的方法(如cookies,头信息等)
Out(Javax.servlet.jsp.JspWriter)用于将内容写入JSP页面实例的输出流中,提供了几个方法使你能用于向浏览器回送输出结果。
pageContext(Javax.servlet.jsp.PageContext)描述了当前JSP页面的运行环境。可以返回JSP页面的其他隐式对象及其属性的访问,另外,它还实现将控制权从当前页面传输至其他页面的方法。
Session(javax.servlet.http.HttpSession)会话对象存储有关此会话的信息,也可以将属性赋给一个会话,每个属性都有名称和值。会话对象主要用于存储和检索属性值。
Application(javax.servle.ServletContext)存储了运行JSP页面的servlet以及在同一应用程序中的任何Web组件的上下文信息。
Page(Java.lang.Object)表示当前JSP页面的servlet实例
Config(javax.servlet.ServletConfig)该对象用于存取servlet实例的初始化参数。
Exception(Javax.lang.Throwable)在某个页面抛出异常时,将转发至JSP错误页面,提供此对象是为了在JSP中处理错误。只有在错误页面中才可使用<%@page isErrorPage=“true”%>
Jsp内置对象
功能
主要方法
out
向客户端输出数据
print() println() flush() clear() isAutoFlush() getBufferSize() close() …………
request
向客户端请求数据
getAttributeNames() getCookies() getParameter() getParameterValues() setAttribute() getServletPath() …………..
response
封装了jsp产生的响应,然后被发送到客户端以响应客户的请求
addCookie() sendRedirect() setContentType()
flushBuffer() getBufferSize() getOutputStream()
sendError() containsHeader()……………
application
config
表示Servlet的配置,当一个Servlet初始化时,容器把某些信息通过此对象传递给这个Servlet
getServletContext() getServletName() getInitParameter() getInitParameterNames()……………
page
Jsp实现类的实例,它是jsp本身,通过这个可以对它进行访问
flush()………
pagecontext
为JSP页面包装页面的上下文。管理对属于JSP中特殊可见部分中己经命名对象的该问
forward() getAttribute() getException() getRequest() getResponse() getServletConfig()
getSession() getServletContext() setAttribute()
removeAttribute() findAttribute() ……………
session
用来保存每个用户的信息,以便跟踪每个用户的操作状态
getAttribute() getId() getAttributeNames() getCreateTime() getMaxInactiveInterval()
invalidate() isNew()
exception
反映运行的异常
getMessage()…………
pageContext, request, session、application四个作用域中
1、如果把变量放到pageContext里,就说明它的作用域是page,它的有效范围只在当前jsp页面里。 从把变量放到pageContext开始,到jsp页面结束,你都可以使用这个变量。
4、如果把变量放到application里,就说明它的作用域是application,它的有效范围是整个应用。整个应用是指从应用启动,到应用结束。我们没有说“从服务器启动,到服务器关闭”是因为一个服务器可能部署多个应用,当然你关闭了服务器,就会把上面所有的应用都关闭了。application作用域里的变量,它们的存活时间是最长的,如果不进行手工删除,它们就一直可以使用。与上述三个不同的是,application里的变量可以被所有用户共用。如果用户甲的操作修改了application中的变量,用户乙访问时得到的是修改后的值。这在其他scope中都是不会发生的,page, request, session都是完全隔离的,无论如何修改都不会影响其他
- 第一个项目遇到的问题2
- 第一个项目进行时 -- 分享遇到的问题
- 南京第一个项目遇到的问题(easyui)
- 第一个java Web项目中遇到的问题(上)
- 工作第一个项目遇到的问题及解决
- 第一个项目role模块遇到的问题
- 遇到的第一个问题
- oj项目遇到的第一个问题----------不同浏览器下兼容的问题
- 学C++遇到的第一个问题
- 在C遇到的第一个问题!
- 第一个DWR程序遇到的问题
- 写第一个VC++遇到的问题
- 第一个遇到的问题,关于KEILL
- 第一个MapReduce程序遇到的问题
- Android studio 遇到的第一个问题
- Eclipse遇到的第一个问题
- 回忆.初作项目时遇到的第一个绞尽脑汁的问题.wchar_t*
- 2014-10-22遇到的问题----Android创建第一个项目出现appcompat_v7工程的解决办法
- ⚔疯狂输出⚔ collection中的Set方法
- 我转行成为机器学习和无人车工程师,并收获Offer
- Java swing实现的电子相册管理系统源码
- 利用快捷键设置Bois从U盘启动
- linux下编译安装与卸载 tar.gz文件
- 第一个项目遇到的问题2
- 线性空间的一些直观感悟
- 百度ueditor编辑器将图片上传到非项目根路径(保存在磁盘上)或独立服务器解决方案
- 这个冬天,F-One和合作伙伴抱了个团
- C语言通讯录系统
- javaweb简单快速的密码加密
- Scala学习笔记
- 无人驾驶时代催生乘客经济市场
- 新词话 | 智能服务