参考博客:https://blog.csdn.net/lalioCAT/article/details/51803461 如果在接口上@Mapper,然后再在 xml中的namespace指向mapper,那么spring就能动态生成一个Mapper的bean,然后你在serviceImpl中的 @Autowired pravate XXXMapper xxmapper; 就会被这个bean注进去. 如果在DaoImpl中加了@Repository,那么在spring的扫包机制下,也会生成这个d…
asp.net core 内置DI容器的一点小理解   DI容器本质上是一个工厂,负责提供向它请求的类型的实例. .net core内置了一个轻量级的DI容器,方便开发人员面向接口编程和依赖倒置(IOC). 具体体现为Micorosoft.Extensions.DependencyInjection这个包. .net core中内置的DI容器包含两大要素:ServiceCollection和ServiceProvider. 为了便于理解,我画了一张图: 通过上面的UML类图可以看出Service…
首先声明这是个人的一点理解,如有不对之处请指正,以下的例子有在官网上看到的,有的是自己写的.还是老规矩最后会附上官网的,如有不明白之处,请查看文档或留言. 既然说Layui,当然要简单的介绍以下什么是layui啊!下面是官方的解释: Layui 是一款采用自身模块规范编写的国产前端UI框架,遵循原生HTML/CSS/JS的书写与组织形式,门槛极低,拿来即用.其外在极简,却又不失饱满的内在,体积轻盈,组件丰盈,从核心代码到API的每一处细节都经过精心雕琢,非常适合界面的快速开发.layui还很年轻…
今天是星期一,上次说的两个需求,解决了一个.在原来的页面增加了一个可以勾选的单选框用于完成,勾选对应的条件来渲染对应的页面,使用了简单的单选框radio_button来实现单选的提交,使用条件判断语句来实现勾选不同的页面来渲染不同的页面.今天主要是大概弄明白了,从前端网页端的信息通过某个请求打到后端的controller中去,然后通过后端的rails服务器来处理请求,返回结果或渲染页面到浏览器中.这其中,params中的参数来源于http请求,在传递到controller中去. 关于导出csv文…
DI容器本质上是一个工厂,负责提供向它请求的类型的实例. .net core内置了一个轻量级的DI容器,方便开发人员面向接口编程和依赖倒置(IOC). 具体体现为Micorosoft.Extensions.DependencyInjection这个包. .net core中内置的DI容器包含两大要素:ServiceCollection和ServiceProvider. 为了便于理解,我画了一张图: 通过上面的UML类图可以看出ServiceCollection其实就是一个集合,存放接口和实现的对…
官方文档表示:为了在数据变化之后等待Vue完成更新DOM,可以在数据变化之后立即执行Vue.$nextTick(callback),这样回调函数就可以在数据变化之后立即执行. 这段话的意思是: 例如:存在 <div id="test">{{ message }}</div> // 假如此时message的值是 hi 当我们对data(){return{}}中的值进行赋值修改时(例:this.message = 'hello'),虽然数据变化了,但是其实DOM上的…
1.在分布式系统中,我们使用锁机制只能保证同一个JVM中一次只有一个线程访问,但是在分布式的系统中锁就不起作用了,这时候就要用到分布式锁(有多种,这里指 redis) 2.在 redis当中可以使用命令 setnx(key, value)来实现分布式锁 setnx:当key不存在的时候设置成功,返回1,若存在的话返回0表示失败.使用这个命令的话要搭配 expire(key, time)来设置过期时间,但是这种组合存在问题,如下: try { redisClient.expire(key, 100…
我今天做画面的时候,发现了一点小问题. 我在xmal文件里面加了一个CheckBox控件,设置IsChecked属性为True,并添加了Checked事件.Checked事件里面有对另外一个TextBox的访问. 这时候我运转程序,它会先走构造方法的InitializeComponent方法,然后就直接走到Checked事件,这时候可以看到TextBox是个null值,也就是说它还没被初期化. 我的理解是InitializeComponent方法先初期化CheckBox,当初期化它的IsChec…
好久没有上博客园写文章了,今晚终于有点空了,就来写一下昨天的一点小发现. 我自己所知,C++,Java的面向对象都有多态的特点,而PHP没有,但PHP可以通过继承链方法的重写来实现多态的属性.而魔术方法会在特定情况下被触发,我们也可以对其进行重写. ---------------------------------------------------------------------------------------------------------摘抄开始----------------…
show create table employee; 对这个语句的小理解: 顿悟呀,之前一直不太理解这条语句,现在忽然觉得明朗起来.他就是展示创建这个表格时的SQL语句.执行上述代码之后结果如下: +----------+-------------------------------------------------------+ | Table | Create Table | +----------+--------------------------------------------…
『AngularJS』一点小小的理解   AngularJS 是一个前端的以Javascript为主的MVC框架.与AngularJS相类似的还有EmberJS. 随着时代在进步,各种各样的开发理念与开发框架不断的提出与发展,而就目前来说,除了游戏.IM(类似QQ).Office这类软件之外,新出的软件应用开始出现两个方向,一个是以Web为主的Web APP,一个是以移动端为主的移动APP.且,现有也有一种声音认为Web APP早晚会取代移动端原生APP,从而一统计算机软件的应用方式.暂且不论这…
先看一下以下的代码: int fun(a,b) int a; int b; { return 10; } void main(int argc, char ** argv) { fun(10); return; } 大家猜猜看它在VS小能通过编译吗? 哈哈.不啰嗦了,直接说结果,假设这段代码在一个.c文件中是能够通过编译的.在一个.cpp文件中是不能通过编译的. 非常奇怪吧,想这应该是c与c++的一点小差别吧,近期在看nc源代码,看到这样的形參声明方式,感觉好奇妙.还有就是它的船參个数比較奇妙.…
0--前言 @Mapper和@Repository是常用的两个注解,两者都是用在dao上,两者功能差不多,容易混淆,有必要清楚其细微区别: 1--区别 @Repository需要在Spring中配置扫描地址,然后生成Dao层的Bean才能被注入到Service层中:如下,在启动类中配置扫描地址: @SpringBootApplication //添加启动类注解 @MapperScan("com.anson.dao") //配置mapper扫描地址 public class applic…
接触BUI也有一段时间,也用在了移动端的项目开发中,总的来说,该框架用起来也挺灵活的,控件可以自由定制,前提是自己能认真地学习该框架的api,因为api里面说的东西比较详细,如果没有仔细看的,可能有些功能点没有看到而导致一些效果弄不了,以下是我学习运用bui所得到的一点小心得,说的不好的地方,希望指正 一. 控件的不同使用实现不同的功能 1.使用bui.slide实现轮播图的效果(截图里面的内容不是图片,而是可以配置的文字,当然了可以配置成图片的) 2.使用bui.slide实现新闻轮播的效果(…
@Mapper和@Repository是常用的两个注解,两者都是用在dao上,两者功能差不多,容易混淆,有必要清楚其细微区别: 区别: @Repository需要在Spring中配置扫描地址,然后生成Dao层的Bean才能被注入到Service层中:如下,在启动类中配置扫描地址: @SpringBootApplication //添加启动类注解 @MapperScan("com.xz.springboot.mapper") //配置mapper扫描地址 public class app…
定制文档级Ribbon界面的实现思路: 1.excel的文件使用rar+xml的形式保存在本地. 2.用压缩软件打开文件,以规范的格式直接编缉或添加xml文件 3.使用excel文件时,主程序会解析xml文件,根据内容加载数据,包括Ribbon功能区的元素 一.XML是啥 1.XML就是一个小型数据库,可以用文本文件持久化保存数据. 2.XML用文本格式保存数据,使它可以兼容不同平台. 3.有意义的标签使它既保留了扩展性,同时也更易读. 4.XML本身是一个对象,其中的每一个元素也都是对象(DO…
前几天在图书馆看书,恰好看到这本<深入剖析nginx>,花了快一周的时间看完了这本书,写点笔记心得便于以后复习. 以前对nginx的认识就只是停留在一个反向代理服务器上.百度了一下nginx也很火,仅次于apache和微软的iis.nginx的主要特点就是占用系统资源少,并发能力强,稳定性好. 第1,2章主要讲了下基本的代码分析的准备工作,介绍了一些便于调试代码的工具,以及在linux环境下运用gdb对其代码进行调试,这里不多描述. 第3章主要介绍了Nginx的进程模型.一般情况下,在启动Ng…
一般使用反转工作生成基础bean如Items然后我们使用的实体类一般是基础bean的拓展类ItemsCustomer,继承自基础类,这个是为了方便对于表字段的更改生成的bean影响减低我们查询一般是使用一个ViewObject VO类 配置文件的话一般是同名前缀,然后web.xml中配置使用通配符方式,这样便于管理,不需要一个一个include dao层中我们只需要写接口,impl由mybatis的mapper代劳就是dao层返回的是基于数据表的数据 然后service是业务层,一系列的逻辑都在…
因为自己在平时工作中,有些功能需要用到定时器,但是定时器并不像我们表边上看到的那样,所以这周末我看看书查查资料,深入研究了一下JavaScript中的定时器,那么废话不多说,下面进入我们今天的正题. 大家都知道JavaScript是单线程的,所以不管是定时器还是用户的操作都是需要在线程队列中排队执行的. 一.定时器在执行线程队列里的分析 为了更好的理解我还是直接写个测试代码来看一下(由于有人反映例子不是很直观不好理解,所以我做了一个新的例子,修改于2016年8月29日),这样分析起来更直观一些…
最近在写程序中,遇到了之前自己没遇到过的代码,一番理解后才知道原来是在动态设定xml布局中的属性.即利用LayoutParams可以动态的设定布局或者控件的宽和高,以及的它的左间距,右间距,内间距,和gravity等.总之,我们在xml中可以设定的东西,用代码都是可以搞定的.每一种布局都会对应自己的LayoutParams.于是我也做了下面的实验,算是一个参考范例吧.顺便熟悉一下这方面的知识. 一.线性布局的动态设定属性值 一如往常,我们新建一个android项目,姑且叫做“View实验”.新建…
这阵子在使用gson解析时遇到了点小麻烦,因为一直用的fastjson,最近一个项目里使用的gson,需要解析list集合,查资料都是使用TypeToken解决,相对比较麻烦,下面为大伙推荐一种简便的方法.<Object> Object com.google.gson.Gson.fromJson(String json, Class<Object> classOfT) throws JsonSyntaxException 可以方便地帮我们把Json字符串转换成对应类型的对象.这里提…
我发现,自从我学了Stream流式操作之后,工作中使用到的频率还是挺高的,因为stream配合着lambda表达式或者双冒号(::)使用真的是优雅到了极致!今天就简单分(搬)享(运)一下我对stream流式操作的一点理解 一.什么是流式操作?或者准确的说什么是"流" 所谓艺术来源于生活,所以不妨从一个生活中小例子展开说明一下. 通过组词,流可以组成流动,流水,流经,流进流出.... 这些描述的都是一种状态,是一种"运动"中的状态,更加通俗的讲,流水线.以往的流水线会…
最近涉猎自动化太少了,以至于都不经常更新了.最近一个朋友在做移动端自动化的时候遇到了一些小问题来找我解决.本人也不是很精通,只是接触的时间长了一点了.下面就是一些问题和解决过程: 1.她刚过来的时候,碰到的第一个问题是打开appium后启动脚本,手机没反应.如果以后再遇到这样的问题: 解决方法:首先先验证自己的软件是否全部安全完整,环境变量是否全部配置完全.如果都配置完全,就不会存在这种问题了,所以说在布置环境的时候一定要小心一点,宁可慢一点也一定要检查全. 2.他们公司产品老是弹出更新弹框,就…
今天面试官问了几个关于java内存方面的问题,其中有一个是关于内存重复使用的.突然想到java中String比较特殊的地方,根据自己的理解所以稍微记录一下以免遗忘. 对于下面这个小程序: public static void main(String[] args) { // TODO Auto-generated method stub String s1 = "123"; String s2 = "123"; String s3 = new String(&quo…
KMP算法应用于 在一篇有n个字母的文档中 查找某个想要查找的长度为m的单词:暴力枚举:从文档的前m个字母和单词对比,然后是第2到m+1个,然后是第3到m+2个:这样算法复杂度最坏就达到了O(m*n),对于大数据肯定不行.KMP算法的精髓即设法减少不必要的枚举次数,举个例子:比如已经匹配好了单词的前k-1个字母:但第k个字母无法匹配了:那么如果前k-1个字母中存在类似回文的情况(前i个字母组成的子串和后i个字母组成的子串相同),那么指针j就变成i(相当于整体往右移动),这样来达到减少枚举次数的目…
原本项目里是用h5的新属性data-list,但是这个下拉框的数据太多,而data-list似乎没有设置高度的地方,所以写了个小插件,期间也发现了一些bug,目前这个版本算是可以一用的版本,故写一下这个插件碰到的奇怪问题. 一点简单的CSS(因为项目原因,暂时只写了webkit内核). .datalist_ul { background: #fff; display: none; list-style: none; padding: 0; margin: 0; overflow: auto; p…
前言 IOC的重要性 大家都清楚..便利也都知道..新的ASP.NET Core也大量使用了这种手法.. 一直憋着没写ASP.NET Core的文章..还是怕误导大家.. 今天这篇也不是讲Core的 前面写了C#开发移动应用系列  就第一篇和最后一篇上了最多推荐 - -  也许大家确实不看好吧.. 算了..废话不多说.开始今天的东西吧.. 本篇文章不讲为何我们要用IOC..只讲Autofac使用中的一些小心得 正文 1.基本注入 首先我们要构造一个容器,代码如下: //第一步: 构造一个Auto…
现在对于大多数平台的C编译器来说都会有很多种选择,而gcc和clang无疑是2个非常优秀的C编译器.当然他们也不只是C编译器.我最近用clang的比较多,原因有很多.不过一些小的细节很让我喜欢,比如OS X系统中,clang的编译器警告或错误提示是以彩色文本醒目打印出来的. 而gcc则无论如何打印的颜色都一样(我不知道是否有什么设置可以改变这一点). 但是gcc也有其人性化的一点,就是在某些比较隐晦的错误时,会有更友好的提示.比如标签后不能直接写声明这种情况,2种编译器的结果如下: #inclu…
1.yarn npm安装的包,跟权限问题有关,与网络也有关 2.Vue框架首先,是解决了view-model的问题,解放开发的双手,使得显示和数据和控制分开 3.当你觉得最近没有技术文章看时,就看收藏的 4.必须熟悉es6的对象.数组拓展,熟悉观察者模式,熟悉lodash 5.浏览器的图片上传限制,同文件无法触发2次上传,改type为其他,再改回为text即可 6.做静态页面时,绝对不要做交互 7.用after和before在一张图上定位,但是无法突破图的边缘限制,解决方法是,外层套View设置…
作者:桂. 时间:2017-03-06  20:57:22 链接:http://www.cnblogs.com/xingshansi/p/6511916.html 前言 本文为Hilbert变换一篇的内容补充,主要内容为: 1)EMD原理介绍 2)代码分析 3)一种权衡的小trick 4)问题补充 内容主要为自己的学习总结,并多有借鉴他人,最后一并给出链接. 一.EMD原理介绍 A-EMD的意义 很多人都知道EMD(Empirical Mode Decomposition)可以将信号分解不同频率…