web开发一些基础和TomCat配置

3 Web开发

隐藏:

原生js:

    Var o = document.getElementById(“#tt”);

    o.style.display = “none”;

 

JQuery:

    $(“#tt”).hide();

 

Xml描述一个人的身份证:

<idcard>512021********633*</idcard>

<name>张三</name>

<sex>男</sex>

 

Json描述一个人的信息:

idcard: 512021********633*

name: 张三

sex:男

键值对: 键名+键值

 

Json语法:如

{"name":"runoob", "alexa":10000, "site":null}

3.1 Web开发基础知识

常见的软件结构模式分为两种:B/S, C/S

 

b/s结构模式采用了请求/响应的模式进行交互

 

 

 

 

 

 

 

 

前台向后台提交的请求的过程:

 

1).前台通过表单发送一个请求:

2).服务器根据请求地址通过配置文件web.xml找到相应的Servlet类:

3).根据请求的类型(get/post)执行servlet类中的doGet/doPost方法:

4).从request对象中获取传递的参数:

3.2 Tomcat

服务器

tomcat

常见的web服务器都有:

微软公司:IIS

Apache:tomcat

Oracle:WebLogic

IBM:WebSphere

结构目录

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

/bin

存放各种平台下用于启动和停止Tomcat的脚本文件

 

 

/conf

存放Tomcat服务器的各种配置文件

/lib

存放Tomcat服务器所需的各种JAR文件

/logs

存放Tomcat的日志文件

/temp

Tomcat运行时用于存放临时文件

/webapps

当发布Web应用时,默认情况下会将Web应用的文件

存放于此目录中

/work

Tomcat把由JSP生成的Servlet放于此目录下

 

 

使用idea创建一个新的web项目

idea配置tomcat

1:让你在edit configurations有tomcat

下一步:

下一步:

下一步:

配置Artifics的作用更改输出的路径

将这个路径改为tomcat/webapp路径下

 

配置好了,然后介绍web应用的目录

Src用于写java代码

web下面用于放html  css  js  等等一些资源  这里有个jsp可以直接访问这个index.jsp

 

3.3 Jsp

1.  Jsp脚本和注释:

jsp当中的java代码应该怎么写,或者写在哪里

三大指令

(1)page指令

(2)include指令

(3)taglib指令

9大内置对象

名称

类型

描述

out

javax.servlet.jsp.JspWriter

用于页面输出

request

javax.servlet.http.HttpServletRequest

得到用户请求信息,

response

javax.servlet.http.HttpServletResponse

服务器向客户端的回应信息

config

javax.servlet.ServletConfig

服务器配置,可以取得初始化参数

session

javax.servlet.http.HttpSession

用来保存用户的信息

application

javax.servlet.ServletContext

所有用户的共享信息

page

java.lang.Object

指当前页面转换后的Servlet类的实例

pageContext

javax.servlet.jsp.PageContext

JSP的页面容器

exception

java.lang.Throwable

表示JSP页面所发生的异常,在错误页中才起作用



3.4 Servlet

1、Servlet技术

2、filter 过滤器

3、listener 监听器

http请求

一个抓包的demo 去查看请求

常见请求头

描述 (红色掌握,其他了解)

Referer

浏览器通知服务器,当前请求来自何处。如果是直接访问,则不会有这个头。常用于:防盗链

If-Modified-Since

浏览器通知服务器,本地缓存的最后变更时间。与另一个响应头组合控制浏览器页面的缓存。

Cookie

与会话有关技术,用于存放浏览器缓存的cookie信息。

User-Agent

浏览器通知服务器,客户端浏览器与操作系统相关信息

Connection

保持连接状态。Keep-Alive 连接中,close 已关闭

Host

请求的服务器主机名

Content-Length

请求体的长度

Content-Type

如果是POST请求,会有这个头,默认值为application/x-www-form-urlencoded,表示请求体内容使用url编码

Accept:

浏览器可支持的MIME类型。文件类型的一种描述方式。

MIME格式:大类型/小类型[;参数]

例如:

   text/html ,html文件

   text/css,css文件

   text/javascript,js文件

   image/*,所有图片文件

Accept-Encoding

浏览器通知服务器,浏览器支持的数据压缩格式。如:GZIP压缩

Accept-Language

浏览器通知服务器,浏览器支持的语言。各国语言(国际化i18n)

 

 

Servlet生命周期

servletContext 对象

Servlet执行过程

Servlet的配置信息:

3.6 会话技术session/cookie

Cookie:数据存储在客户端本地,减少服务器端的存储的压力,安全性不好,客户端   可以清除cookie

Session:将数据存储到服务器端,安全性相对好,增加服务器的压力

  

 


 

                    订餐系统                                              

主键:

     主键特点:

     自然主键,实际开发中,数据库某一字段完全符合主键的特点,可以使用他作为主键。

     代理主键,在该表实际中没有一个符合设为主键的字段,但是数据表必须有主键,这个时候我们要使用代理主键(企业开发中最常用的)

     Id 自增

     Uuid(查)唯一的值 Java提供了一个类UUID 去获得这个数

 

订餐页面:

订餐的业务逻辑:

用户在前端页面 reserve.html

Method:“add”

orderDate:

eatData:

type:0(早)1(中)2(晚)

userId:(orderId)

OrdersServlet

 

add(){

1通过type和userId去查找是否可以订餐UserDao 如果小于0结束

如果可以订餐

2通过时间去获得这个价格priceDao

3向数据库中插入数据ordersDao

将结果返回给前端

前端处理业务逻辑

 

}

SQL语句的注入

用户在使用系统的时候 输入了sql语句or 1=1;

 

 

 

TomCat服务器扩展

Bin/要注意 不管什么软件这个目录下面都会放置可执行文件.exe文件

Conf/ #代表注释 <!--  -->注释方式  如果想更改Tomcat的端口号要修改conf/server.xml文件

Lib(库)/存放Tomcat服务器的jar包

Loge/日志文件

Webapps/是外部资源访问的默认地址

使用idea点击运行 idea都做了哪些事情

如何修改idea 项目 war包 的输出位置

掌握部署服务器

 

Servlet扩展

Servlet的生命周期

随着服务器的启动 客户的第一次访问  创建servlet对象

方面访问的事该对象  不会再重新创建

随着服务器关闭 而销毁

 

Init方法

ServletConfig对象

这个对象可以读取servlet的配置信息 通过键值对的方式

1在xml文件中配置init-param参数 以键值对的形式创建

2 config getinitparam这个方式去获取

 

Config能够获得servletcontext对象

这个对象是用来管理所有的servlet 也就是一个web应用只有一个servletcontext对象

这个对象是一个容器 他就可以存储数据也可以获得数据

可以实现servlet之间的交互 也就是说在一个servlet中可以获得另外一个servlet中的数据

Servlet存在线程安全问题?

什么是线程安全

Servlet是怎样存在线程安全问题的?如何解决

过滤器:

AOP面向切面编程

Java面向对象编程抽象 多态 继承 封装  OOP

 

过滤器

过滤  过滤请求

Filter

可以写多个

从用户访问->第一个过滤器->第二个过滤器->servlet

过滤器的生命周期  随着项目的启动而创建 当访04问了地址后 而调用doFilter方法 这个会多次执行随着项目的关闭而销毁

调用dofilter方法

Req(servletRequset)->HttpServletRequest  注意强转  (在使用HTTPServletRequest这个独有的方法时候要强转)

Resp

Chainfilter 链  可以指向下一个地址(如果有过滤器则下一个过滤器  没有则指向资源 servlet)

过滤 拦截 和(放行chain.doFilter(req, resp);//放行作用)

(1)  设置编码(为所有的 servlet)

(2)  设置跨域问题

(3)  解决所有的防盗链功能

使用过滤器时候需要配置地址

(1)  固定地址

(2)  通配符

(3)  指定目录

DButil工具类的使用

他能代替我们去处理结果集 将结果集封装成我们想要的东西(实体ben对象)

 

 

域对象:

Request responsesesslon servletContext四个

所有的域对象都会提供下面的三个方法

setAttribute 添加属性

getAttribute 获得属性

removeAttribute 删除属性

 

数据库连接池:

dbcp

c3p0连接池的使用

导包

配置文件  (不是必须  但是在企业中一定使用配置文件)

如果不使用配置文件 就要在代码中设置数据库参数4个

项目分为 开发环境 和运营环境 在开发时  开发人员接触不到公司实际数据库 数据库是机密  但是开发后也要更改数据库  但是不需要改代码 那就需要使用配置文件

导入自己写的工具类(初始化连接池 获得连接的方法)

在dao中使用工具类获得连接或者连接池 (有点工具类可以自动帮我们去建立连接)

比如dbutil工具类

配置文件

Java 中的一些键值对的配置文件专门提供了这样的类和文件名properties文件后缀名

Propetiess读取.properties文件的类 读取配置配置文件

1将配置文件变为流

2用java提供的properties类去加载这个流

3调用properties 对象的getProterty的方法这个方法需要一个参数键名返回的是一个值(字符串型)’

 

 

 

 

 

 

 

 

 

 

 

 

 

监听器

监听器 相当于之前所学的事件

源 监听的是谁

动作 触发的条件

响应 当这个条件满足的时候会执行函数

ServletContext对象:生命周期随着项目 的启动而创建 随着项目的关闭而销毁

 

Web项目

Dao方法  ->定义一个接口 (书写所有dao的方法)->这个dao的实现类

Servlet只负责接收请求返回响应

 

Service把所有业务逻辑放到service去实现

Service ->先定义接口->实现这个接口的实现类

书写步骤

1 定义接口 在接口中书写该接口提供的方法

2实现该接口的实现类 alt+enter(接口名上面)提示生成实现类

类名 声明为 接口名 +imol 说明是dao方法的实现类

包名  会放在dao下的一个包impl中

 

Bean实体对象

entity 实体

pojo  实体

 

exception NullPointerException 异常


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值