SSH项目在服务器上初始化的过程

  刚接触ssh项目的时候,只知道照着demo写,出现问题了就百度,解决了就沾沾自喜,现在尝试着做一些总结,提升下自己。

  一个简单的ssh项目是怎么在服务器上部署(deploy),服务器又是怎么加载实例化项目代码了?

  项目在Tomcat发布之后,Tomcat会加载这个项目到webapps目录,run,仔细看下Console上的日志发现,Tomcat先检查jar包,然后加载web.xml。

  默认加载顺序为<context-param>---<listener>---<filter>---<servlet>,Tomcat容器创建一个ServletContext(上下文)。web项目所有部分共享这个上下文。容器首先将<context-param>转换为key-value,交给ServletContext,然后创建<listener>实例。

  listener中会有初始化方法,获取ServletContext中的context-param,在ssh中,ContextLoaderListener监听器会加载contextConfigLocation的value(即application.xml的路径),然后Tomat会加载Spring配置文件,初始化配置文件中的bean instances。

  一般项目会用Spring托管hibernate,这样初始化beans的时候,容器就会家加载hibernate.cfg.xml,读取上面的配置信息,一般是和数据库连接,连接池管理,映射文件信息以及hibernate自己配置有关的信息。这样,当应用发布后,用户请求就能和数据库交互了。

  最后接着加载filter,例如struts2的过滤器,最后就是大家最喜欢的Server startup in XXXX ms了。

  

时间: 2024-12-15 12:37:21

SSH项目在服务器上初始化的过程的相关文章

项目添加服务器上数据库正常,添加本地的数据库出现问题(The user specified as a definer (&#39;root&#39;@&#39;%&#39;) does not exist)

1.项目连接服务器上mysql数据库正常,连接本地的数据库出现问题: The user specified as a definer ('root'@'%') does not exist 2. 权限问题,授权 给 root  所有sql 权限 mysql> grant all privileges on *.* to [email protected]"%" identified by "."; Query OK, 0 rows affected (0.00

cwRsyncServer从windows下数据实时同步到linux服务器上的实现过程

由于公司有两台windows服务器,开发在操作时一般也都是在这两台服务器上上传一些数据或修改一些东西,而Linux上的服务器也要跟windows上的数据要保持一致而又不需要人为的实现这个过程,基于此过程,昨天花了点时间,完成了基本的测试实现过程,今天就把这过程给记录下来,方便以后查看,以希望可以帮到还在困惑的朋友们. 第一步:在windows上的安装cwRsyncServer4.1.0以及配置过程: 在windows上下载安装包cwRsyncServer4.rar,这个不多解析,大家都懂,要是在

JavaWeb:SSH项目在Sinaapp上的部署及域名的绑定

1. 首先在SAE中创建一个新应用 创建应用时,需要我们填写二级域名,比如XXXXXX.在"开发语言"一栏中,选择Java,然后选择对应的JVM级别. 2.查看应用信息我们可以在"应用首页"查看当前应用的配置,如下图: 图1 应用的信息 其中,我们一定要注意,这里面的Access Key和Secret Key这两项,访问MySQL的时候,它们分别是用户名和密码 3.管理MySQL在服务管理项,选择MySQL子项,我们可以对MySQL进行管理,最简单的就是使用PHPM

docker部署spring boot项目在服务器上

IDE:idea 工具:docker spring boot:2.0.1 ======================================== 简单记录一下流程,以供参考: 第一步:首先得有一个spring boot的项目[集成了jpa+mybatis的spring boot 例子:https://github.com/AngelSXD/swapping] 第二步:项目打包为jar包 install成功以后 找到项目根目录下的target目录,这里面的jar就是打包好可以部署的jar

web服务器上传文件过程

通过web服务器上传文件,需要提前准备好下面3步,然后才能通过第4步上传文件1.web服务器的配置 1.1 将代码src目录中的select.c文件的170行的REQUEST_TIMEOUT改为10*REQUEST_TIMEOUT 1.2 在buildroot中选中boa后保存编译,然后更新nfs_root中内容: 1.3 重启单板 1.4 配置/etc/boa/boa.conf文件 1.4.1 屏蔽掉Group nobody,增加Group 0 1.4.2 去掉Errorlog前的屏蔽 1.4

发布MVC项目到服务器上时候遇到的 模块 DirectoryListingModule 通知 ExecuteRequestHandler 处理程序 StaticFile 错误代码 0x00000000

应用程序“HMW121197”中的服务器错误错误摘要HTTP 错误 403.14 - ForbiddenWeb 服务器被配置为不列出此目录的内容. 详细错误信息模块 DirectoryListingModule 通知 ExecuteRequestHandler 处理程序 StaticFile 错误代码 0x00000000 最可能的原因:没有为请求的 URL 配置默认文档,并且没有在服务器上启用目录浏览. 可尝试的操作:如果不希望启用目录浏览,请确保配置了默认文档并且该文件存在. 使用 IIS 

Jenkins构建本地项目到服务器上自动部署的方法

最近在用Jenkins做项目的自动部署,由于项目需求,现在要在本地构建后再放到Tomcat里.以下是本地构建步骤: 名称填写好,下面的选项是可选的. 源码管理这里选择none. 触发器这里,我的是在凌晨3点强制构建.可选. 这里是最重要的一步:选择Execute shell选项.可以使Jenkins执行一些shell命令. 点击之后会出现这个界面,在Command输入框里输入要执行的shell命令. 我指向的是/home/data/crm这个目录下,然后让其执行mvn打包指令. 在Build里输

jenkins项目在服务器上的路径问题

使用jenkins遇到一些文件路径问题: jenkins中说Wordspace中的文件路径是: 那么如果按这个路径取查找 var下是没有jenkins_home的 真正的workspace在这里 上面jenkins中指示的路径中 jenkins_home应该是环境变量 原文地址:https://www.cnblogs.com/XT-xutao/p/12335220.html

用screen让自己的项目在服务器上保持运行

安装: sudo apt-get install screen 使用: 1.执行如下命令,创建screen窗口. screen -S [$Name] 注:[$Name]用来标注screen窗口用途. 2.执行如下命令,列出screen窗口. screen -ls 3.当需要运行脚本.执行程序时,在命令前添加screen即可. 4.若需要继续工作时,登录实例,然后执行如下命令,恢复会话即可. screen -r -d PID 参考: https://help.aliyun.com/knowledg