Servlet学习笔记——第二天

Servlet学习精要
本文深入讲解Servlet技术,涵盖web应用自动发布、请求发送方式、Servlet生命周期及线程安全,详解Servlet与Jdbc整合的开发步骤。

Servlet学习笔记—第二天

Servlet笔记 第二天

一. 复习

在这里插入图片描述

二. web应用3.0版(使用工具做程序的自动发布)

1. 在myeclipse里配置tomcat服务器操作窗口

1) window — show view — others — 搜索servers – 选中

2 ) 窗口右键 — configurer server connector — tomcat 7.x — 选中enable

— 在第一个选择框指定tomcat安装路径

2. 新建一个web project

在这里插入图片描述
注:classses只是没有显示,实际是存在的。
1) 采用自动部署功能,项目名就作为将来的web应用名使用

2) 如何修改项目名,需要同时修改web应用的部署路径(不同myeclipse版本有所差别)

​ 如果需要修改 — 项目右键 — propertis — 搜索web — 改路径

三. 请求发送的三种方式

1. 地址栏手工输入

注意:只适用于用户访问应用首页时使用

2. 点击超链接发送请求

    <a  href="目标资源的地址(如果在同一个服务器上写uri即可)"> xxxx </a>

3. 点击表单的提交按钮发送请求

    <form action="目标资源的uri" method="post">  .... </form>

四. 关于servlet程序的生命周期

1. 请求响应过程

1)地址栏输入请求地址 — 通过ip 和端口找到tomcat服务器
2) 根据地址的应用名,确定所访问的web应用,同时获取应用的配置文件web.xml
3) 读取配置文件,在配置文件中查找 网名对应的servlet程序 “全类名”
4) 根据全类名获取程序的对象(第一次被请求则创建对象,不是第一次则直接获取之前创建的对象)
​ Class a = Class.forName(" 全类名 ");
​ Object obj = a.newInstance(); — 根据类对象创建 “类的对象 – 实例 ”
5) 使用对象调用service方法
6) service方法运行,将结果(响应)发还给客户端

2. 关于servlet程序的对象创建

1)tomcat默认只会为每个servlet程序创建一个对象(在第一次请求到达时创建) — 应用层面的单例
2 ) servlet程序的四个生命阶段
​ ① 构造阶段 构造方法 1次 第一次请求到达时执行
​ ② 初始化阶段 init方法 1次 构建对象成功后
​ ③ 服务阶段 service方法 n次 每次请求到达后
​ ④ 销毁阶段 destroy方法 1次 服务器关闭时

3)人为干预servelt程序对象的创建和初始化时机 在这里插入图片描述

3. 关于程序对象的线程安全问题

  1. tomcat会为每一个servlet程序创建一个对象,由这个对象为所有请求它的客户端(线程)提供服务,这个对象(临界资源)有可能被多个客户端并发访问 , 需要在代码上保证程序的线程安全。
    2)保证安全的策略
    ​ ① 尽量不要为servlet程序定义 “成员变量”

​ ② 如果使用了成员变量,需要为“敏感代码”(所有操作临界资源数据的代码)加锁

五. Servlet 与 Jdbc 整合

1. 项目开发步骤

1) 搭建环境——引入项目所需要的各种jar包 + 引入工具所需要的配置文件

2)复用代码——JdbcUtil工具类的复用(修改配置文件路径****)

3) 建表,实体,dao,service

4 ) view层程序的开发:servlet程序 + html网页

内容概要:本文主要介绍了一项基于Pytorch框架搭建神经网络的研究【DQN实现避障控制】使用Pytorch框架搭建神经网络,基于DQN算法、优先级采样的DQN算法、DQN + 人工势场实现避障控制研究(Matlab、Python实现)工作,重点实现了DQN算法、优先级采样的DQN算法以及结合人工势场法的DQN算法在避障控制中的应用。研究通过Matlab和Python平台进行仿真与实验,旨在提升智能体在复杂环境中的自主避障能力。文中详细阐述了三种算法的设计思路、网络结构搭建、训练流程及优化策略,并通过对比实验验证了各方法的有效性与性能差异,尤其突出了DQN结合人工势场法在引导智能体快速学习安全路径方面的优势。此外,文档还列举了大量相关的科研方向与技术应用案例,涵盖无人机控制、路径规划、强化学习、电力系统优化等多个领域,展示了广泛的科研服务能力和技术积累。; 适合人群:具备一定Python和深度学习基础,熟悉强化学习基本概念的研究生、科研人员及工程技术人员;对智能控制、机器人避障、无人机路径规划等领域感兴趣的开发者。; 使用场景及目标:① 学习DQN及其改进算法(如优先经验回放)在实际控制系统中的实现方式;② 掌握如何将传统人工势场法与深度强化学习相结合以提升避障性能;③ 借鉴Matlab与Python混合仿真方法,开展智能控制算法的实验验证与对比分析;④ 拓展至无人机、无人车等智能体的自主导航系统设计。; 阅读建议:建议读者结合提供的代码资源,逐步复现实验过程,重点关注神经网络结构设计、奖励函数设定及算法收敛性分析。同时可参考文中列出的其他研究方向,拓展应用场景,提升科研创新能力。
内容【2025最新高维多目标优化】无人机三维路径规划的导航变量的多目标粒子群优化算法NMOPSO研究(Matlab代码实现)概要:本文围绕“2025最新高维多目标优化”主题,重点研究基于城市场景下无人机三维路径规划的导航变量多目标粒子群优化算法NMOPSO,并提供了完整的Matlab代码实现。该研究旨在解决复杂威胁环境下无人机路径规划中的多目标优化问题,兼顾路径安全性、能耗、距离与时效等多个目标,通过改进的粒子群算法实现高效搜索与优化。文中详细阐述了算法设计思路、数学建模过程、适应度函数构建及约束处理机制,并结合三维城市环境进行仿真实验验证其有效性。此外,文档还列举了大量相关科研方向与技术资源,涵盖智能优化算法、路径规划、无人机控制、机器学习、电力系统等多个领域,展示了广泛的科研应用场景和技术支持体系。; 适合人群:具备一定Matlab编程基础,从事无人机路径规划、智能优化算法或自动化控制等领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①研究高维多目标优化算法在无人机三维路径规划中的应用;②掌握多目标粒子群优化算法(MOPSO/NMOPSO)的设计与实现方法;③复现并改进复杂环境下的无人机协同路径规划模型;④拓展至其他智能优化与控制问题的研究与仿真。; 阅读建议:建议读者结合提供的Matlab代码进行实践操作,重点关注算法核心模块的实现细节,如种群初始化、非支配排序、拥挤度计算与动态环境建模。同时可参考文中列出的其他研究案例,拓展技术视野,推动算法在实际科研项目中的迁移与应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值