JavaWeb

JavaWeb

一、概述

1.常见的体系结构:

C/S 客户端/服务器 Client/Server

优点:用户信息安全性较好;对网络带宽要求低。

B/S 浏览器/服务器 Browser/Server

优点:轻量级;安全性好
2.WEB资源

HTML:静态资源

JSP/Servlet:动态资源

URL:统一资源定位符

URI:统一资源标识符

协议名://域名:端口/路径

二、Tomcat

Web服务器

1.接受客户端请求,给客户做出响应。

   把项目放到web服务器,再把web服务器放到网络上。

常见的Web服务器:JBoss;Weblogic;Tomcat

2.Tomcat主要实现了java EE 中的Servlet、jsp规范。同时提供了HTTP服务

welcome-file-list     默认访问界面
Srever starup      Tomcat启动成功

localhost:8080    域名,Tomcat默认端口
localhost:8080/指定项目名/指定页面

三、JSP

是javaweb的动态资源

1.jsp的组成
HTML+JAVA脚本+JSP动态标签
2.JSP脚本

就是java代码片段

<% %>	   java语句

<%=...%>   java表达式

<%!...%>   java定义类成员

<%@ %>     指定当前页面的配置(编码格式,导包,语言)
3.生命周期

从创建到对象销毁的过程。

Init( ) --初始化的方法(程序运行时 初始化)

上下文(context):一个对象在产生初期需要使用的所有的参数集合。

Service( ) --处理请求,给出响应

Destroy( ) --销毁的方法(Tomcat结束时 销毁)

4.JSP编译过程
发出请求--JSP文件转化--Servlet文件--class文件--Servlet实例--返回响应
5.JSP注释

HTML注释在页面能看到

JSP注释在页面看不到

6.内置对象(隐式对象)
6.1.out 输出
6.2.page/pageContext 单独页面
​setAttribute    设置属性

getAttribute    获得属性
6.3.request 请求
getRequestDispatcher("路径名").forward( request,response )   转发
//将A页面的请求和响应 转发到B页面

getParameter( “name属性 ”)		 获取参数,一个name对应一个值
getParameterValues("name参数")    一个name对应多个值

setCharacterEncoding("UTF-8")   设置请求的编码格式

​ 除了form表单是post请求方式,其他都是get

6.4.response 响应
sendRedirect("路径名")    重定向

重定向 页面会指向跳转页面。
转发可以保存请求和响应,重定向不行

6.5.session 会话

就是一个连接,范围是 一次浏览器的访问中

6.6.application 全局

在Tomcat运行时出现,关闭后结束

四、jstl+EL

用于合并开发;不常用,基本淘汰
缺点:前后端过于耦合;

4.1.EL表达式

${ }

4.2.JSTL
<%@ taglib uri="http://java.sun.sum.com/jsp/jstl/core" prefix = "c" %>

forEach 循环标签

begin 开始 end 结束 step 步长  items 

五、Servlet

业务处理

1.是用java编写的服务器程序。
  其功能是交互式的浏览和修改数据,生成动态的Web内容。

2.狭义的Servlet是指java语言实现的一个接口,
  广义的是指任何实现了Servlet接口的类。

3.Servlet接口定义了Servlet和Servlet容器(Tomcat服务器)之间的契约
1.Servlet生命周期

生命周期

字符集设置

charset=utf-8
request.setCharacterEncoding("UTF-8")

六、开发模式

1.Model1

在这里插入图片描述

2.Model2

在这里插入图片描述

3.MVC设计模式

mondel 模型
javaBean:负责业务逻辑处理

View 视图
jsp、HTML

Controller 控制器
Servlet

4.三层架构
表示层:和用户打交道的,接受用户的请求参数,显示处理结果;

业务层:接受了界面层传递的数据,计算逻辑,调用数据库,获取数据;

数据访问层:访问数据库,执行数据的查询,修改,删除等;
4.1.三层架构对应的包名
表示层:Controller包(servlet)   控制器

业务层:service包

数据访问层:dao包     持久层(与数据库打交道)
4.2.开发思路
静态页面--数据库实体类--jar包--工具类--BassDao(数据库连接)
--DAO接口(实现的功能)--service接口--dao的实现类(测试)
--service的实现类(测试)--servlet(页面提供的数据)

七、Cookie

1.中文小甜点,小饼干的意思。

1.1.在HTTP中表示服务器送给客户端浏览器的小甜点,
  其实就是一个键和一个值构成的。
1.2.随着服务器端的响应发送给客户端浏览器然后浏览器把Cookie保存起来,
  当下一次访问服务器时把Cookie再发送给服务器

2.Cookie由服务器创建,由客户端保存。

3.常用方法

Cookie cookie = new Cookie(“键”,“值”);

cookie.setValue(值);

getName() 键名

getValue() 值

setMaxAge() 设置销毁时间

getMaxAge() 获取销毁时间

response.addCookie(cookie) 将cookie 保存到本地(客户端)

request.getCookies( ); 获取Cookie,返回一个数组

乱码解决

URLEncoder.encode("",“UTF-8”)

URLDecoder.decode("",“UTF-8”)

七、分页查询

步骤:

1.计算数据总数量;
2.确定每页显示的数据量;
3.计算总页数分几页;
4.确定当前第几页;
5.该页面的数据。

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值