1.JSP:动态网页

静态动态:是否随着时间地点、用户操作的改变而改变

动态网页需要用到 服务端脚本语言(JSP)

2.架构

CS:Client Server

不足:

a.如果软件升级、那么全部软件都需要升级

b.维护麻烦:需要维护每一台 客户端软件

BS:Broswer Server

客户端可以通过浏览器直接访问服务端

注意:BS和CS各有优势

3.tomcat解压后目录

bin:可执行文件(start.bat shutdown.bat) conf:配置文件(server.xml) lib:tomcat依赖的jar文件 log:日志文件(记录出错等信息) temp:临时文件 webapps:可执行的项目(我们将开发的项目放到这个文件夹中) work:存放由jsp翻译成的java,以及编辑成的class文件(jsp->java->class)

4.配置tomcat

a.配置jdk(必须用JAVA_HOME)

java_home classPath path

b.配置catalina_home

双击bin/startup.bat启动tomcat, 常见错误:可能与其他服务的端口号冲突,建议修改为8888

5.访问tomcat

http://locahost:8080/

常见状态码:

200:一切正常 300/301:页面重定向(跳转) 404:资源不存在 403:权限不足(如果访问a目录,但是a目录设置 不可见) 500:服务器内部错误(代码错误)

jsp:在html中嵌套的java代码

在项目/WEB-INF/web.xml中设置起始页的方法

 <welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

6.虚拟路径

将web项目配置到webapps之外的项目

a.方式一

D:\apache-tomcat-8.0.52\conf\server.xml 在<Host></Host>中添加

 <Context docBase="实际路径" path="虚拟路径"/>

docBase:实际路径 path:虚拟路径(绝对路径、相对路径【相对于webapps】)

docBase:实际路径 path:虚拟路径(绝对路径、相对路径【相对于webapps】)

b.方式二

在D:\apache-tomcat-8.0.52\conf\Catalina\localhost中新建“项目名.xml”中 新增一行<Context docBase="实际路径" path="虚拟路径"/>

7.虚拟主机

www.test.com访问本机

a.D:\apache-tomcat-8.0.52\conf/server.xml

 <Engine defaultHost改成www.test.com>
<Host appBase="webapps或者项目路径" name="www.test.com">
<Context docBase="webapps或者项目路径" path="/"/>
</Host>
</Engine>

b.C:\Windows\System32\drivers\etc\hosts中

增加 127.0.0.1 www.test.com

流程:端口号需要改为该网站默认的端口才可以模仿 www.test.com -> host找映射关系 ->server.xml找Engine的defaultHost ->通过“/”映射到项目路径 为了继续学习,虚拟主机恢复为原来的样子

8.JSP执行流程

jsp -> java(Servlet文件) ->class D:\apache-tomcat-8.0.52\work\Catalina\localhost\JspProject\org\apache\jsp 第一次访问:服务端将jsp翻译成java,再将java编译成class文件(因此比较慢) 第二次访问:直接访问class文件(如果服务端代码修改了,将会再访问时重新翻译、编译)

新手学Html之JSP简介——入门(一)的更多相关文章

  1. 新手学Java,有哪些入门知识点?

    很多小伙伴们在刚接触Java的时候,会有些迷茫,不知道该从哪里入手,不管是做前端还是后端,程序员都会用到JAVA,那该掌握哪些必要的基础知识呢.今天就跟大家分享新手学Java,有哪些入门知识点? 下面 ...

  2. 新手学Html之JSP基础语法——入门(二)

    JSP基础语法 JSP注释 comment.jsp <%@ page language="java" contentType="text/html; charset ...

  3. JavaWeb学习----JSP简介及入门(含Eclipse for Java EE及Tomcat的配置)

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  4. 雷林鹏分享:JSP 简介

    JSP 简介 什么是Java Server Pages? JSP全称Java Server Pages,是一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开 ...

  5. JSP-Runoob:JSP简介

    ylbtech-JSP-Runoob:JSP简介 1.返回顶部 1. JSP 简介 什么是Java Server Pages? JSP全称Java Server Pages,是一种动态网页开发技术.它 ...

  6. 作业调度框架Quartz.NET-现学现用-01-快速入门

    原文:作业调度框架Quartz.NET-现学现用-01-快速入门 前言 你需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行.一个自动执行而无须干预的任务在执 ...

  7. 作业调度框架Quartz.NET-现学现用-01-快速入门 - 简书

    原文:作业调度框架Quartz.NET-现学现用-01-快速入门 - 简书 前言 你需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行.一个自动执行而无须干预 ...

  8. 1.JSP 简介及工作原理

    1.JSP 简介 JSP(Java Server Pages)是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动态网页技术标准.JSP技术有点类似ASP技术,它是在传统的网页H ...

  9. [ZZ]新手学 appium-合集第一季度

    原文地址: https://testerhome.com/topics/2599 新手学appium-合集第一季度地址如下: 1.新手学 appium-GUI 端搞起来:http://testerho ...

随机推荐

  1. 10分钟搞定nginx实现负载均衡

    10.1 负载均衡的概念 对用户请求的数据进行调度的作用 对用户访问的请求网站可以进行压力的分担 10.2 常见的代理方式 10.2.1 正向代理 10.2.2 反向代理 10.3 负载均衡的部署环节 ...

  2. C和C++从零开始系列(一)

    今天开始写下一系列C和C++从入门开始的文章. 简单说几句C和C++的关系.C语言早于C++. C语言 贝尔实验室的Ken Thompson发明了 UNIX,当时有个B语言的.后来D.M.Ritchi ...

  3. Python实现截图功能你肯定不会吧?【面试必学】

    前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者:CyborgLin python实现截图功能. windows环境下.需 ...

  4. redis(3)--redis原理分析

    过期时间设置 在Redis中提供了Expire命令设置一个键的过期时间,到期以后Redis会自动删除它.这个在我们实际使用过程中用得非常多.EXPIRE命令的使用方法为EXPIRE key secon ...

  5. 深入浅出Object.defineProperty()

    深入浅出Object.defineProperty() 红宝书对应知识点页码:139页 红宝书150页:hasOwnProperty( )方法可以检测一个属性是存在于实例中,还是存在于原型中,给定属性 ...

  6. MySQL使用可重复读作为默认隔离级别的原因

    一般的DBMS系统,默认都会使用读提交(Read-Comitted,RC)作为默认隔离级别,如Oracle.SQL Server等,而MySQL却使用可重复读(Read-Repeatable,RR). ...

  7. 初学者接金币游戏C#+unity

  8. 从头实现一个WPF条形图

    时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...

  9. 解读setTimeout, promise.then, process.nextTick, setImmediate的执行顺序

    最近在看<Node.js调试指南>的时候遇到有意思的几道题,是关于setTimeout, promise.then, process.nextTick, setImmediate的执行顺序 ...

  10. [系列] Go 使用 defer 函数 要注意的几个点

    概述 defer 函数大家肯定都用过,它在声明时不会立刻去执行,而是在函数 return 后去执行的. 它的主要应用场景有异常处理.记录日志.清理数据.释放资源 等等. 这篇文章不是分享 defer ...