商务网站建设流程200字,用wordpress还是php,网站建设与维护合同,整合营销是什么学习中遇到的问题#xff1a;java基础不行#xff0c;都忘光了。 主要是#xff1a;继承#xff0c;接口#xff0c;多线程#xff0c;IO。尤其是多线程#xff0c;在分布式系统中应该使用的比较多 第一章#xff1a;前言和体系结构 HTTP协议#xff1a; TCP/IP的上层… 学习中遇到的问题java基础不行都忘光了。 主要是继承接口多线程IO。尤其是多线程在分布式系统中应该使用的比较多 第一章前言和体系结构 HTTP协议 TCP/IP的上层协议应用层。是一个请求/响应序列 HTTP响应HTTP首部信息HTTP体(多数未HTML) HTTP请求 GET请求获得一个页面字数有限参数转化为url地址 POST使用表单向服务器发送数据 url结构略 web服务器只提供静态网页调用其他程序cgi或servlet提供动态网页 servlet编写部署运行的小例子P30 按照书中方法部署servlet。其中首次部署失败原因是书中xml可能与tomcat不匹配把tomcat 中examples的xml开头拷贝一下就解决了。 通过这个例子基本了解了servlet和tomcat的工作流程! servlet的问题println html太糟糕了因此引入jsp页面设计人员只需要会用java对象即可 第二章高层体系结构 容器Servlet没有main方法管理servlet的程序成为web容器。 Tomcat就是这样的容器。由容器向servlet提供请求和相应容器调用servlet的方法。 容器提供 通信支持隐藏了servlet与web服务器之间的API 生命周期管理实例化和销毁servlet实例 多线程支持 用xml配置安全性 把jsp翻译成servlet 注本质上还是计算机设计的层次化思想只关心本层次的工作使用底层的API,为上层提供API极大的提高工作效率 采用xml方式配置servlet *提高灵活性不必或较少修改源码便于维护 *提高安全性不能让用户知道真是路径 MVC Servletjsp模式业务逻辑与表示分离但又有密切联系servlet中的业务逻辑只能处理web应用不能重用到其他应用如PC客户端无线应用MVC设计模式解决此问题 模型-视图-控制器把业务逻辑从servlet中抽取出来放到“模型”中业务逻辑和表示清晰分离。 问题每个Model的Controller都有大量重复代码都要写在每一个servlet还是只需要一个servlet 第三章MVC实战 不使用IDE构建一个MVC架构的web应用 构建成功 问题servlet怎么把请求交给jsp并把页面转至jsp页面request和response作用域是什么 第四章请求和响应 servlet流程 init httpservlet中service()方法决定调用doGet还是doPost。 他们是抽象方法需要用户的servelt程序覆盖至少一个 servlet生命周期中可以理解为服务器程序开启到关闭只有一个实例采用多线程实现多用户访问。这里如何操作线程共享数据线程安全等都有tomcat的web容器完成如果要深入理解得先学习多线程 *GET和POST的区别 GET参数你能放在请求行中数据量小暴露在url中 GET原则上应该是幂等的同样的操作返回相同的结果不对系统产生影响 POST参数放在http体中数据量大是不幂等的对系统产生影响 *介绍HttpServletRequeset和HttpServletReponse的一些API Servlet处理IO重定向请求分派 第五章 属性和监听者 *ServletConfig可以在web.xml中配置参数 通过设置request属性的方式可以把servlet的初始化参数传递给jsp *ServlentContext整个web-app的全局参数 *如果希望整个web应用有一个main函数用于数据库 初始化等操作即为监听者listener Servlet提供ServletContextListener接口。 在上下文初始化时得到通知 从ServletContext中得到初始化参数 使用初始化参数建立数据库链接 把数据库存储为一个属性是Web应用各个部分都能访问 在上下文撤销时得到通知关闭数据库链接 除了上下文监听者还有其他监听者 *属性 属性建立了名称和对象的映射在属性的作用域中的web应用中的其他程序就能通过名称使用属性的对象 3个接口可以设置属性ServletContextServletRequestHttpSession。 *线程安全 上下文属性不是线程安全的 同步一个servlet也不能阻止其他servlet和jsp访问属性所以要对上下文加锁 会话也不是线程安全的应为一个会话可能有多个请求。 请求属性是线程安全的应为一个请求一个线程请求的生命周期就是线程的生命周期 第六章 会话管理 *会话用于保存同一客户多个请求的状态 *会话使用coikie识别客户id用ip也不安全因为可能多个用户用一个ip如果客户禁用cookie则使用url重写 url重写 :不是太明白 *删除会话靠设置超时来完成可以在DD中配置全局超时也可以在程序中设置单独的超时 *cookie服务器与客户之间交换信息 *会话监听 *会话迁移在分布式系统中ServletServletConfigServletContext都在vm中复制只有会话在vm中迁移一个时刻一个会话之存在于一个vm中 第七章 使用jsp jsp scripletpage指令jsp表达式 jsp声明在类中定义置于服务方法外 jsp生命周期首次访问时编译加载 初始化jsp在DD中配置可以重写jspInit方法 jsp属性多一个pageContext且pageContext包含其他属性的引用 jsp指令 page指令定义页面特定的属性 taglib指令定义jsp可以使用的标记库 include指令主要用于重用页面 Scriptlet有害论 多数人认为java代码放入jsp是个不好的实践 难于维护不应要求页面设计人员懂java 解决EL表达式详见下章可以忽略 jsp动作下章 转载于:https://www.cnblogs.com/cjrzh/p/4480523.html