JSP学习笔记(一)

Java开发 :服务器 Tomcat,开发工具:Eclipse 数据库:MySQL

一、软件开发的程序分C/S结构和B/S结构两种
C/S结构 叫客户端服务器,需要在电脑中进行安装的软件(QQ,微信的PC,酷狗,Offic办公软件,暴风影音)
B/S结构叫浏览器服务器,不需要在电脑上安装,软件是运行在服务器上,用户通过浏览器进行访问。(淘宝网站,12306网站,当当网,网易,新浪,QQ空间…)
B/S 结构在电脑的浏览器地址栏上输入一个网址(域名),回车,浏览器这个软件会根据这个域名去找到互联网上这台对应的服务(电脑),服务接收到请求后,做出相关的响应。如果这个请求没有特殊要求,则默认返回这个网站的首页给客户端浏览器。你就可以在浏览器上看到网页…

B/S结构工作原理:
注意: 服务器返回给客户端浏览器的数据只能是:(html,css,JavaScript)因为浏览器这个软件只能解析这些内容,如果返回Java代码,PHP代码,C#代码,浏览器没办法解析。
网址:URL,统一资源定位符 URL中的?是与后面的参数进行分隔,参数如果有多个,则用 & 分隔。
在这里插入图片描述
网站运行在服务器上,Java应用支持服务器常用是Tomcat。Tomcat是一个轻量级的服务器,开源,稳定,占用资源少。是JavaWeb项目开发的首选。
Tomcat 安装有两种版本,安装版和解压版。
Tomcat 安装后目录如下:
在这里插入图片描述
运行bin目录下的startup.bat就可以运行服务器,有一个命令提示符,不能关闭,如果关闭则服务停止。
在这里插入图片描述
服务器启动后,打开浏览器,输入:localhost:8080 检测
在这里插入图片描述
Tomcat服务器的conf目录是存放服务运行时的配置文件。
在这里插入图片描述
server.xml
在这里插入图片描述
二、JSP
Jsp(Java server pages) 是运行在服务器端的Java页面,采用Html嵌套Java代码一个Jsp后缀的文件,客户端在第一次请求这个页面时,服务器端才会编译这个页面,生成一个页面类的Java源文件,并再编译成 .class字节码文件,存储在Tomcat服务器的work这个目录下,不会销毁,便于第二次访问这个页面,所以第二次访问比第一次快。再编译时就执行嵌套的java代码,并生成html,再返回给客户端的浏览器。
Jsp 页面创建后,在页面的前面有一个指令,这个指令可以有多个,但必须在最前。
在这里插入图片描述
如果页面打开时编码不是UTF-8,处理方法:
在这里插入图片描述
<%@page import="java.util.List"%> 导入页面中所使用的类的所在包。
<%=etc %>
注释:
在jsp页面上有3种注释:

1.<!--  这种叫html 注释,在页面源文件中可以看到 -->
2.在小脚本中可以用  // 注释,这种注释在页面的源文件中不能看到
3.在小脚本中可以用  
      /*
		这是多行注释,在页面的源文件中不能看到..
	 */

编码规范包括:命名规范,格式规范。 有一定的注释。注释的要求,在类前及方法前必须加注释,在方法中的关键处必须加注释。

三、开发JavaWeb项目在Eclipse中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
项目创建后,目录如下:
在这里插入图片描述
程序中的静态资源都放在WebContent目录建立一个特定的目录来存放,网站的后台管理页面也通常建立一个目录下存放,或放在WEB-INF目录下。
在这里插入图片描述
部署运行项目到Tomcat服务器中。
在Tomcat服务的webapps目录下有项目,
在这里插入图片描述
在Tomcat服务器的work目录下有Jsp页面生成的.java文件和.class文件
在这里插入图片描述
四、JSP页面上的内置对象
在JSP页面中已经默认创建了一些对象,这些对象可以使用,所以叫内置对象。内置一共有9个,分别有不同功能,常用的对象有5个(下面的前5个)。
out,request,response,session,application,config,page,pageconfig,exception
out对象: 用于输出。同等于<%= %>

request对象: 叫请求,客户端向服务器端发送请求,同时,它也是一个作用域,可以存储数据在里面。但是数据存储的生命周期只是对这一次请求有效。新的请求产生,则数据销毁。

response对象: 叫响应,服务器对客户端的输出。

session对象: 会话,客户端所有请求的集合。默认时间是30分钟,但是可以在Web.xml配置文件中进行设置。时间的计算以最后一次为基准。当服务端接收到一个客户端的请求过来,则服务器会为这个客户端创建一个会话ID(SessionID 是一个32位的16进制数据),这个ID会在客户端与服务端来回传送。Session 也是一个作用域,可以为每个客户端存放数据,并且是相互独立的,会话之间不能相互访问。存储位置在服务器端。浏览器关闭,会话失效,但是在服务端的Session空间不会立即销毁。要等到Session默认时间到之后,才销毁服务器端的空间。

application对象: 全局使用域,一个程序中只有一个,在应用程序启动时,就创建此作用域,这个作用域所存储的数据所有的客户端都可以访问到。在开发中通常用于统计在线人数,或网站访问量。

**exception:**此对象是存储错误信息的对象,要使用的话,需要在 page 指令上添加属性:

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8" isErrorPage="true" %>

Session会话的相关方法:
在这里插入图片描述
JSP 页面数据传递

<%
     String name =  request.getParameter("userName");
     out.print("用户名:"+name);
     String pwd =  request.getParameter("pwd");
     out.print("密码:"+pwd);
 %>

在这里插入图片描述

<%
request.setCharacterEncoding("utf-8");  //解决请求时参数中文乱码问题
response.setCharacterEncoding("utf-8");  //解决服务器端响应给客户端中文乱码问题。
     String name =  request.getParameter("userName");
     out.print("用户名:"+name);
     String pwd =  request.getParameter("pwd");
     out.print("<br/>密码:"+pwd);
     //取url?后面的参数值
     String id =  request.getParameter("id");
     out.print("<br/>ID:"+ id);
   %>

五、中文乱码的解决:
在Java开发中,中文乱码比较常见,同时,出现乱码的问题的地方也比较多。
请求响应时的中文乱码问题解决方案:

request.setCharacterEncoding("utf-8");  //解决请求时参数中文乱码问题
response.setCharacterEncoding("utf-8");  //解决服务器端响应给客户端中文乱码问题。

Tomcat服务也有中文乱码问题解决方案,在server.xml 配置文件中: URIEncoding=”utf-8”
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值