小白学习路之JSP

本文介绍JSP技术在人事管理系统中的应用,涵盖JSP基础、处理流程、内置对象及文件上传,详细解析request、response等对象的常用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一个简单用jsp实现的人事管理系统demo:用jsp实现简单的人事管理系统

1.JSP简介

    JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。

    JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。网页开发者们通过结合HTML代码、XHTML代码、XML元素以及嵌入JSP操作和命令来编写JSP。

    JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。

    JSP标签有多种功能,比如访问数据库、记录用户选择信息、访问JavaBeans组件等,还可以在不同的网页中传递控制信息和共享信息。

2.JSP处理

以下步骤表明了Web服务器是如何使用JSP来创建网页的:

1.就像其他普通的网页一样,您的浏览器发送一个HTTP请求给服务器。
2.Web服务器识别出这是一个对JSP网页的请求,并且将该请求传递给JSP引擎。通过使用URL或者.jsp文件来完成。
3.JSP引擎从磁盘中载入JSP文件,然后将它们转化为servlet。这种转化只是简单地将所有模板文本改用println()语句,并且将所有的JSP元素转化成Java代码。
4.JSP引擎将servlet编译成可执行类,并且将原始请求传递给servlet引擎。
Web服务器的某组件将会调用servlet引擎,然后载入并执行servlet类。在执行过程中,servlet产生HTML格式的输出并将其内嵌于HTTP response中上交给Web服务器。
5.Web服务器以静态HTML网页的形式将HTTP response返回到您的浏览器中。
最终,Web浏览器处理HTTP response中动态产生的HTML网页,就好像在处理静态网页一样。
以上提及到的步骤可以用下图来表示:
在这里插入图片描述
 
 

3.JSP的九个内置对象

对象描述
requestHttpServletRequest类的实例-----request对象提供了一系列方法来获取HTTP头信息,cookies,HTTP方法等等。
responseHttpServletResponse类的实例------添加新的cookies,时间戳,HTTP状态码等等。
outJspWriter类的实例,用于把结果输出至网页上,常用方法:out.println();
sessionHttpSession类的实例
applicationServletContext类的实例,与应用上下文有关
configServletConfig类的实例
pageContextPageContext类的实例,提供对JSP页面所有对象以及命名空间的访问
page类似于Java类中的this关键字
ExceptionException类的对象,代表发生错误的JSP页面中对应的异常对象
  • request常用方法
    1.request.setAttribute(String key, Object obj) :通过键值对来保存数据,可以通过 request.getAttribute(String name)来获取保存的数据。
    2.request.getParameter(String name):根据标签的name属性取得标签value的值,一种值传递方式
    3.request.setCharacterEncoding(“字符集”):设置字符集
    4.request.getRequestDispatcher(“index.jsp”).forward(request, response):表示请求转发,进行页面跳转,跳转到某个jsp页面
  • response常用方法
    1.response.sendRedirect(“main.jsp”):表示页面的重定向,但是不能传值,上个页面的保存的数据在经过response的页面重定向后无法取到数据,所以它只是起一个页面跳转的功能。
                                                        【response.sendRedirect(“main.jsp”) 和request.getRequestDispatcher(“index.jsp”).forward(request, response)是有区别的,response的页面重定向不能传值,而request的请求转发是可以的。另外一个区别是在URL地址上的区别,response的页面重定向后,URL显示的是跳转后的页面,而request的跳转显示的还是跳转前的URL。】
     
  • pageContext常用方法
    1.forward():用此方法完成请求的转发
//pageContext将请求转发到a.jsp页面,并传递了两个请求参数name、password
<%pageContext.forword("a.jsp"?name=zhangsan&password=111);%>

(在a.jsp中可以用request.getParameter()方法来获取两个参数)
 
2.include():包含其他页面文件

//我们在开发一个web项目时,往往会对一个页面的头部、尾部等部分重复使用
//为了避免重复编写相同的代码,我们可以采用include方式,来包含这些文件
//常用的方式:
<%@ include file="header.jsp"%>  //指令方式
<%pageContext.include("header.jsp");%>  //pageContext.include()方法

 

  • session常用方法
    session:主要用于跟踪会话
<% session.setAttribute("account",account);%> //设置session值为“account”
//获取设置的session到页面
<h3>登录账号:<%=session.getAttribute("account")%></h3>

session的有效时间设置:session.setMaxInactiveInterval(int second)

//设置session有效时间为5分钟
session.setMaxInactiveInterval(5*60); //表示5分钟后如果用户未对页面进行任何操作,则清楚session
  • application对象
    可以使用application对象来获取当前系统的访问量,需要注意的是,当第一个用户登录系统时,application中没有值。
//使用application来获取系统的访问量
Object o = application.getAttribute("count");
//判断如果application值为空,则当前用户为第一个登录,并将application中值设为1
if(o==null){
		application.setAttribute("count",1);
}else{
		//count原来为String型,要强转为int型才能做+1操作
		int count=Integer.parseInt(o.toString());
		application.setAttribute(“count”,count+1);
}

//获取当前访问量到页面上
<h3>当前访问量:<%=application.getAttribute("count")%></h3>

 
 

4.JSP文件上传

参考地址:jsp文件上传

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值