>>分享Java Web开发技术,并且对孙卫琴的《Tomcat与Java Web开发技术详解》提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 23244 个阅读者 刷新本主题
 * 贴子主题:  读《Tomcat与JavaWeb开发技术详解》的笔记 回复文章 点赞(0)  收藏  
作者:flybird    发表时间:2019-12-21 15:44:35     消息  查看  搜索  好友  邮件  复制  引用

最初读这本书是因为做比赛要用到服务器端,但是网络上的知识太多了,感觉自己丝毫没有头绪,于是在知乎上找到了一本推荐的书,如上。
现在对于网络编程的那些细节还没有去了解,甚至说是环境还没有按照书上配好,但是按照书上的章节,以一定的节奏算是把这本书看完了。至少目前对于网络编程有一个了解,知道了jsp文件是干嘛的,xml文件中那些奇奇怪怪的符号是干嘛的,啥是servlet,啥是Tomcat,啥是MVC,不再是打开下载下来的一个项目然后一脸懵。
以下,是自己零零散散记得笔记。
****************************************************************************************************************************
Web具有以下特征:
用超文本技术HTML来表达信息,以及建立信息与信息之间的连接。
用统一资源定位技术URL来实现网络上信息的精确定位
用网络应用层协议HTTP来规范浏览器与web服务器之间的通信。

Tomcat, Jetty, resin, Oracle Javaserver, WebLogic Server, Glassfish, Websphere, JBoss 等等。(提供了 Servlet 功能的服务器,叫做 Servlet 容器。对 web 程序来说,Servlet 容器的作用就相当于桌面程序里操作系统的作用,都是提供一些编程基础设施)

indexOf函数:查找字串中指定字符或字串首次出现的位置,返首索引值。如果找到该字符,则为 返回索引位置;如果未找到,则为 -1。

如果请求方式为get,则请求参数紧跟HTTP请求的第一行的URI的后面;如果请求方式为post,则请求参数位于HTTP请求的请求正文中。

MVC(Model-View-Controller,模型-视图-控制器)

web服务可以看做是被客户端远程调用的各种方法

web服务框架SOAP(simple object access protocol,简单对象访问协议),采用XML(可扩展标记语言)进行通信

Tomcat的默认工作方式是作为独立的servlet容器来工作,是一个独立运行的Java程序。

JNI(Java native interface)指的是Java的本地调用接口,通过这一接口Java程序可以和采用其他语言编写的本地程序进行通信。

在Tomcat/webapps中 src存放开发APP时的源文件

GenericServlet类的存在使servlet的使用更加方便。

ServletRequest表示客户请求
JSP文件:Java server pages ;Java服务器页面

web.xml文件是Javaweb应用的配置文件,可能包括:

servlet的定义,servlet的初始化参数

静态HTML文件以及servlet和JSP都能向客户端返回HTML页面。

Servlet:程序员使pprintWriter类写HTML文件

JSP 在传统HTML文件中加入Java程序片段,本质上还是servlet

jsp指令 <%@   %>设置和整个JSP网页相关的属性

1.page指令

2.include指令

jsp声明 <%!   %>用于声明jsp对应的servlet类的成员变量和方法

Java程序片段 <%   %>

java表达式 <%=    %>

注释 <%--   --%>

servlet容器先把jsp编译为Servlet再运行。

典型的三层软件结构

客户层:提供基于浏览器的客户界面,客户可以浏览web服务器传过来的静态或动态HTML页面,并且可以通过动态HTML页面和web服务器交互

web服务层:servlet,jsp和JavaBean负责访问数据库和事务处理。在web服务器层还包括一些jsp和javabean组件访问的实用类

数据库层:储存和维护web应用的永久业务数据


访问数据库

所有的JDBC驱动器都必须实现Driver接口
数据源(data source)

Java程序直接使用servlet容器提供的DataSource对象即可,这依赖于java的JNDI(java naming and directory interface)技术,简单理解成一种将对象和名字绑定的技术,对象工厂负责生产出对象,这些对象和唯一的名字绑定,外部程序可通过名字来获取某个对象的引用。

java web应用也像普通的java程序,通过jdbc api来访问数据库。使用JNDI访问数据源的效率要高一些。

数据源只是连接到数据库的一条路径。  

数据库与数据源的区别    https://my.oschina.net/hokkaido/blog/85366


http会话的使用与管理

Web服务器跟踪客户状态的四种方法

1. 在html表单中加入隐藏字段

2. 重写url,使他包含用于跟踪客户状态的数据

3. 用cookie来传达用于客户跟踪的数据

4. 使用会话(session)机制


http是无状态的协议   https://www.zhihu.com/question/23202402

过滤器

各个web组件中的相同操作可以放到同一个过滤器中来完成,这样可以减少重复编码。    

MVC是一种设计模式,它强制将应用程序的数据展示、数据处理和流程控制分开。

视图(view)是用户看到的并与之交互的界面,接受用户的数据,像用户显示数据,但是它不进行任何实际的业务处理。视图可以向模型查询业务状态,但不能改变模型。试图还能接受模型发出的数据更新时间,从而对用户界面进行更新。

模型(model)是应用程序的主体部分。模型表示业务数据和业务逻辑,一个模型能为多个视图提供数据。

控制器(controller)负责应用的流程控制,接受用户输入并调度相应的模型和视图去完成用户的需求。

MVC处理过程:控制器接收用户的请求,并决定调用哪个模型来进行处理;然后模型根据客户请求进行相应的业务逻辑处理,并返回数据;最后控制器调用相应的视图来格式化模型返回的数据,并通过视图呈现给用户。

MVC的优点:多个视图共享一个模型。模型是自包含的,与控制器和视图保持相互独立,所以可以方便地更改业务数据和业务规则。

MVC不适用于小型的应用程序。  

JSP model2用jsp技术实现视图的功能,用servlet实现控制器的功能,用Javabean实现模型的功能。

Struts  基于MVC的web应用框架
---------------------
作者:xueying_2017
来源:CSDN
转自:https://blog.csdn.net/xueying_2017/article/details/79822760

程序猿的技术大观园:www.javathinker.net

[这个贴子最后由 flybird 在 2019-12-21 15:44:35 重新编辑]
网站系统异常


系统异常信息
Request URL: http://www.javathinker.net/WEB-INF/lybbs/jsp/topic.jsp?postID=803

java.lang.NullPointerException

如果你不知道错误发生的原因,请把上面完整的信息提交给本站管理人员