javaweb笔记一
内连接(自然连接): 只有两个表相匹配的行才能在结果集中出现
外连接: 包括 (1)左外连接(左边的表不加限制) (2)右外连接(右边的表不加限制) (3)全外连接(左右两表都不加限制
一个空的构造器,不是必须要有的,只是我们在编程的时候习惯性的加上这么一个方法,这是一个良好的习惯。
另外,这样做肯定是有好处的,如果你的一个类写了带参的构造方法,而没有写空的构造方法,那么,如有有一个类继承了你这个类,
那么这个类必须重写那个带参的构造方法,不写就会报错,所以这就会带来不必要的麻烦,所以我们一般都会写一个空的构造方法,
//根据类的全路径加载该类
Class c = Class.forName(path);
//调用加载类的无参构造函数,产生该类的对象
Object obj = c.newInstance();
jdbc是java连接数据库的一套标准。该标准中定义了一系列的接口,有数据库厂根据自己数据库的特点提供实现类。开发者根据接口调用
厂商提供实现类的方法。这样,无论连接什么样的数据库都是一套API,可以屏蔽不同数据库的差异。
jdbc开发流程:1.加载驱动 2.建立连接 3.执行SQL语句 4.关闭连接
访问tomcat业务组建的三种方式:表单,超链接,流中直接写
工厂模式:将对象的创建,与对象的使用分开进行,其中主要目的是为了解耦。
http:超文本传输协议,(1)遵循请求/响应模型
(2)http协议是一种无状态协议,请求/响应完成后,连接会断开。这时,服务器无法知道当前访问的用户是否是老用户。
所以,服务器会认为每个请求的用户都是新用户。(3)80端口
推送模型:没有请求也会发送给客户端。
http协议处理流程:
1、客户端和服务器建立连接
2、客户端向服务器发送请求
3、根据客户端请求,服务器响应请求
4、关闭连接
按照http协议,请求信息分为四部分:(客户端发送给服务端看的)
1、请求行 描述请求方式、请求的URL路径、http协议的版本(POST / http/1.1)
2、请求头 描述客户端相关的信息
3、空行 标识请求头的结束和消息体的开始
4、消息体(POST才有) 描述表单数据
响应信息分为四部分:
1、状态行 描述http协议版本号,状态码,状态描述
2、响应头 描述服务器相关的信息
3、空行 标识响应头的结束和消息体的开始
4、消息体 描述响应信息的主体内容,该内容交给客户端浏览器解析后显示出来,通常是html标记。
MIME类型:用于描述传输数据的格式。常见的有:text/html标记文本
text/xml xml格式的数据 image/jpeg 图片格式等
接收方在读取到MIME类型后,就可以知道,以什么方式来解析接收的数据。
http协议中,请求方式一共有8种,最常见的是GET和POST两种
辅助应用:传统的WEB服务器在产生响应时,只能产生静态的HTML数据,极大限制了响应的灵活性。解决方案是,在web服务器后,添加辅助应用。
辅助应用可以根据请求信息,进行一系列的业务操作。然后,以数据库作为存储介质,动态产生信息。
java利用web容器+servlet解决辅助应用。由web容器完成底层操作,然后预留servlet接口,交给开发者完成业务操作。
web容器的作用:
1、通信支持 web容器可以将请求信息和响应信息,封装成请求对象和响应对象。然后可以通过一些方法,得到请求和响应信息中的内容。
2、Servlet生命周期管理 web容器需要产生开发者书写的Servlet业务组建对象,并调用其中的业务方法,以及完成Servlet对象销毁。
3、多线程处理 完成多任务处理,线程的产生、启动、方法调用、都由web容器完成。
4、jsp支持 完成对jsp引擎的编写。
5、安全性处理。
servlet规范,web容器+servlet结构出台以后,底层部分通常由容器产商封装成容器产品。由于产品差异,开发者开发web应用程序时,
只能按指定的容器书写代码。这样,使得web应用程序不具有移植性。一旦系统升级,需要更换容器时,无法做到同一个web应用程序。
在不同的容器中运行。为了规范web容器,sun公司制定了servlet规范,该规范提供了一些列的接口,由容器产商实现,由开发者根据
接口调用方法。可以屏蔽不同容器的差异,同一个web应用程序即使更换web容器也能运行。
javaweb应用程序组成:配置文件,静态文件和jsp,类文件和包。
web应用程序中必须包含一个WEB-INF目录,按照servlet规范规定,目录中的内容不能被客户端直接访问,存放比较
隐密的信息。包含一些收费的,以及classes存放开发者书写的业务组件的class组件。
web应用程序(WebContent):
*.jsp
*.html
*.js
*.css
*.jpg
......
WEB-INF
classes
lib
web.xml(完成WEB组件的注册)
tomcat目录结构:
bin:存放可执行文件(startup.bat:启动tomcat;shutdown.bat:关闭tomcat)
conf:存放tomcat配置文件。(server.xml:描述tomcat服务器相关信息)
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/> //描述tomcat启动端口,如果该端口设置为
80端口,客户端访问时,可以在浏览器只输入IP地址,不用输端口。
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true"> //appBase属性用于描述web应用程序存放的目录,默认为webapps。
web.xml:描述tomcat中web应用相关的信息。
lib:存放tomcat运行时所用的jar包。
logs:存放日志文件。
temp:存放临时目录。
webapps:存放web应用程序。
work:对jsp的支持目录。
javaweb笔记一的更多相关文章
- JavaWeb笔记——三大组件之过滤器
过滤器JavaWeb三大组件之一,它与Servlet很相似!不它过滤器是用来拦截请求的,而不是处理请求的. 当用户请求某个Servlet时,会先执行部署在这个请求上的Filter,如果Filter“ ...
- JavaWeb笔记——三大组件之监听器
1 JavaWeb监听器概述 在JavaWeb被监听的事件源为:ServletContext.HttpSession.ServletRequest,即三大域对象. l 监听域对象“创建”与“销毁”的 ...
- javaweb笔记4之httpservlet
1 httpservlet简介 service方法是Servlet的入口方法,调用servlet会首先调用service方法.在service方法中,会根据请求方式分别调用不同的doXXX方法.例如, ...
- JavaWeb笔记一、Servlet 详解
一.创建一个 Servlet 简单实现类 1.创建一个 HelloServlet 类(测试 Servlet 接口方法) 1 //创建一个 HelloServlet 类并实现 Servlet 接口 2 ...
- javaweb笔记—04(预编译和泛型)
预编译:ps对象1.ps可进行预编译,占位符传值,性能高于sta的(数据库驱动层有优化)2.比较灵活,数据库将预编译的SQL缓存了,第二次访问,就不用预编译,直接执行.3.较为安全,不会发生SQL注入 ...
- javaweb笔记七
过滤器:是一个web中间组件,用于拦截从客户端发送给服务器的请求和响应.当客户端向服务器发出请求时,服务器会查看是否有过滤器和该请求匹配,如果有,则交给过滤器执行,业务操作后,可以将请求继续向目标资源 ...
- javaweb笔记全套
Lesson 1 一.eclipse工具的使用 1. java代码的位置 1) 选择工作空间 workspace 选择一个文件夹存放程序(代码) 不要用中文和空格 2) 新建一个java 工程(Pr ...
- javaweb笔记分享
Lesson 1 一.eclipse工具的使用 1. java代码的位置 1) 选择工作空间 workspace 选择一个文件夹存放程序(代码) 不要用中文和空格 2) 新建一个java 工程(Pr ...
- 超全面的JavaWeb笔记day21<过滤器>
1.过滤器的原理 2.实现过滤器 写一个类实现javax.servlet.Filter接口 在web.xml中对Filter进行配置 3.Filter接口 void init(FilterConfig ...
随机推荐
- 浏览器json数据格式化
在浏览器上作接口测试的时候看到json 格式的数据是密密麻麻的一片,眼睛都花了.. 如: 设置方法: chrome 的右上角选择,然后--- 更多工具--- 扩展程序 ---- JSO ...
- ural 2029 Towers of Hanoi Strike Back (数学找规律)
ural 2029 Towers of Hanoi Strike Back 链接:http://acm.timus.ru/problem.aspx?space=1&num=2029 题意:汉诺 ...
- 并发批量管理500台以上服务器脚本分享(shell版)
转载于运维笔记 Categories:Shell 也许很多人认为shell不能并发任务,其实可通过其它一些方式来实现.下面的脚本是我批量快速管理500+服务器脚本,阅读该脚本前建议先看<自动执行 ...
- CSS边框及常用样式
一.CSS设置样式 1.1 边框border 作用:设置标签周围的边框,方法 board:宽度 样式 颜色,一般情况下样式使用 solid实体的,和dotted虚线的 <head> &l ...
- 视差插件parallarx
github上的demo,自己拿来改了改. <!DOCTYPE html> <html> <head> <meta charset="UTF-8&q ...
- 《设计模式》-原则二:里氏代换原则(LSP)
回顾一下上一节说的“开闭原则” 说的是 一个软件要遵循对修改关闭 对新功能扩展的原则. 这一次来说说 “里氏代换原则” 意思是说:子类型必须能代替他们的基类. 看了半天的例子 好像 是懂非懂啊...相 ...
- 【CodeForces】741 D. Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths(dsu on tree)
[题意]给定n个点的树,每条边有一个小写字母a~v,求每棵子树内的最长回文路径,回文路径定义为路径上所有字母存在一种排列为回文串.n<=5*10^5. [算法]dsu on tree [题解]这 ...
- Shell基础-通配符
* - 通配符,代表任意字符 ? - 通配符,代表一个字符 # - 注释 | - 分隔两个管线命令的界定 ; - 连续性命令的界定 ~ - 用户的根目录 $ - 变量前需要加的变量值 ! - 逻辑运算 ...
- 【译】第十二篇 SQL Server代理多服务器管理
本篇文章是SQL Server代理系列的第十二篇,详细内容请参考原文 在这一系列的上一篇,我们查看了维护计划,一个维护计划可能会创建多个作业,多个计划.你还简单地看了SSIS子系统,并查看了维护计划作 ...
- 《区块链100问》第84集:资产代币化之对标黄金Digix
黄金是避险的不二选择.Digix发行的黄金代币则是数字资产世界里的黄金,其代币简称DGX,能够在数字资产世界中起到避险的作用. DGX如何实现对标黄金呢?它将黄金资产进行了上链(即:区块链)操作.举个 ...