springmvc在启动工程的时候就访问数据库,加载一些共同的数据

Python 爬虫教程:财经新闻实时抓取(最新资讯 + 关键词提取) 在当今信息爆炸的时代,财经新闻的实时获取对于投资者、研究人员以及普通大众来说都具有重要的价值。通过 Python 爬虫技术,我们可以高效地抓取财经新闻,并提取其中的关键信息,以便更好地进行数据分析和决策支持。本文将详细介绍如何使用 Python 编写一个财经新闻实时抓取系统,并结合关键词提取技术,帮助读者快速掌握 Python 爬虫的核心技能。 阅读详情

解决方案:给web容器添加一个Listener类,在容器启动的时候执行Listener的“初始化”方法,在这个初始化方法中执行查询数据库的所有操作,然后将数据库中的信息缓存起来

问题:上面的方法很好,但问题是如何去查询数据库,由于使用了spring的IOC特性,查询数据库的service控制dao层,dao层访问数据库,而Listener类只是在系统启动(在spring 加载和注入类之前)的时候会执行初始化方法,但是“service”对象没有被spring管理,也就是说没有service对象访问数据库,只能使用jdbc的方式连接,这个很显然不符合MVC开发的特性。那么如何才能在启动web容器的时候利用spring的IOC特性呢?

解决方法:spring给出的解决方案——写一个类,实现InitializingBean接口,然后交由spring容器管理

public class InitDataListener implements InitializingBean, ServletContextAware {
@Resource
private AttriService attriService;
@Override
public void setServletContext(ServletContext arg0) {
List<Attri> attriLst = attriService.getAttriLst();
arg0.setAttribute("attriLst", attriLst);    
}
@Override
public void afterPropertiesSet() throws Exception {
// 在这个方法里面写 初始化的数据也可以。
}
}

   ServletContext也是和session一样像一张表,分为属性、值

      添加属性:setAttribute(String name,Object obj);
      得到值:getAttribute(String name);
      删除属性:removeAttribute(String name); 

      生命周期

      ServletContext中的属性的生命周期从创建开始,到服务器关闭而结束

 

 配置文件里写上这个

<!-- spring系统启动以后,会先加载该类 -->
<bean class="你的包路径.InitDataListener">
</bean>

 

白话机器学习算法理论+实战番外篇之Xgboost 1. 写在前面 如果想从事数据挖掘或者机器学习的工作,掌握常用的机器学习算法是非常有必要的,在这简单的先捋一捋, 常见的机器学习算法: 监督学习算法:逻辑回归,线性回归,决策树,朴素贝叶斯,K近邻,支持向量机,集成算法Adaboost等 无监督算法:聚类,降维,关联规则, PageRank等 我前面已经尝试用最白话的语言完成了一个白话机器学习算法理论+实战系列,这个系列已经基本包含了上面这些算... 阅读详情

相关推荐

嵌入式设备的switch 以及PHY 芯片调试和选型 (1)

越来越的设备需要多网口的需求,于是需求搭配一个交换机实现网口的扩展。但是很多软件或是硬件工程师在实际选型和应用中经常会遇到一些问题。这里总结一下,避免大家采坑。 几个概念: MAC(介质访问控制),可以理解成数据链路层即可 PHY(物理性),简单理解层转成物理层的连接组件即可 控制接口(MDC/DMIO,I2C,...

睿峰的博客 1万+

spring mvc与数据库的前后端的连接操作

springboot是基于maven的基础上管理jar包的,只不过是使用springboot下载jar包只需选中即可,就会自动的在pom.xml文件中配置组件 而Apring

weixin_58276266的博客 1951

大麦网抢票协议逆向分析:从Web安全到高并发风控实战

在当今高并发Web应用场景下,理解网络协议交互与反爬虫机制是后端开发和系统架构设计的核心技能。其基本原理涉及客户端与服务器之间通过HTTP/HTTPS协议进行数据交换,关键环节包括请求参数构造、身份认证与会话管理。这一技术的核心价值在于保障系统安全与公平性,通过动态令牌、签名算法及设备指纹等多重手段,有效抵御自动化脚本攻击。典型应用场景包括票务系统、电商秒杀等需要严格管控资源访问的高并发业务。本文以热门票务平台为例,深入剖析其**请求链与令牌体系**及**行为生物特征分析**等风控策略,通过实战演示协议逆向

weixin_34354173的博客 451

Spring中从数据库中查询数据在启动时注入到bean属性中

Spring依赖注入

qq_45968950的博客 1358

人形机器人专题:人形机器人关节,从Optimus选型看关节的发展

今天分享的是深度研究报告:《(报告出品方:中泰页。

GPT20236688的博客 3224

dreamerv3复现教程

由于dreamerv3存在很多版本冲突问题,所以很难直接使用和复现。

无人机飞啊飞啊飞 2834

SpringMVC——项目启动时从数据库查询数据

SpringMVC项目中遇到这样的问题: 1.很多数据字典需要从数据库中查询; 2.懒得修改SQL语句; 3.想在项目中声明静态变量存储数据字典,但是希望这个字典可以在项目启动时进行加载。 当遇到这样的问题时,可以通过实现org.springframework.beans.factory.InitializingBean接口进行实现这一功能。 只需要实现afterPropertie...

weixin_30797199的博客 638

TOPSIS与熵权法实战:从数学建模到Python实现(附国赛案例分析)

本文详细解析了TOPSIS(逼近理想解排序法)与熵权法在数学建模中的协同应用,并通过Python代码实现完整流程。文章以国赛案例为背景,从指标正向化、数据标准化、熵权法计算客观权重,到TOPSIS综合排序,手把手指导如何解决多指标决策问题,为数据分析与建模提供了一套可复用的实战工具箱。

weixin_29079643的博客 245

在SpringMVC中实现程序启动时加载数据库中内容

因为需要在程序启动时加载相关系统参数,所以百度了很多,现在做个记录。 一、使用servlet(失败) 1、继承HttpServlet类,并在构造方法中处理 public class ViewServlet extends HttpServlet { public ViewServlet() { System.out.println("这是一个测试构造函数Servlet"); } }

u011139317的专栏 3990

Android OTA 更新面试题及参考答案

OTA 更新即空中下载技术(Over-the-Air Technology)更新,是一种通过无线网络对移动设备的系统软件或应用程序进行远程更新的技术手段。其原理是设备通过移动网络或 Wi-Fi 连接到服务器,服务器检测设备上可更新的软件版本,当有新的版本时,将更新包发送到设备上。设备接收后,在后台自动完成更新包的下载、安装等一系列操作,无需用户手动下载完整的系统镜像或应用安装包并通过数据线等方式进行安装。例如,当手机厂商推出新的安卓系统版本或安全补丁时,就会通过 OTA 方式推送给用户。

大模型大数据攻城狮的专栏 1628

游戏客户端开发工程师部分笔试题解析

你可以选择任意连续K个宝石合并成一个新的宝石,新宝石保持在原队列的位置且它的能量值是这K个宝石能量值之和。给定一个幸运值N=0、一堆包含能量值的宝石,你的任务是找到将所有宝石合并成一个宝石的最大幸运值。2.在一个二维网格中,有一个起点S、一个终点E和一个必须经过的中间点M。C++ 的多态性正是通过基类指针或引用调用派生类覆盖的虚函数实现的,这是运行时多态的核心机制。光线追踪带来的抗锯齿效果是其渲染方法的自然结果,而不是一个独立的算法。宝石具体能量值:[10, 7, 2, 6, 5, 11, 8];

博客 3029

SpringMvc 系统启动时加载数据到内存中

在项目启动时加载数据到内存中(我这里是数据字典),以后再代码中就不用每次从数据库去查询了   Dictionary 数据字典实体    package com.wonders.framework.dictionary.entity.po; import javax.persistence.Column; import javax.persistence.Entity; import

爱新觉罗的博客 1万+

R语言机器学习算法实战系列(十一)MLP算法分类器 (Multi-Layer Perceptrons)

本文介绍了多层感知器(MLP)分类算法的原理和计算步骤,并通过R语言实现MLP模型。MLP是一种前馈神经网络,包含输入层、隐藏层和输出层,通过激活函数引入非线性,利用前向传播和反向传播进行训练。文章详细描述了数据预处理、数据切割、模型构建、预测和评估等步骤,并提供了乳腺癌数据集(BreastCancer_clean.csv)的下载链接。通过R包如neuralnet和caret,读者可以逐步实现MLP模型,并评估其分类性能。

专注生信领域 933

springmvc项目启动加载过程

需要了解两个概念: 1、ServletContext :是web项目的上下文,可以理解为整个Web应用的全局变量,项目中所有的方法可以获取ServletContext。 2、ApplicationContext:是spring的BeanFactory的实现类,把spring所有配置加载进去,所依赖的bean创建实例,默认参数等等初始化。 springmvc web项目,web容器启动会主动加载web.xml文件,以下贴出web.xml文件内容。 以Tomcat举例,启动Tomcat之后,首先会加载w

weisian的博客 1985

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

springMVC 启动加载过程

spring启动component-scan类扫描加载过程—源码分析 spring通过DispatcherServlet加载: 系统配置: &lt;servlet&gt; &lt;servlet-name&gt;spring&lt;/servlet-name&gt; &lt;servlet-class&gt;org.springframework.web.servlet.Dis...

kunpeng90的博客 2万+

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

SpringMVC源码分析_1 SpringMVC容器启动和加载原理

SpringMVC源码分析_1 SpringMVC启动和加载原理 1 SpringMVC容器启动和加载原理 ...

田宝宝的博客 5378

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

SpringMVC源码解析(一):web容器启动流程

由上一节可知,web容器初始化工作会调用自定义配置类的onStartup方法为了方便查看,我根据类的关系和类中方法的作用整理成了下面的结构图。

从基础到源码解析的学习记录 4790

Database-doc 数据库文档展示工具

数据库文档展示工具(database doc),又叫数据库注释浏览工具,是一个简单的数据库展示各个字段注释的开源工具。在日常开发工作中,您有否这样的体验?

zhangxin09的专栏 1943

SpringMVC 项目启动的加载顺序(一)父类容器的启动

最近在研究Spring MVC项目的启动加载顺序,做一个具体说明:一、web容器的启动1、web项目启动的时候,容器会优先读取web.xml文件,并且先找到&lt;listener&gt;&lt;/listener&gt;和&lt;context-param&gt;&lt;/context-param&gt;两个节点;2、容器会创建一个ServlextContext上下文,并解析&lt;conte...

西木风落 9772

解决SpringMVC不能访问html页面

1.一般我们在启动项目时,会有一个欢迎页,如下: <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>index.htm</welcome-f...

weixin_43155301的博客 1万+

SpringMVC:SpringMVC的bean加载机制

上述只是通过例子说明可以精确指定让Spring扫描对应的包结构,真正在做开发的时候,因为Dao最终是交给。classes属性:设置排除的具体注解类,当前设置排除@Controller定义的bean。对于上述的配置方式,Spring还提供了一种更简单的配置方式,可以不用再去创建。加载Spring控制的bean的时候排除掉SpringMVC控制的bean。的配置类,再回想前面咱们学习Spring的时候也创建过一个配置类。对象来进行扫描处理的,我们只需要将其扫描到service包即可。

qq_41187116的博客 894

springmvc 加载 慢_web服务刚启动时SpringMVC注解就加载一定的数据库数据进入内存中-Fun言...

来源:https://blog.youkuaiyun.com/xionglangs/article/details/72190252首先确认需要加载一定的数据库数据进入内存中,就必须要连接数据库,刚开始考虑的办法是在监听中添加查询的方法,但真正执行的时候就会报bean不存在,这是因为你的bean还没有注入,也就是报空指针了,因为web.xml的执行顺序是context-param>listener&g...

weixin_34223525的博客 158

java 将数据加载到内存中_springMVC启动时,加载数据至内存中配置详解;

1.配置启动bean2.java类初始化类import org.springframework.beans.factory.annotation.Autowired;import org.springframework.jdbc.core.JdbcTemplate;import com.tsou.comm.cache.impl.SysConfig;import com.tsou.comm.cach...

weixin_42713608的博客 486

SpringMVC的启动流程与原理

做过web项目的都知道页面连接后端程序中间是需要一个连接器来进行连接控制的。拿最常用的web容器tomcat来说,我们用tomcat搭建一个简单的web应用,就是配置好tomcat的web.xml文件,然后将后端应用打成一个war放到tomcatwebapp下就能完成对应web项目的部署。 传统的定义servlet的方式稍显有些繁琐,而且容易出错,随着web应用越来越庞大,web.xml里的内容也越来越多。这时候就有了springMVC的问世,当然struts也属于这一类框架。但是不管是从应用的广泛性还是实

dwj954075281的博客 2763
上一篇: 【推荐】Spring Boot 程序初始化实战: CommandLineRunner 和 ApplicationRunner
下一篇: 【推荐】Spring bean 通过实现 InitializingBean ,DisposableBean 接口实现初始化方法和销毁前操作
大树叶
博客等级 码龄12年 1171粉丝 664原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值