文档章节

Spring+MyBatis将数据库注入到静态属性

RippleChan
 RippleChan
发布于 2017/04/04 00:49
字数 237
阅读 47
收藏 3
点赞 0
评论 0

    说下场景,因为数据量不是很大,200个对象,但使用非常非常频繁,每次数据库读取?不考虑堵塞,从数据库到程序内部,怎么也得耗费20ms左右吧,明显不现实。使用Redis或者其它二级缓存?量上去以后,IO开销依然非常可观。

    考虑数据几乎不变,那么,能不能直接用Java对象缓存?每次使用,直接从Spring的IOC容器获取,岂不美哉,结合我上篇博文,貌似不难实现。

    OK,废话不多说,直接上代码。

    工具类:

    

@Configuration
public class XXXUtils {

    @Resource
    private XXXMapper xxxMapper;

    public static List<XXX> xxxs;

    @PostConstruct
    public void init() {
        xxxs = xxxMapper.getXxxs();
    }

}

    同时,你需要修改Mapper文件

@Repository("xxxMapper")
@Configuration
public interface XXXMapper {

    List<XXX> getXxxs();

}

 

PS:不想泄露代码隐私,所以代码都是简写,可能有细节错误,反正就是这个套路了。

© 著作权归作者所有

共有 人打赏支持
RippleChan
粉丝 46
博文 82
码字总数 23550
作品 0
朝阳
程序员
SpringMVC中定时器继承Task后无法对service注入问题

最近在做一个Spring+MyBatis的一个项目,其中用到了Redis的存储,然后遇到问题是这样的: RedisTask是通过定时器来每分钟像数据库里推送的,于是就有了 然后在定时器的任务中通过对Redis的调...

Pig-man ⋅ 2016/03/21 ⋅ 0

JDBC02 利用JDBC连接数据库【使用数据库连接池】

1 使用Statement执行含有动态信息的SQL语句时有几个不足:   1.1 由于需要将动态数据拼接到SQL语句中,这导致程序复杂度高,容易出错   1.2 拼接的数据若含有SQL语法内容就会导致拼接后的S...

yrgw ⋅ 2017/07/11 ⋅ 0

mybatis 批量插入的两种方式

一、mybiats foreach标签 foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合。foreach元素的属性主要有 item,index,collection,open,separator,close。item表示集合中...

追梦的南瓜 ⋅ 2016/09/03 ⋅ 1

javaservice将jar包制作成windows服务,可以安装,但是无法启动

最近有个需求,就是写个windows服务部署到内网,每天不断的对数据库查询对哪些满足条件的用户发送短信。我使用的是spring+mybatis,使用maven管理jar包。我实现了第一步:将maven项目打成jar...

在我的歌声里 ⋅ 2017/09/08 ⋅ 2

【Spring+Mybatis】Spring整合Mybatis

在《【Mybatis】Helloworld》(点击打开链接)大家看到使用Mybatis需要撰写一个数据库连接与配置的xml文件,而Spring具体整合JDBC的功能,具体见《【Spring】整合JDBC连接数据库》(点击打开...

yongh701 ⋅ 2017/11/17 ⋅ 0

Spring框架学习之高级依赖关系配置(一)

上篇文章我们对Spring做了初步的学习,了解了基本的依赖注入思想、学会简单的配置bean、能够使用Spring容器管理我们的bean实例等。但这还只是相对较浅显的内容,本篇将介绍bean的相关更高级的...

Single_YAM ⋅ 2017/11/04 ⋅ 0

原始方式:spring四种依赖注入方式 |注解方式:Spring零配置通过注解实现Bean依赖注入

原始方式:spring四种依赖注入方式 spring有多种依赖注入的形式,下面仅介绍spring通过xml进行IOC配置的方式: Set注入 这是最简单的注入方式,假设有一个SpringAction,类中需要实例化一个S...

袁梓皓 ⋅ 2016/03/09 ⋅ 0

Spring中bean的配置

IOC其实是从我们平常new一个对象的对立面来说的,我们平常使用的对象一般直接使用关键字类new一个对象,坏处很显然,使用new那么就表示当前模块已经不知不觉和new出的对象耦合了,而我们通常...

大黄有故事 ⋅ 2016/10/18 ⋅ 0

Maven搭建SpringMVC+MyBatis项目笔记总结

1、 数据库表结构以及maven项目结构 数据表非常的简单(不是重点),如下: 创建maven项目,详细见上一篇maven创建(http://blog.csdn.net/fengshizty/article/details/43019561),创建Mav...

风格若干 ⋅ 2016/09/16 ⋅ 0

Maven搭建SpringMVC+Mybatis项目详解

Maven搭建SpringMVC+Mybatis项目详解 前言 搭建Spring+SpringMVC+Mybatis项目。项目持久层使用Mybatis3,控制层使用SpringMVC4.1,使用Spring4.1管理控制器,数据库连接池使用druid数据源,该...

风中帆 ⋅ 2015/07/28 ⋅ 1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

apollo配置中心的学习笔记

公司现在配置文件太多了,导致配置文件修改起来还是非常麻烦的。在boss(业务运营支撑系统)中,配置文件是存放在jar包的,通过应用jar包来引用配置文件(区分不同环境)。这种方式虽然能够满足...

miaojiangmin ⋅ 5分钟前 ⋅ 0

Jena增删改查AP

插入、更新数据 public static void insert(){ String query = "PREFIX book: <http://www.book.com/jinyong/> \n" + " INSERT DATA \n" + ......

Vincent-Duan ⋅ 6分钟前 ⋅ 0

springMVC之与json数据交互方法

因为我也要返回json数据。所以需要这个注解@ResponseBody,把Java对象转换成json字符串 注意: 1、@RequestBody不能省,因为前台发过来的数据是json数据,得用这个注解去解析该怎么接收这些数...

颖伙虫 ⋅ 10分钟前 ⋅ 0

用实例域代替序号(31)

1、许多枚举天生就与一个单独的int 值相关联 ordinal 方法,返回枚举常量在类型中的数字位置 下述,枚举修改很不方便,不好维护 永远不要根据枚举的序数导出与他相关联的值 而是将他保存在一...

职业搬砖20年 ⋅ 11分钟前 ⋅ 0

并发编程---ConcurrentHashMap源码解析

ConcurrentHashMap是java中为了解决HashMap不能支持高并发而设计的新的实现。 ConcurrentHashMap的类结构 public class ConcurrentHashMap<K,V> extends AbstractMap<K,V> implements C......

千古一梦888 ⋅ 14分钟前 ⋅ 0

微服务 WildFly Swarm 简介

我们将看到的最后一个Java微服务框架是一个相对较新的场景,它利用了 JBoss WildFly 应用服务器中已试过且受信任的 JavaEE 功能。WildFly Swarm 是 WildFly 应用服务器的一个完整的拆下来的组...

woshixin ⋅ 19分钟前 ⋅ 0

android apk 瘦身

头条APK瘦身之路 随着版本迭代,功能增加安装包体积也会慢慢增大。 今日头条576版本APK达到了25M,通过一系列的优化,到目前的607版本为12M。本文主要是介绍头条APK瘦身中用到的一些方法。 ...

GoldenVein ⋅ 23分钟前 ⋅ 1

mac机器学习开发环境部署及helloworld

一、下载并安装Anaconda2.7 https://repo.anaconda.com/archive/Anaconda2-5.2.0-MacOSX-x86_64.pkg 路径:/Users/shijun/anaconda2 二、运行Anaconda Navigator -> Environments -> base(ro......

八戒八戒八戒 ⋅ 34分钟前 ⋅ 0

关于日常开发的经验总结(Java),持续更新中

常量尽量使用枚举来表示,这样表现力会很强,因为枚举比一个常量类要有更多的扩展性 方法的入参和出参尽量不要使用Map,因为Map会让调用者感到迷惑,他不知道你里面装的什么,面向对象的开发...

小99 ⋅ 34分钟前 ⋅ 0

IDEA创建SpringMVC+Mybatis+Maven项目

视频如下(加载有点慢请见谅,服务器不太好): 视频

影狼 ⋅ 35分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部