- Mybatis的核心组件是什么?
传智教育
数据库javasql
MyBatis是一个基于Java的持久层框架,所谓的持久层框架就是专门用来将数据进行持久化的框架,也就是说将数据存储到数据库中的框架。学习并掌握Mybatis,首先就要了解Mybatis的核心组件。下面,我们一起来了解一下Mybatis四大核心组件:SqlSessionFactoryBuilderSqlSessionFactorySqlSessionSQLMapper01SqlSessionFac
- 微服务架构详解
一头狒狒
java微服务架构java
一、微服务架构的由来在微服务架构出现之前,最常用的架构就是单体架构,俗称"一个jar(war)包打天下"。在一个jar包工程中,采用MVC架构,分为表现层,业务层,数据访问层,所有的业务模块,都放在这个工程中集成,如下图所示:随着软件行业规模的增长,这种单体架构的弊端也越来越多,包括:耦合性高,某个地方出问题,很可能影响其他业务模块的使用代码管理成本高,项目沉重,并会随着需求的增加越来越重随着访问
- PHP与出库单打印预览,包含下载与打印功能
assasinSteven
PHP框架PHP打印预览
咱们的开发语言还是用框架:laravel5。应用场景出库单打印出三色单,这个很普遍,以下用PHP来实现出库单的打印预览,主要用到tcpdf插件,整合到laravel项目中。tcpdf插件可以到官网下载最新的版本。我这里用的是最新版本,这里提供下载插件链接:链接:https://pan.baidu.com/s/1Mn8ho_AxyJfWR7YUa0wzhQ提取码:9doa三色单截图:插件截图:开发功
- Python 常用的第三方库
akenseren
python
作者:VictorZhang链接:https://www.zhihu.com/question/20501628/answer/126155557来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。数学计算三件套:numpy简单介绍:只要涉及到数值计算,基本上三件套都会用上链接:NumPy—NumPyscipy简单介绍:只要涉及到数值计算,基本上三件套都会用上链接:Sci
- java8 四大函数式接口 和 用于数据处理的 stream流 使用详解
不如敲代码
Javajavalambdastream函数式编程
文章目录Stream使用示例四大函数式接口Function功能型接口Consumer消费型接口Supplier提供型接口Predicate断言型接口常用apistream,parallelStream获取流式对象filter过滤sorted排序map映射,转换peek遍历执行某个操作reduce聚合,将数据流聚合成一个对象collect可变聚合,可以聚合成一个集合在之前一篇博客里面介绍了java8
- PHP常用的几种算法
每天瞎忙的农民工
phpphp算法算法php
PHP常用的算法涵盖了多种场景,包括排序、加密、搜索、数据结构、字符串处理等。在实际开发中,根据业务需求,会选择合适的算法来优化性能和解决问题。以下是几种常见的PHP算法:1.排序算法排序算法用于将数据按一定的顺序排列。PHP内置了很多排序函数,例如sort()、rsort()、usort()等,但以下是几种常见的排序算法的手动实现:(1)冒泡排序冒泡排序是一种简单的排序算法,通过重复地交换相邻的
- Tomcat与JDK版本对应关系,Tomcat各版本特性
2401_84048671
程序员javatomcat开发语言
ApacheTomcat8.xApacheTomcat7.xApacheTomcat6.xApacheTomcat是一个开源软件实现了JavaServlet和JavaServerPages技术。不同版本的Servlet和JSP规范可使用不同版本的ApacheTomcat。Tomcat与JDK版本对应关系为:|Servlet规格|JSP规范|EL规格|WebSocket规范|JASPIC规格|Apa
- GO怎么给手机发短信对接验证码短信接口DEMO示例
樱桃桃
发现一个超简单验证码短信接口对接DEMO示例步骤1.注册互亿无线账号2.查找APIID和APIKEY3.代码的书写注册互亿无线账号网站:http://user.ihuyi.com/?JA9Ewr查找APIID和APIKEY注意事项:(1)调试期间,请使用用系统默认的短信内容:您的验证码是:【变量】。请不要把验证码泄露给其他人。packagemainimport("crypto/md5""encod
- 转码日记——Javascript笔记(8)
zzcoding_
转码日记数据结构javascript前端开发语言
数组(Array)数组也是一个对象,和普通对象功能类似。普通对象使用字符串作为属性名,而数组使用数字来作为索引操作。索引:从0开始的整数。数组的存储效率比较高,对属性名没有要求的时候可以使用。基本应用//创建数组对象vararr=newArray();//向数组中添加对象//语法:数组[索引]=值;arr[0]=10;arr[1]=33;//如果读取不存在的索引则返回undefined//获取数组
- c#视觉应用开发中如何使用Emgu CV在C#中进行图像处理?
openwin_top
C#视觉应用开发问题系列c#图像处理开发语言
microPythonPython最小内核源码解析NI-motion运动控制c语言示例代码解析python编程示例系列python编程示例系列二python的Web神器Streamlit如何应聘高薪职位EmguCV是OpenCV的.NET包装器,可以让开发者在.NET语言(如C#)中使用OpenCV的功能进行图像处理。在进行图像处理时,EmguCV提供了丰富的API可以使用。以下是使用EmguCV
- Percona-toolkit工具详解
小一_d28d
1.pt工具安装[root@master~]#yuminstall-ypercona-toolkit-3.1.0-2.el7.x86_64.rpm2.常用工具使用介绍2.1pt-archiver归档表#重要参数--limit100每次取100行数据用pt-archive处理--txn-size100设置100行为一个事务提交一次,--where'id>/root/db/checksum.logpt
- cesium入门-基础知识01
标准形与二次型
cesium3D可视化
cesium入门-基础知识01前言:工作关系开始接触cesium,简单记录一下帮助自己理清思路。1.资料CesiumAPI英文官方文档:https://cesium.com/learn/cesiumjs/ref-doc/CesiumAPI中文文档http://cesium.xin/cesium/cn/Documentation1.62/Cesium源码https://github.com/Cesi
- Java Web安全与Spring Config对象实战
福建低调
本文还有配套的精品资源,点击获取简介:本课程深入探讨JavaWeb开发中的安全实践,包括认证与授权、输入验证、CSRF和XSS防护以及SQL注入防御等关键安全措施。同时,介绍SpringSecurity框架的应用,以及Config对象在Spring配置管理中的作用,包括依赖注入和外部化配置。课程还包括实战演练,通过设置安全环境和安全漏洞模拟,帮助开发者提升应用的安全性和故障排查能力。1.Web安全
- python-anaconda虚拟环境
淋巴不想动
linuxpython虚拟环境
为什么使用Anaconda?Python易用,但用好却不易,其中比较头疼的就是包管理和Python不同版本的问题,特别是当你使用Windows的时候。为了解决这些问题,有不少发行版的Python,比如WinPython、Anaconda等,这些发行版将python和许多常用的package打包,方便pythoners直接使用,此外,还有virtualenv、pyenv等工具管理虚拟环境。常见的问题
- java parser乱码_HtmlParser 2.0 中文乱码问题
福建低调
javaparser乱码
对于HTMLParser2.0工具包我们需要修改其中的Page.java文件使其适用中文的html文件分析。主要是把protectedstaticfinalStringDEFAULT_CHARSET="ISO-8859-1";修改成protectedstaticfinalStringDEFAULT_CHARSET="gb2312";主要是兼容charset='GBK'声明的页面。--因为采用默认的
- python中selenium中使用ajax_使用selenium和python捕获AJAX响应
weixin_39946534
我曾经截获了一些使用selenium向页面注入javascript的ajax调用.历史的不好的一面是,硒有时可能是,说“脆弱”.因此,无论如何我在进行注射时都会遇到硒异常.无论如何,我的想法是拦截XHR调用,并将其响应设置为我创建的一个新的dom元素,我可以从selenium操作.在拦截的条件下,你甚至可以使用发出请求的url来拦截你真正想要的那个(self._url)也许这有帮助.browser
- 淘宝海量数据库OceanBase:系统架构详解
weixin_34356555
数据库系统架构大数据
无论从数据量还是访问量,OceanBase不再能够是一个单机系统,即使一台单机能服务高达几个TB的数据、提供几万QPS的服务能力,因此,分布式系统不可避免,然而,内部如何实现拆表(拆库)以及如何实现数据库的事务,成为了一个很大的挑战和十分艰难的抉择:相关文章:淘宝海量数据库之一:来自业务的挑战淘宝海量数据库之二:一致性选择淘宝海量数据库之三:事务的ACID一种选择是当前数据库的常用的水平拆库,淘宝
- 两个byte数组拼接_java中两个byte数组实现合并的示例
甄公子
两个byte数组拼接
今天在于硬件进行交互的过程中,要到了了需要两个数组进行合并,然后对数组进行反转和加密操作,以下是两个byte数组合并的方法。/****@paramdata1*@paramdata2*@returndata1与data2拼接的结果*/publicstaticbyte[]addBytes(byte[]data1,byte[]data2){byte[]data3=newbyte[data1.length
- 即学即用的30个python常用代码
落难Coder
Pythonpython
1.检查重复元素下面的方法可以检查给定列表中是否有重复的元素。它使用了set()属性,该属性将会从列表中删除重复的元素。defall_unique(lst):returnlen(lst)==len(set(lst))x=[1,1,2,2,3,2,3,4,5,6]y=[1,2,3,4,5]all_unique(x)#Falseall_unique(y)#True2.变位词检测两个字符串是否互为变位词
- ONNXRuntime与CUDA版本对应
zy_destiny
部署YOLOonnxruntimeonnX部署cudapython
onnxruntime-gpu版本可以说是一个非常简单易用的框架,因为通常用pytorch训练的模型,在部署时,会首先转换成onnx,而onnxruntime和onnx又是有着同一个爸爸,无疑,在op的支持上肯定是最好的。通常在安装onnxruntime时,需要将其版本与pytorch版本和CUDA版本进行对应,其中ONNXRuntime与CUDA版本对应关系表如下表所示。ONNXRuntimeC
- 常用命令
九妄_b2a1
Linux是多用户多任务的操作系统在linux所有的一切都是文件(包括文件夹)init0关机init6重启/斜杠\反斜杠-横杠_下划线lsls查看当前目录ls-a查看隐藏文件ls-L具体信息列表形式ls-h跟L参数引用ls-lh把大小转成具体的数值ls*.txt就只查出为txt格式的文件(通配符过滤的作用)ls1.*就只查出为1开头的文件ls[157]包括里面的任意字符ls?.txt查出一个字符的
- 项目实战系列三: 家居购项目 第五部分
~ 小团子
#家居购项目python开发语言
显示订单[订单管理]暂时缺货需求分析1.如果某家居库存为0,首页的"AddtoCart"按钮显示为"暂时缺货"2.后台也加上校验.只有在库存>0时,才能添加到购物车代码实现1.修改web/views/customer/index.jspAddToCart[缺货]0}">AddToCart2.修改src/com/zzw/furns/web/CartServlet.java,当添加购物车时,要保证商品
- 版本控制的核心:Git中的哈希与默克尔树解析
liuwill
开发技术git源代码管理
Git是最常用的代码版本控制工具。它帮助我们跟踪代码的更改、管理代码版本,同时保证代码库的完整性和安全性。我们知道Git中有一些基本的操作,比如commit、merge、rebase等,但这些操作的底层机制是如何实现的呢?哈希函数和默克尔树扮演了非常重要的角色。本文将探讨Git中哈希和默克尔树的机制及其实际应用。什么是哈希函数?哈希函数是一种将输入数据转换为固定长度的输出(通常为字符串)的算法。G
- (代码可运行)Bootstrap框架的HTML示例
程序员大侠
前端CSShtmlbootstrap前端
Bootstrap:一套流行的前端开发框架,基于HTML、CSS和JavaScript,适用于快速构建响应式Web应用。以下是一个使用Bootstrap构建的简单响应式Web应用的HTML示例:BootstrapExampleHello,Bootstrap!CardtitleSomequickexampletexttobuildonthecardtitleandmakeupthebulkofthe
- 【Java】已解决:org.springframework.transaction.TransactionTimedOutException
屿小夏
java数据库开发语言
文章目录一、分析问题背景场景描述二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项已解决:org.springframework.transaction.TransactionTimedOutException一、分析问题背景在Spring框架中,TransactionTimedOutException是一种常见的事务超时异常。通常,这种异常发生在数据库操作时间超过了预设的事务超时时间
- 【Java】已解决:java.time.DateTimeException
屿小夏
javaandroid开发语言
文章目录一、分析问题背景场景示例:场景代码:二、可能出错的原因三、错误代码示例错误分析:四、正确代码示例改进后的代码示例:代码改进说明:五、注意事项在Java8引入的新日期时间API中,java.time.DateTimeException是一个常见的异常类型。它通常发生在处理日期和时间操作时,可能是由于无效的日期格式、时间超出范围或其他数据问题导致的。本文将详细探讨这一异常的背景、原因,提供错误
- log4j2 与 log4j使用时的几点小区别 - log4j2上手说明
CoderCodingNo
Java学习log4j单元测试
虽然log4j2目前还是beta版,不过OneCoder已经忍不住要尝试一下。跟使用log4j比起来,上手上主要的区别有。1、依赖的jar包。使用slf4j+log4j2时,依赖的jar包如下:(gradle配置,Maven对照修改即可)dependencies{compile("org.apache.logging.log4j:log4j-api:$log4j_version","org.apa
- 2020 年 Github 上最牛的 Java 进阶教程及 Java 实战项目都在这里了!
C陈三岁
javajavagithub开发语言面试架构
写在前面大家都知道Github是一个程序员福地,这里有各种厉害的开源框架、软件或者教程。这些东西对于我们学习和进步有着莫大的进步,所以我有了这个将Github上非常棒的Java开源项目整理下来的想法。觉得不错的话,欢迎小伙伴们去star一波。很多小伙伴都不知道学习什么开源项目,这篇文章定能为你解决疑惑。不论你想要看Java教程方向的开源项目、Java实战项目、SpringBoot教程还是说想要看微
- log4j日志封装说明—slf4j对于log4j的日志封装-正确获取调用堆栈
CoderCodingNo
Java学习log4j
日志是项目中必用的东西,日志产品里最普及应该就是log4j了。(logback这里暂不讨论。)先看一下常用的log4j的用法,一般来说log4j都会配合slf4j或者common-logging使用,这里已slf4j为例。添加gradle依赖:dependencies{compile('log4j:log4j:1.2.17','org.slf4j:slf4j-api:1.7.5','org.slf
- 算法知识点————【LRU算法】
shan_shmily
算法
思想:淘汰最久没有使用的应用场景:手机清后台的时候先清最久没有使用的应用设计一种数据结构:接收一个capacity参数作为缓存的最大容量,然后实现两个API,一个是put(key,val)方法存入键值对,另一个是get(key)方法获取key对应的val,如果key不存在则返回-1。要求:get和put方法必须都是O(1)的时间复杂度。哈希链表:哈希的查找配合双向链表的快速插入和删除classNo
- ios内付费
374016526
ios内付费
近年来写了很多IOS的程序,内付费也用到不少,使用IOS的内付费实现起来比较麻烦,这里我写了一个简单的内付费包,希望对大家有帮助。
具体使用如下:
这里的sender其实就是调用者,这里主要是为了回调使用。
[KuroStoreApi kuroStoreProductId:@"产品ID" storeSender:self storeFinishCallBa
- 20 款优秀的 Linux 终端仿真器
brotherlamp
linuxlinux视频linux资料linux自学linux教程
终端仿真器是一款用其它显示架构重现可视终端的计算机程序。换句话说就是终端仿真器能使哑终端看似像一台连接上了服务器的客户机。终端仿真器允许最终用户用文本用户界面和命令行来访问控制台和应用程序。(LCTT 译注:终端仿真器原意指对大型机-哑终端方式的模拟,不过在当今的 Linux 环境中,常指通过远程或本地方式连接的伪终端,俗称“终端”。)
你能从开源世界中找到大量的终端仿真器,它们
- Solr Deep Paging(solr 深分页)
eksliang
solr深分页solr分页性能问题
转载请出自出处:http://eksliang.iteye.com/blog/2148370
作者:eksliang(ickes) blg:http://eksliang.iteye.com/ 概述
长期以来,我们一直有一个深分页问题。如果直接跳到很靠后的页数,查询速度会比较慢。这是因为Solr的需要为查询从开始遍历所有数据。直到Solr的4.7这个问题一直没有一个很好的解决方案。直到solr
- 数据库面试题
18289753290
面试题 数据库
1.union ,union all
网络搜索出的最佳答案:
union和union all的区别是,union会自动压缩多个结果集合中的重复结果,而union all则将所有的结果全部显示出来,不管是不是重复。
Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
Union All:对两个结果集进行并集操作,包括重复行,不进行排序;
2.索引有哪些分类?作用是
- Android TV屏幕适配
酷的飞上天空
android
先说下现在市面上TV分辨率的大概情况
两种分辨率为主
1.720标清,分辨率为1280x720.
屏幕尺寸以32寸为主,部分电视为42寸
2.1080p全高清,分辨率为1920x1080
屏幕尺寸以42寸为主,此分辨率电视屏幕从32寸到50寸都有
适配遇到问题,已1080p尺寸为例:
分辨率固定不变,屏幕尺寸变化较大。
如:效果图尺寸为1920x1080,如果使用d
- Timer定时器与ActionListener联合应用
永夜-极光
java
功能:在控制台每秒输出一次
代码:
package Main;
import javax.swing.Timer;
import java.awt.event.*;
public class T {
private static int count = 0;
public static void main(String[] args){
- Ubuntu14.04系统Tab键不能自动补全问题解决
随便小屋
Ubuntu 14.04
Unbuntu 14.4安装之后就在终端中使用Tab键不能自动补全,解决办法如下:
1、利用vi编辑器打开/etc/bash.bashrc文件(需要root权限)
sudo vi /etc/bash.bashrc
接下来会提示输入密码
2、找到文件中的下列代码
#enable bash completion in interactive shells
#if
- 学会人际关系三招 轻松走职场
aijuans
职场
要想成功,仅有专业能力是不够的,处理好与老板、同事及下属的人际关系也是门大学问。如何才能在职场如鱼得水、游刃有余呢?在此,教您简单实用的三个窍门。
第一,多汇报
最近,管理学又提出了一个新名词“追随力”。它告诉我们,做下属最关键的就是要多请示汇报,让上司随时了解你的工作进度,有了新想法也要及时建议。不知不觉,你就有了“追随力”,上司会越来越了解和信任你。
第二,勤沟通
团队的力
- 《O2O:移动互联网时代的商业革命》读书笔记
aoyouzi
读书笔记
移动互联网的未来:碎片化内容+碎片化渠道=各式精准、互动的新型社会化营销。
O2O:Online to OffLine 线上线下活动
O2O就是在移动互联网时代,生活消费领域通过线上和线下互动的一种新型商业模式。
手机二维码本质:O2O商务行为从线下现实世界到线上虚拟世界的入口。
线上虚拟世界创造的本意是打破信息鸿沟,让不同地域、不同需求的人
- js实现图片随鼠标滚动的效果
百合不是茶
JavaScript滚动属性的获取图片滚动属性获取页面加载
1,获取样式属性值
top 与顶部的距离
left 与左边的距离
right 与右边的距离
bottom 与下边的距离
zIndex 层叠层次
例子:获取左边的宽度,当css写在body标签中时
<div id="adver" style="position:absolute;top:50px;left:1000p
- ajax同步异步参数async
bijian1013
jqueryAjaxasync
开发项目开发过程中,需要将ajax的返回值赋到全局变量中,然后在该页面其他地方引用,因为ajax异步的原因一直无法成功,需将async:false,使其变成同步的。
格式:
$.ajax({ type: 'POST', ur
- Webx3框架(1)
Bill_chen
eclipsespringmaven框架ibatis
Webx是淘宝开发的一套Web开发框架,Webx3是其第三个升级版本;采用Eclipse的开发环境,现在支持java开发;
采用turbine原型的MVC框架,扩展了Spring容器,利用Maven进行项目的构建管理,灵活的ibatis持久层支持,总的来说,还是一套很不错的Web框架。
Webx3遵循turbine风格,velocity的模板被分为layout/screen/control三部
- 【MongoDB学习笔记五】MongoDB概述
bit1129
mongodb
MongoDB是面向文档的NoSQL数据库,尽量业界还对MongoDB存在一些质疑的声音,比如性能尤其是查询性能、数据一致性的支持没有想象的那么好,但是MongoDB用户群确实已经够多。MongoDB的亮点不在于它的性能,而是它处理非结构化数据的能力以及内置对分布式的支持(复制、分片达到的高可用、高可伸缩),同时它提供的近似于SQL的查询能力,也是在做NoSQL技术选型时,考虑的一个重要因素。Mo
- spring/hibernate/struts2常见异常总结
白糖_
Hibernate
Spring
①ClassNotFoundException: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
缺少aspectjweaver.jar,该jar包常用于spring aop中
②java.lang.ClassNotFoundException: org.sprin
- jquery easyui表单重置(reset)扩展思路
bozch
formjquery easyuireset
在jquery easyui表单中 尚未提供表单重置的功能,这就需要自己对其进行扩展。
扩展的时候要考虑的控件有:
combo,combobox,combogrid,combotree,datebox,datetimebox
需要对其添加reset方法,reset方法就是把初始化的值赋值给当前的组件,这就需要在组件的初始化时将值保存下来。
在所有的reset方法添加完毕之后,就需要对fo
- 编程之美-烙饼排序
bylijinnan
编程之美
package beautyOfCoding;
import java.util.Arrays;
/*
*《编程之美》的思路是:搜索+剪枝。有点像是写下棋程序:当前情况下,把所有可能的下一步都做一遍;在这每一遍操作里面,计算出如果按这一步走的话,能不能赢(得出最优结果)。
*《编程之美》上代码有很多错误,且每个变量的含义令人费解。因此我按我的理解写了以下代码:
*/
- Struts1.X 源码分析之ActionForm赋值原理
chenbowen00
struts
struts1在处理请求参数之前,首先会根据配置文件action节点的name属性创建对应的ActionForm。如果配置了name属性,却找不到对应的ActionForm类也不会报错,只是不会处理本次请求的请求参数。
如果找到了对应的ActionForm类,则先判断是否已经存在ActionForm的实例,如果不存在则创建实例,并将其存放在对应的作用域中。作用域由配置文件action节点的s
- [空天防御与经济]在获得充足的外部资源之前,太空投资需有限度
comsci
资源
这里有一个常识性的问题:
地球的资源,人类的资金是有限的,而太空是无限的.....
就算全人类联合起来,要在太空中修建大型空间站,也不一定能够成功,因为资源和资金,技术有客观的限制....
&
- ORACLE临时表—ON COMMIT PRESERVE ROWS
daizj
oracle临时表
ORACLE临时表 转
临时表:像普通表一样,有结构,但是对数据的管理上不一样,临时表存储事务或会话的中间结果集,临时表中保存的数据只对当前
会话可见,所有会话都看不到其他会话的数据,即使其他会话提交了,也看不到。临时表不存在并发行为,因为他们对于当前会话都是独立的。
创建临时表时,ORACLE只创建了表的结构(在数据字典中定义),并没有初始化内存空间,当某一会话使用临时表时,ORALCE会
- 基于Nginx XSendfile+SpringMVC进行文件下载
denger
应用服务器Webnginx网络应用lighttpd
在平常我们实现文件下载通常是通过普通 read-write方式,如下代码所示。
@RequestMapping("/courseware/{id}")
public void download(@PathVariable("id") String courseID, HttpServletResp
- scanf接受char类型的字符
dcj3sjt126com
c
/*
2013年3月11日22:35:54
目的:学习char只接受一个字符
*/
# include <stdio.h>
int main(void)
{
int i;
char ch;
scanf("%d", &i);
printf("i = %d\n", i);
scanf("%
- 学编程的价值
dcj3sjt126com
编程
发一个人会编程, 想想以后可以教儿女, 是多么美好的事啊, 不管儿女将来从事什么样的职业, 教一教, 对他思维的开拓大有帮助
像这位朋友学习:
http://blog.sina.com.cn/s/articlelist_2584320772_0_1.html
VirtualGS教程 (By @林泰前): 几十年的老程序员,资深的
- 二维数组(矩阵)对角线输出
飞天奔月
二维数组
今天在BBS里面看到这样的面试题目,
1,二维数组(N*N),沿对角线方向,从右上角打印到左下角如N=4: 4*4二维数组
{ 1 2 3 4 }
{ 5 6 7 8 }
{ 9 10 11 12 }
{13 14 15 16 }
打印顺序
4
3 8
2 7 12
1 6 11 16
5 10 15
9 14
13
要
- Ehcache(08)——可阻塞的Cache——BlockingCache
234390216
并发ehcacheBlockingCache阻塞
可阻塞的Cache—BlockingCache
在上一节我们提到了显示使用Ehcache锁的问题,其实我们还可以隐式的来使用Ehcache的锁,那就是通过BlockingCache。BlockingCache是Ehcache的一个封装类,可以让我们对Ehcache进行并发操作。其内部的锁机制是使用的net.
- mysqldiff对数据库间进行差异比较
jackyrong
mysqld
mysqldiff该工具是官方mysql-utilities工具集的一个脚本,可以用来对比不同数据库之间的表结构,或者同个数据库间的表结构
如果在windows下,直接下载mysql-utilities安装就可以了,然后运行后,会跑到命令行下:
1) 基本用法
mysqldiff --server1=admin:12345
- spring data jpa 方法中可用的关键字
lawrence.li
javaspring
spring data jpa 支持以方法名进行查询/删除/统计。
查询的关键字为find
删除的关键字为delete/remove (>=1.7.x)
统计的关键字为count (>=1.7.x)
修改需要使用@Modifying注解
@Modifying
@Query("update User u set u.firstna
- Spring的ModelAndView类
nicegege
spring
项目中controller的方法跳转的到ModelAndView类,一直很好奇spring怎么实现的?
/*
* Copyright 2002-2010 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* yo
- 搭建 CentOS 6 服务器(13) - rsync、Amanda
rensanning
centos
(一)rsync
Server端
# yum install rsync
# vi /etc/xinetd.d/rsync
service rsync
{
disable = no
flags = IPv6
socket_type = stream
wait
- Learn Nodejs 02
toknowme
nodejs
(1)npm是什么
npm is the package manager for node
官方网站:https://www.npmjs.com/
npm上有很多优秀的nodejs包,来解决常见的一些问题,比如用node-mysql,就可以方便通过nodejs链接到mysql,进行数据库的操作
在开发过程往往会需要用到其他的包,使用npm就可以下载这些包来供程序调用
&nb
- Spring MVC 拦截器
xp9802
spring mvc
Controller层的拦截器继承于HandlerInterceptorAdapter
HandlerInterceptorAdapter.java 1 public abstract class HandlerInterceptorAdapter implements HandlerIntercep