新手学Html之JSP简介——入门(一)
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
常见状态码:
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简介——入门(一)的更多相关文章
- 新手学Java,有哪些入门知识点?
很多小伙伴们在刚接触Java的时候,会有些迷茫,不知道该从哪里入手,不管是做前端还是后端,程序员都会用到JAVA,那该掌握哪些必要的基础知识呢.今天就跟大家分享新手学Java,有哪些入门知识点? 下面 ...
- 新手学Html之JSP基础语法——入门(二)
JSP基础语法 JSP注释 comment.jsp <%@ page language="java" contentType="text/html; charset ...
- JavaWeb学习----JSP简介及入门(含Eclipse for Java EE及Tomcat的配置)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- 雷林鹏分享:JSP 简介
JSP 简介 什么是Java Server Pages? JSP全称Java Server Pages,是一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开 ...
- JSP-Runoob:JSP简介
ylbtech-JSP-Runoob:JSP简介 1.返回顶部 1. JSP 简介 什么是Java Server Pages? JSP全称Java Server Pages,是一种动态网页开发技术.它 ...
- 作业调度框架Quartz.NET-现学现用-01-快速入门
原文:作业调度框架Quartz.NET-现学现用-01-快速入门 前言 你需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行.一个自动执行而无须干预的任务在执 ...
- 作业调度框架Quartz.NET-现学现用-01-快速入门 - 简书
原文:作业调度框架Quartz.NET-现学现用-01-快速入门 - 简书 前言 你需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行.一个自动执行而无须干预 ...
- 1.JSP 简介及工作原理
1.JSP 简介 JSP(Java Server Pages)是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动态网页技术标准.JSP技术有点类似ASP技术,它是在传统的网页H ...
- [ZZ]新手学 appium-合集第一季度
原文地址: https://testerhome.com/topics/2599 新手学appium-合集第一季度地址如下: 1.新手学 appium-GUI 端搞起来:http://testerho ...
随机推荐
- BZOJ1001: [BeiJing2006]狼抓兔子(优化的dinic或转化对偶图求最短路)
1001: [BeiJing2006]狼抓兔子 Time Limit: 15 Sec Memory Limit: 162 MBSubmit: 30078 Solved: 7908[Submit][ ...
- B.Obtain Two Zeroes
题目:包含两个零 题意:你被给予两个数a和b,你可以对这两个数进行操作 每次操作你可以选择任意的正整数x,可以进行a = a - x,b = b - 2x或者a = a - 2x,b = b - x两 ...
- 从RTL视图到Verilog语言-转可乐豆原创
从RTL视图到Verilog语言 曾经听过某位大牛都说:“当你的学习FPGA到一个境界的时候,你看到的硬件描述语言,将不再是单纯的语言,而是由一个个逻辑门组成的电路图,一旦达到这个境界,方能把代码写到 ...
- Python3 函数进阶1
目录 闭包函数 什么是闭包函数 闭包函数的作用 装饰器 什么是装饰器 无参装饰器 有参装饰器 闭包函数 什么是闭包函数 闭包函数本质上就是函数嵌套和高阶函数 闭包函数的满足条件: 必须嵌套函数 内嵌函 ...
- 快速排序 C&&C++
快排算法 快排和冒泡都是基于交换的思想,但是进行了改进,更为高效. 流程: (1)首先设定一个分界值,通过分界值将数组分成左右两部分. (2)将大于或等于分界值的数据集中到数组右边,小于分界值的数 ...
- 201871010119-帖佼佼《面向对象程序设计(java)》第二周学习总结
项目 内容 这个作业属于哪个课程 <任课教师博客主页链接> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 <作业链接地址> ...
- matplotlib可视化最全指南
1. 折线图:plt.plot 设置数据:plt.plot(x,y),单列数据传入默认y轴,此时x轴数据默认从0逐渐对应递增 设置颜色:plt.plot(x,y,color/c=" &quo ...
- Linux服务器可以ping,但是telnet端口超时,网站wget超时,访问超时的解决办法
最近无法通过SSH连接Linux服务器,访问该服务器上的HTTP服务也出现异常.可以ping,但是telnet端口超时,网站wget超时,访问超时. 最后排查是内核配置问题 原来是 net.ipv4. ...
- 原创 Hive left join 技巧总结
根据工作中经验总结出来 left join 常用的 使用注意点: A Left join B on A.id = B.id 第一种情况: 如果 A 表 ...
- Django forms组件里的ChoiceField、ModelChoiceField和ModelMutipleChoiceField的区别
阅读简要 首先我们要明白Django forms组件里的ChoiceField.ModelChoiceField和ModelMutipleChoiceField是继承关系 ChoiceField 1. ...