周末总结

今天下午在学习servlet,想自己做一个简单的例子,于是用idea新建一个maven项目,为了后文叙述方便,我们取名为项目1,点击create from archetype,我先选择org.apache.maven.archetypes:maven.-archetype-webapp,用这个webapp模板,然后后面发现没有servlet服务器,Tomcat,Jetty之类的服务器。所以我就想找一个maven有服务器的模板,于是我又重新选择了一个模板,创建一个项目,我们取名为项目2,这一次是org.apache.cocoon:cocoon-22-archetype-webapp,这一次创建的项目有maven-jetty-plugin插件,我就把它移到我项目1中pluginManagement,然后不知道运行什么命令,我又到项目2中右侧maven projects中plugins插件发现有jetty插件,而项目1中没有,为什么没有,我想到了昨天卡了一天的事情,为了把第三方依赖jar包打入,我需要把用第三方依赖的jar包,放在/denpendency下,并在jar中的MANIFEST.MF中指定ClassPath在/denpendency下,这样就可以直接运行了,但是我把maven-denpendency-plugin插件移到pluginManagment中也没有出现在右侧右侧maven projects中plugins插件中,而且我用的phase package也没有效果,我当时猜测可能是由于denpendency没有运行的原因。而现在又遇见了这个问题,在网上搜索了一阵子后,发现Intellij 如果让Maven projects 中显示maven plugins,我灵光一现,把maven-jetty-plugin放在plugins中,然后在右侧刷新一下,发现plugins中有了jetty插件,而后我在dependency中也这样弄,完全ok。

JSP Servlet

JSP

JSP概述

  1. JSP是一种脚本语言
  2. JSP拥有java所有特性
  3. JSp运行在JSP容器中(Tomcat,Jetty)
  4. JSP会被转换成Servlet

jsp执行过程

  1. 客户端请求jsp网页
  2. jsp容器将jsp文件转译成servlet文件
  3. jsp容器将servlet文件编译成class文件并执行。
  4. 创建servlet实例,并执行jspInit()方法
  5. 然后创建一个新的线程,新线程调用实例的jspService()方法。
  6. 最后将HTML返回给客户端。

Tomcat是Servlet、jsp参考实现。

Web服务器:IIS,Apache

Servlet

Servlet概述

servlet

  1. servelt applet服务端小程序
  2. 是一个特殊的Java类
  3. 和HTTP紧密联系

Maven Jetty插件

<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.7</version>
<configuration>
<connectors>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<port>8888</port>
<maxIdleTime>30000</maxIdleTime>
</connector>
</connectors>
</configuration>
</plugin>

运行jetty:run

7.22实习培训日志-JSP Servlet的更多相关文章

  1. 7.21实习培训日志-JDBC JSP Servlet

    JDBC JSP Servlet 总结 今天早上的考试主要考Java的网络,HttpClient的get,post方法,Socket的文件传输和Xml和Json文件的解析,对于HttpCLient很简 ...

  2. 7.30实习培训日志-SQL优化

    总结 今天早上考试,下午主要是老师引导我们学习SQL优化,晚上主要是同学的技术分享,杨松柏同学主要给我们分享了java的io的一些东西,c10k问题,bio(同步阻塞IO),NIO(同步非阻塞IO), ...

  3. 7.27实习培训日志-Oracle SQL(三)

    Oracle SQL(三) 视图 特性 简单视图 复杂视图 关联的表数量 1个 1个或多个 查询中包含函数 否 是 查询中包含分组数据 否 是 允许对视图进行DML操作 是 否 CREATE [OR ...

  4. 7.24实习培训日志-Docker-Compose

    Docker-Compose 对于昨天的考试,需要 项目根目录下需要docker/mysql/Dockerfile 文件用于构建mysql镜像 项目根目录下需要docker/java/Dockerfi ...

  5. 7.23实习培训日志-JDBC

    总结 今天下午考试,JDBC,这个本身很简单,但是需要我们Dockerfile+Docker Compose运行,这个东西就很复杂.原来学习时没有怎么看,这一次就很懵,完全不知道怎么弄,反正环境都没有 ...

  6. 7.19实习培训日志- java进阶

    java进阶 java集合 Collection List ArrayList jdk1.2,异步处理,性能高,线程不安全 Vector jdk1.0,同步处理,性能低,线程安全 Set HashSe ...

  7. 7.10实习培训日志-markdown Git

    父模块github地址 一. markdown 1. markdown列表 html是一种发布的格式,markdown是一种书写的格式 区块引用 列表 图片 表格 html 标题 记笔记 写博客 2. ...

  8. 7.11实习培训日志-Git Linux

    Git git子模块 先在GitHub创建两个空的respository,一个super_project和一个sub_project. 然后在git bash中向库中写入一些文件. 在super_pr ...

  9. 7.31实习培训日志-docker sql

    docker mysql docker问题 今天问了老师有关docker的问题,entrypoint和cmd的区别,两者同时存在cmd的执行结果会被当做参数传入entrypoint. dockerfi ...

随机推荐

  1. 九度OJ 1161:Repeater(复制器) (递归)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:1449 解决:508 题目描述: Harmony is indispensible in our daily life and no one ...

  2. 九度OJ 1030:毕业bg (01背包、DP)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:1814 解决:798 题目描述:     每年毕业的季节都会有大量毕业生发起狂欢,好朋友们相约吃散伙饭,网络上称为"bg" ...

  3. Kubernetes TensorFlow 默认 特定 集群管理器

    Our goal is to foster an ecosystem of components and tools that relieve the burden of running applic ...

  4. C ~ 指针的运算

    一 :取地址运算“&”与取内容运算“*”: 单目运算“&”是取操作对象的地址 , “*”是取指针指向的对象的内容 , 两者互为逆运算 int x , *p ; p = &x ; ...

  5. Vue:实践学习笔记(6)——使用SLOT分发内容

    Vue:实践学习笔记(6)——使用SLOT分发内容 Slot Slot是什么 Slot是父子组件的通讯方式,可以将父组件的内容显示到子组件之中. 使用SLOT前 比如我在定义组件的时候,在里面输入了X ...

  6. turbolink 造成 link_to异常

    link_to  点击之后不刷新不加载文件 send_file 只能在浏览器中打开,而不能下载 解决方法:注释gem turbolink,application.js 中移除turbolink

  7. git常用开发流程

    我们在使用git进行项目管理时,远程仓库的分支情况一般是: master分支作为稳定版分支,用于直接发布产品,dev分支则用于日常开发 备注: 也可以只有一个master分支,这里只介绍第一种情况. ...

  8. 一、为什么要学习Java虚拟机?

    一.为什么要学习Java虚拟机?       这里我们使用举例来说明为什么要学习Java虚拟机,其实这个问题就和为什么要学习数据结构和算法是一个道理,工欲善其事,必先利其器.曾经的我经常害怕处理内存溢 ...

  9. Perl 日期时间函数(date time)

    use Time::HiRes qw(time);use POSIX qw(strftime); my $t = time;my $date = strftime "%Y%m%d %H:%M ...

  10. 如何在u盘上安装系统, (非安装盘)

    在u盘中永久安装Fedora. 需要两个u盘(live usb), 一个系统镜像文件. 方法是: 用一个u盘作安装盘,  然后通过这个u盘把系统安装到另一个u盘上. 两个U盘上的文件都会被覆盖. 1. ...