一、jar包

1.介绍

java中的jar文件装的是 .class 文件,它是一种压缩,和zip兼容,被称为jar包。是一种与平台无关的文件格式.JDK提供的许多类,也是以jar包的形式提供的。

jar包就是别人已经写好的一些类,然后将这些类进行打包,你可以将这些jar包引入你的项目中,然后就可以直接使用这些jar包中的类和属性以及方法。

在jar文件之前,web浏览器必须重复多次请求web服务器,以便下载完构成一个“程序片”的所有文件。除此以外,每个文件都是未经压缩的。但在将所有这些文件合并到一个jar文件里以后,只需向远程服务器发出一次请求即可。同时,由于采用了压缩技术,可在更短的时间里获得全部数据。

2.导入jar包

File(文件)→Project Structure(项目结构)→Modules(模块)→Dependencies(依赖)

导入jar包后RedissonClient无效 导入jar包是什么意思_tomcat

 

导入jar包后RedissonClient无效 导入jar包是什么意思_tomcat_02

 点击“+”,选择“JARs or directories”,选择要上传的jar包,然后确定。

导入jar包后RedissonClient无效 导入jar包是什么意思_tomcat_03


二、Servlet

1.Servlet规范

Servlet规范来自于JAVAEE规范中的一种

作用:

(1)指定动态资源文件开发步骤

(2)指定http服务器调用动态资源文件规则

(3)指定http服务器管理动态资源文件实例对象规则

Severlet是sever+applet的缩写,指运行在服务器端的小程序。servlet就是一个接口,定义了Java被浏览器访问到的规则,它的创建、使用、销毁都由Servlet容器进行管理(如tomcat)

2.用法

(1)创建JavaEE项目

(2)定义一个类,实现Servlet接口

public class Servletdemo1 implements Servlet

(3)实现接口中的抽象方法

(4)配置Servlet

3.执行原理

(1)当服务器接收到客户端的请求后,会解析请求URL路径,获取访问的Servlet的资源路径

(2)查找web.xml文件,是否有对应的<url-pattern>标签体内容

(3)如果有,则在找到对应的<servlet-class>全类名

(4)tomcat会将字节码文件加载进内存,并且创建对象

(5)调用其方法

4.Servlet生命周期方法

(1)被创建init

执行init方法,在Servlet被创建时执行,只执行一次

默认情况下,第一次被访问时,Servlet被创建
 

public void init(ServletConfig servletConfig) throws ServletException {
        System.out.println("init......");
    }

特殊情况下可以配置执行Servlet的创建时机

在<servlet>标签下配置:

第一次被访问时,创建:<load-on-startup>的值为负数

在服务器启动时,创建:<load-on-startup>的值为0或正整数

<load-on-startup>5</load-on-startup>

Servlet的init方法,只执行一次,说明一个Servlet在内存中只存在一个对象,Servlet是单例的

多个用户同时访问时,可能存在安全问题,所以尽量不要在Servlet中定义成员变量

(2)提供服务service

执行service方法,在每一次Servlet被访问时执行,执行多次

public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        System.out.println("service......");
    }

(3)被销毁destroy

执行destroy方法,在服务器正常关闭时执行,只执行一次

非正常关闭时不会执行,如点X关闭

一般用于释放资源

public void destroy() {
        System.out.println("destroy.......");
    }

导入jar包后RedissonClient无效 导入jar包是什么意思_jar_04

导入jar包后RedissonClient无效 导入jar包是什么意思_mvc_05

 (4)getServletConfig

获取ServletConfig对象,即Servlet的配置对象

public ServletConfig getServletConfig() {
        return null;
    }

(5)getServletInfo

获取Servlet的一些信息,如:版本、作者等

public String getServletInfo() {
        return null;
    }

5.Servlet注解配置

(1)创建JavaEE项目,选择Servlet3.0版本以上,可以不用创建web.xml

(2)定义一个类,实现Servlet接口

(3)复写方法

(4)在类上使用Servlet注解,进行配置

@WebServlet("资源路径") 

导入jar包后RedissonClient无效 导入jar包是什么意思_jar包_06

6.IDEA与tomcat相关配置

1.IDEA会为每一个tomcat部署的项目单独建立一份配置文件

查看控制台的log:

Using CATALINA_BASE:   

导入jar包后RedissonClient无效 导入jar包是什么意思_tomcat_07

 2.tomcat真正访问的是“tomcat部署的web项目”,“tomcat部署的web项目”对应着“工作空间项目”的web目录下的所有资源

3.WEB-INF目录下的资源不能被浏览器直接访问

7.创建Servlet

(1)new一个新项目→new一个新Module

(2)右键新Module→Add Frameworl Support→勾选Web Application(idea会自动生成web文件夹,以及下面需要的配置文件)

导入jar包后RedissonClient无效 导入jar包是什么意思_jar_08

 

导入jar包后RedissonClient无效 导入jar包是什么意思_servlet_09

 (3)在Web下创建index.html,用来导航到servlet页面

导入jar包后RedissonClient无效 导入jar包是什么意思_servlet_10

 <a href="/servlet路径/项目根目录">

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>这是导航页面</h1>
<br>
<a href="/demo3/helloServlet">进入servlet</a>
</body>
</html>

(5)配置tomcat

导入jar包后RedissonClient无效 导入jar包是什么意思_mvc_11

(6)配置Servlet

 继承Servlet是红色,shift+alt+回车自动导入jar包 

导入jar包后RedissonClient无效 导入jar包是什么意思_jar包_12

导入jar包后RedissonClient无效 导入jar包是什么意思_tomcat_13

手动导入:

导入jar包后RedissonClient无效 导入jar包是什么意思_jar_14

(7)重写Servlet方法

(8)配置web.xml 

导入jar包后RedissonClient无效 导入jar包是什么意思_jar包_15

或直接添加WebServlet 

导入jar包后RedissonClient无效 导入jar包是什么意思_mvc_16


三、MVC

1.组成:

(1)M:model业务模型层,完成业务处理

①dao层:直接操作数据库

②service层:调用dao层来完成业务实现,负责管理调用的dao层的事务管理

(2)V:view视图层,将处理结果写入到响应包 JSP

(3)C:controller控制层

2.优点

(1)提高JavaWeb开发的代码复用性,避免了重复性开发

(2)有效帮助开发人员实现业务开发中的事务管理