1.tomacat服务器下载地址:www.apache.orgjavaweb常识 随笔 第1张

 

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

在电脑中查看java版本:cmd中输入java -version

tomcat解压后目录

bin:放可执行文件(如startup.bat   shutdown.bat)

conf:放配置文件(server.xml)

lib:放tomacat 依赖的jar文件包

log:放日志文件(记录出错等信息)

temp:放临时文件

webapps:放可执行的项目(将我们开发的项目放入该目录)

work:存放 由jsp翻译成的java,以及编译成的class文件。

jsp--.java(servlet文件)---.class   写完jsp后,运行时产生两个文件(.java,.class)这两个文件会放到work文件夹下

jsp和servlet可以相互转换

因为第一次请求服务端会有翻译和编译的过程,因此比较慢,后续访问可以直接访问class,因此速度快。但是如果服务端修改代码,则再次访问时,会重新的翻译和编译

2.配置tomact

a.配置jdk (必须配置JAVA_HOME)

java_hpme classPath path

b.配置catalina_home   

点击电脑/计算机右击属性---高级系统设置--高级--环境变量--系统变量里新建(变量名CATALINA_HOME ,变量值为tomacat根目录的路径(点击tomact进去后,复制里面的路径)),可以在bin文件夹下点击startup.bat 来查看是否配置成功,如果打不开或者闪退则配置不成功

双击bin/ startup.bat 启动tomacat,常见错误:可能与其他服务的端口号冲突了

tomacat端口号默认为8080(此端口较为常见),建议修改此端口(8888)

修改端口号:在tomacat文件夹下conf文件夹下server.xml文件里,将8080改为8888,改完后回到bin下点击startup.bat 重新启动

javaweb常识 随笔 第2张

3.访问tomacat

http://localhost:8888/

常见状态码

200:一切正常

300/301:页面重定向(跳转)

404:资源不存在

403:权限不足(如果访问a目录,但是a目录设置 不可见)

500:服务器内部错误(代码有误 )

其他编码:自己积累

4.虚拟路径配置

javaweb常识 随笔 第3张

5.虚拟主机

javaweb常识 随笔 第4张

6.jsp执行流程

javaweb常识 随笔 第5张

javaweb常识 随笔 第6张

7.jsp动态网页

1.不用和是否有“动感”混为一谈

2和.是否随时间,地点,用户操作的改变而改变有关

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

8.BS/CS架构

CS:Client Server

CS不足:

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

b.维护 麻烦,需要维护每一台 客户端软件(假设有6亿人上qq,任何一台计算机坏了,这个qq都用不了,或者任何一台qq 它和它计算机里的一个软件冲突了,这个qq就坏了,任何一台qq坏了都需要重新去维护它,很麻烦)

c.每台客户端都需要安装客户端软件

javaweb常识 随笔 第7张

 

BS:  Broswer Server(客户端可以通过浏览器直接访问服务端)

典型的有网页版的京东,百度。

怎样访问京东的网页版?

答:客户端里只需要安装一台浏览器(IE/firefox/chrome),我们现在只需要浏览器去访问服务器就可以了

javaweb常识 随笔 第8张

 

BS优点:

 a.升级不再麻烦了(如 双十一了,京东需要将网页进行改造 ,则客户端就不需要管了不用升级直接访问就行了,即服务端自己升级,客户端不需理会可以直接访问)

b.维护不麻烦了(客户端只要有浏览器,你的京东就不会坏,只要服务器不坏 ,就都可以访问)

c.不需要安装客户端软件了(京东软件),只需要浏览器就可以访问

注:bs,cs各有优势(一般来说cs比较美观,且cs客户端 响应比较快)

 

9.eclipse中创建的web项目

javaweb常识 随笔 第9张

javaweb常识 随笔 第10张

10.配置tomacat运行时环境(如果jsp页面第一行出现错误,则可能是tomacat运行时环境没有配置)

a.  将tomacat/lib中servlet-api.jar复制到项目中src下,右击--build path--add to build path

b.右击项目build path-libraries-add library-server runtime-next-选择tomacat-finish

11.部署tomacat

在servers面板新建一个tomacat实例,再在该实例中部署项目(右击-add)之后运行

注意:一般建议将eclipse中的tomacat与本地的tomacat的配置信息保持一致:将eclipse中的tomacat设置为托管模式,即第一次创建 tomacat'实例后,双击该实例,选择server location第二项。这样保证了eclipse中的tomacat配置与本机中的tomacat配置保持一致

javaweb常识 随笔 第11张

 

 

 12.统一字符集编码

a.编码分类

设置jsp文件的编码(通过jsp文件中的pageENcoding属性):jsp-->.java(在翻译的过程中是以什么方式编码的)

设置 浏览器读取jsp文件的编码(通过jsp文件中的content属性)

一般将上述设置成一致的编码,推荐使用UTF-8

文本编码:1.将整个eclipse中的文件统一设置(推荐用这个)javaweb常识 随笔 第12张

                  2.设置某一个项目。右击项目-属性javaweb常识 随笔 第13张

                  3.设置单独文件的。右击文件-属性javaweb常识 随笔 第14张

 13.jsp页面元素:html  java代码(脚本Scriptlet)   指令    注释

a.脚本Scriptlet

      i.  <%

                 局部变量,java语句

          %>

      ii.<%! 

             全局变量,定义方法

           %>

      iii.<%=输出表达式%>

一般而言,修改web,xml,配置文件,java 需要重启tomacat服务

但是如果修改jsp\html\css\js不需要重启

b.指令

   如page指令

<%@page....%>

page指定的属性:

language:jsp页面使用的脚本语言

import:导入类

pageEncoding:jsp文件自身编码   jsp---〉java

contentType:浏览器解析jsp的编码

javaweb常识 随笔 第15张

c.注释

html注释<!-- -->  可以被浏览器客户端通过右击查看源代码查看到

java注释//        /*...*/

jsp注释<%-- ---%>

14.jsp9大内置对象(自带的,不需要new也能使用的对象)

out:向客户端输出内容

pageContext:

request:请求对象,存储“客户端向服务器发送的请求信息”

request对象常见方法:

String getParameter(String name):根据 请求的字段名key,返回字段值value(input标签的value属性值),即根据name属性值,拿到的却是value属性值

String[]  getParameterValues(String name):根据 请求的字段名key,返回多个字段值value(checkbox)

javaweb常识 随笔 第16张

javaweb常识 随笔 第17张

其中真正拿值的是value中的值,<input>后面的值是给用户看的

void setCharacterEncoding("编码格式utf-8"):设置post方式的请求的编码(不设置则默认,tomacat7以前默认iso-8859-1,tomacat8以后改为了utf-8)

getRequestDispatcher(“B.jsp”).forward();   :请求转发的方式跳转页面A--->B

ServletContext getServerContext():获取项目的ServletContext对象

response

session

application

config

page

exception

 14.get,post提交方式

get提交方式:method=“get”和地址栏,超链接请求方式默认都属于get提交方式

get,post请求方式区别:

a.get方式 在地址栏显示  请求信息(但是地址栏能够容纳的信息有限,一般是4-5kb,如果请求数据存在大文件,图片等会出现地址栏无法容纳全部的数据而出错),而post则不会显示,所有说get方式不安全。如会暴露密码等信息

b.文件上传操作,必须是post

推荐使用post方式

javaweb常识 随笔 第18张

 

15.统一请求的编码request(请求方式不一样,编码也不一样)

   如我用的是tomacat7版本默认编码是iso-8859-1,而我的jsp中contentType="text/html;charset=UTF-8"二者编码不统一,则出现乱码

get方式如果出现乱码,解决:

 a.统一每一个变量的编码  (不推荐)   

        用 new String(旧编码,新编码)修改

javaweb常识 随笔 第19张

b.修改server.xml,一次性的更改tomacat默认get提交方式的编码(比如改为UTF-8)

javaweb常识 随笔 第20张

建议使用tomacat时,首先在server.xml统一get方式的编码

post方式:request.setCharacterEncoding("UTF-8");

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄