在项目启动时,需要做一些项目启动后的预操作,比如初始化数据进缓存等等. 这时就需要写listener,等监听.在项目启动时把数据缓存进mongodb. 但是这会有一个问题.项目一般都是把各种bean交给spring管理生命周期.如果在监听里面使用 这种方式获取bean的话,报错空指针异常!因为在 public void contextInitialized(ServletContextEvent arg0) 方法里,spring还没有把bean都初始化完成.如果调用就会找不到bean 使用以下方…
目录 基于abp框架的数据库种子数据初始化 1.背景 2.参照 3.解决方案 3.1 初始化数据 3.2 依赖注入方法容器里获取数据库上下文 3.3 封装创建初始化数据列表方法 3.4 数据库中没有的初始化数据,补充到数据库中去 4.效果 5.小结 基于abp框架的数据库种子数据初始化 1.背景 最近在用abp开发项目,需要将如下区域数据通过程序的初次运行种入数据库. 不知道大家是怎么去管理数据库跟后台程序的同步的,基于Git的数据库sql文件的管理--完美解决团队sql操作协同问题,此文是我以…
JPA缓存(JPA Caching) JPA有两种类型的缓存: EntityManager自身就是一种缓存.事务中从数据库获取的和写入到数据库的数据会被缓存(什么样的数据会被缓存.在后面有介绍).在一个程序中或许会有非常多个不同的EntityManager实例.每个实例执行着不同的事务,拥有着它们自己的缓存. 当EntityManager提交一个事务后,它缓存的全部数据就会被合并到一个全局的缓存中. 全部的EntityManager都可以訪问这个全局的缓存. 全局缓存被称为二级缓存(Level…
最近公司要做功能迁移,原来的后台使用的Netty,现在要迁移到在uap上,也就是说所有后台的代码不能通过netty写的加载顺序加载了. 问题就来了,怎样让迁移到tomcat的代码按照原来的加载顺序进行加载(例如顺序:1.初始化spring容器,2.初始化线程池,3.加载业务代码,将数据库中数据加载到内存中).我个人首先想到的是在tomcat中加监听,tomcat启动时先加载监听中的方法.方法中的加载顺序也就是按照我拟定的顺序进行. 然后我查了一些资料,发现了两种解决方案: 1.通过tomcat的…
上篇博客论述了,数据库查询数据返回前台JSP.博客中主要使用Ajax调用来显示JSON串,来获取其中某一个字段,赋给界面中的某一个控件. 那这篇博客中,我们讲解,把后台List传递JSP展示. List传递界面,以前我们普通的做法是怎么样的呢?foreach 的el表达式?还是java代码? 那对于本身就是Json格式的list,到底如何显示呢? 显然表单中的el表单以及java代码不合适.那我们继续使用Ajax来显示. 一:对于不使用前台框架的情况:就是咱们普通的table,到底如何以表格的形…
大致花了一个月时间,利用各种空闲时间,将这个客户端实现了,在这里主要是想记录下,设计的大体思路以及实现过程中遇到的坑...... 这个项目的github地址:https://github.com/wzpziyi1/GroupPurchase 主要实现的功能,用UICollectionViewController展示团购数据,根据拼音进行检索并展示数据,离线缓存团购数据,浏览记录与收藏记录的批量删除,友盟分享的集成,利用UIView+AutoLayout写布局,实现地图定位.自定义大头针等 整个项…
网站整体架构建议采用工厂模式 分别包括:数据访问层DAL,数据访问接口层IDAL,工厂层DALFactory,业务逻辑层,显示层这样的架构方式 在WebConfig配置采用何种数据库的数据访问层 <appSettings> <add key="DAL" value="SQLServerDAL"/><!--数据访问层--> </appSettings> 定义接口层 public interface ILocal_Topi…
use master go select * from sys.dm_os_buffer_descriptors go --查看数据库在数据缓存(data cache)中占用的空间大小 --由于每个数据页对应动态管理视图(dynamic management view,DMV)中的一行,为128 字节,为1/8个千字节(KB) --1字节(Byte)=8位(Bit) --1千字节(KB)=1024字节(Byte) --1兆(MB)=1024千字节(KB) as 'Cached Size(MB)'…
MySQL数据库中每个表占用的空间.表记录的行数的话,可以打开MySQL的 information_schema 数据库.在该库中有一个 TABLES 表,这个表主要字段分别是: TABLE_SCHEMA : 数据库名 TABLE_NAME:表名 ENGINE:所使用的存储引擎 TABLES_ROWS:记录数 DATA_LENGTH:数据大小 INDEX_LENGTH:索引大小 一个表占用空间的大小,相当于是 数据大小 + 索引大小,示例: 1.查看enrolment_db库的所有表大小: se…
1.app.js /** * nodejs 操作mongodb数据库 * 1.安装 操作mongodb * cnpm install mongodb --save * 2.引入 mongodb 下面的 MongoClient * var MongoClient = require('mongodb').MongoClient; * 3.定义数据库连接的地址 以及配置数据库 * koa 数据库的名称 * var url = 'mongodb://localhost:27017/'; * var d…