这段时间学习Spring Data JPA功能模块.Java持久性API(简称JAP)是类和方法的集合,以海量数据关系映射持久并存储到数据库,这是由Oracle公司提供方案技术.在JAVA社区,深受爱戴,作为老少皆宜,大小通吃的存在,可以快速实现访问数据库功能.其官方推崇的是通过继承JpaRepository<T, ID>接口,实现一个个的领域仓储(即基础表的增删改查方法组),JpaRepository<T, ID>接口定义了绝大部分单表操作的方法,可支持常规的业务操作. 不过个人…
一.显示ListView快速滑动块图标 设想这样一个场景,当ListView的内容有大于100页的情况下,如果想滑动到第80页,用手指滑动到指定位置,无疑是一件很费时的事情,如果想快速滑动到指定的位置,只需加上ListView的fastScrollEnabled属性等于true,启用快速滑动功能即可. <ListView android:id="@android:id/list" android:layout_width="match_parent" andr…
一.大数据下的ETL工具是否还使用Kettle kettle 作为通用的ETL工具,非常成熟,应用也很广泛,这里主要讲一下 目前我们如何使用kettle的? 在进行大数据处理时,ETL也是大数据处理的主要场景之一. 针对大数据下的ETL, 在大数据研究之初,曾经花费很大精力去寻找大数据下比较成熟的ETL工具,但是不多.主要分类如下: 开源的图形界面 类似 kettle 的nifi 命令形式的 如 sqoop.DataX 还有使用Spark 自定义开发ETL框架的 大数据下的ETL处理过程和传统关…
1. 学科最受欢迎老师解法补充 day21中该案例的解法四还有一个问题,就是当各个老师受欢迎度是一样的时候,其排序规则就处理不了,以下是对其优化的解法 实现方式五 FavoriteTeacher5 package com._51doit.spark04 import org.apache.spark.{Partitioner, SparkConf, SparkContext} import org.apache.spark.rdd.RDD import scala.collection.muta…
有时候我们需要在程序中执行另一个程序的安装,这就需要我们去自定义msi安装包的执行过程. 比如我要做一个安装管理程序,可以根据用户的选择安装不同的子产品.当用户选择了三个产品时,如果分别显示这三个产品的安装交互UI显然是不恰当的.我们期望用一个统一的自定义UI去取代每个产品各自的UI. 平时使用msiexec.exe习惯了,所以最直接的想法就是在一个子进程中执行:     msiexec.exe /qn 这样固然是能够完成任务,但是不是太简陋了? 安装开始后我们想取消这次安装怎么办? 或者我们还…
在scala中是没有原生线程的,其底层使用的是java的Thread机制.但是在scala中对java Thread进行了封装,实现了更便于操作线程的Future. 官方文档: Futures provide a way to reason about performing many operations in parallel– in an efficient and non-blocking way. 在使用的时候只需要通过object Future 的apply方法传入执行体即可启动,那么…
Android 自定义支持快速搜索筛选的选择控件 项目中遇到选择控件选项过多,需要快速查找匹配的情况. 做了简单的Demo,效果图如下: 源码地址:https://github.com/whieenz/SearchSelect 这个控件是由Dialog+SearchView+ListView实现的.Dialog用来承载选择控件,SearchView实现输入,ListView展示结果.设计概要图如下: 一.自定义Dialog Dialog布局文件 <?xml version="1.0&quo…
defer.return.返回值,这三者的执行逻辑是: return 最先执行,return 负责将结果写入返回值中:接着defer执行,可能修改返回值:最后函数携带当前返回值退出.…
Django基础九之中间件 本节目录 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证 六 xxx 七 xxx 八 xxx 一 前戏 我们在前面的课程中已经学会了给视图函数加装饰器来判断是用户是否登录,把没有登录的用户请求跳转到登录页面.我们通过给几个特定视图函数加装饰器实现了这个需求.但是以后添加的视图函数可能也需要加上装饰器,这样是不是稍微有点繁琐. 学完今天的内容之后呢,我们就可以用更适宜的方式来实现类似给所有请求都做相同操作的功能了 二 中间件介绍…
有时候我们需要在程序中执行另一个程序的安装,这就需要我们去自定义msi安装包的执行过程. 比如我要做一个安装管理程序,可以根据用户的选择安装不同的子产品.当用户选择了三个产品时,如果分别显示这三个产品的安装交互UI显然是不恰当的.我们期望用一个统一的自定义UI去取代每个产品各自的UI. 平时使用msiexec.exe习惯了,所以最直接的想法就是在一个子进程中执行:     msiexec.exe /qn 这样固然是能够完成任务,但是不是太简陋了? 安装开始后我们想取消这次安装怎么办? 或者我们还…
Springboot中mybatis执行逻辑源码分析 在上一篇springboot整合mybatis源码分析已经讲了我们的Mapper接口,userMapper是通过MapperProxy实现的一个动态代理,所有调用userMapper的方法,最终都会代理到MapperProxy的invoke方法上,我们这次就来看看mybatis具体的执行流程.为了简单易懂,本次的示例用的是最简单的查询语句且不包含事务. 本篇文档的源码路径https://github.com/wbo112/blogdemo/t…
简介 Mybatis 是一个持久层框架,它对 JDBC 进行了高级封装,使我们的代码中不会出现任何的 JDBC 代码,另外,它还通过 xml 或注解的方式将 sql 从 DAO/Repository 层中解耦出来,除了这些基本功能外,它还提供了动态 sql.延迟加载.缓存等功能. 相比 Hibernate,Mybatis 更面向数据库,可以灵活地对 sql 语句进行优化. 本文继续分析 Mybatis 的源码,第1点内容上一篇博客已经讲过,本文将针对 2 和 3 点继续分析: 加载配置.初始化S…
学习这个很长时间了一直没有去做个总结,现在大致总结一下并发包的线程池. 首先,任何代码都是解决问题的,线程池解决什么问题? 如果我们不用线程池,每次需要跑一个线程的时候自己new一个,会导致几个问题: 1,不好统一管理线程和它们的相互之间的依赖关系,尤其是有的程序要做的事情很多的时候,线程的处理就显得很杂乱,更雪上加霜的是,线程本身就是不可预期的,不是说先跑的线程就一直在后跑的线程前面,一旦形成复杂的依赖关系,也就会形成复杂的状态(由所有线程的状态共同决定). 2,效率低下,有可能你的每次跑的线…
概述 实现效果 设计思路 采用MVC架构,即模型—视图-控制器架构 使用MJExtension框架实现字典转模型 使用MJRefresh框架实现上拉和下拉刷新 上拉刷新,加载新的数据 下拉刷新,加载更多的数据 使用SDWebImage框架加载图片 模型 商品模型需要包含以下属性 /**商品控件宽度*/ @property (nonatomic, assign) CGFloat w; /**商品控件高度*/ @property (nonatomic, assign) CGFloat h; /**商…
 在 Build 开发者大会上推出VM 扩展程序的其中一个称为"自定义脚本扩展程序",它支持 PowerShell.如果这是您第一次访问这些博客,可能需要查看以前的博客,请单击此处和此处,了解有关 VM Agent 和扩展程序的概述. 那么,此扩展程序有何用途?它与远程PowerShell 或任何其他现有远程执行工具有什么不同?简而言之,自定义脚本扩展程序可以从 Azure 存储自动下载脚本和文件,并在 VM 上启动 PowerShell 脚本,进而安装更多软件组件.与任何其他 V…
一.增加配置属性类 package com.chhliu.springboot.async.configuration; import org.springframework.boot.context.properties.ConfigurationProperties;    @ConfigurationProperties(prefix = "spring.task.pool") // 该注解的locations已经被启用,现在只要是在环境中,都会优先加载 public class…
systemctl list-units --type=service #查看所有已启动的服务 systemctl enable httpd.service #加入开机自启动服务 systemctl enable rsyncd.service  #同步数据的服务 2.开机后执行自定义脚本 1)编辑自启动脚本的文件 vim /yourpath/serverstart_all.sh #!/bin/bash sh /yourserverpath/server_start.sh 2)将脚本标记为可执行文…
1. 在Visual Studio 新建项目,模板为空,下面结构选择MVC. 2. 在项目中新建一个类MyModule,实现IHttpModule接口 namespace SimpleApp.Infrastructure { /// <summary> /// 记录请求管道事件执行顺序 /// </summary> public class MyModule : IHttpModule { public void Dispose() { } public void Init(Htt…
通过CyclicBarrier+线程池的方式,同步的方式分页分批次并发高效处理逻辑,将总页数分成多个批次并发执行每页逻辑,每个批次处理DO_MAX_SIZE个页,每个批次等待DO_MAX_SIZE个页数处理完成后才执行下一个批次,并等待所有批次执行完成才处理后续逻辑 以下代码只需要在TODO处添加上自己的逻辑就可以达到处理效果 /** * 线程池初始化,也可用其它初始化方式 */ , , 10L, TimeUnit.SECONDS, new LinkedBlockingDeque<Runnabl…
这篇文章的目的是实现Struts2中一种形式(封装视图的逻辑名称),在Struts2中Action处理后会返回"SUCCESS"这样,然后根据"SUCCESS"跳转到相对应的Jsp页面,但是前一篇文章中直接配的是modelAndView.setViewName("/jsp/success.jsp");.所以这篇文章实现上面那个功能(封装视图的逻辑名称). ----------------------------------------------…
//新增] @Test public void add(){ config = new Configuration(); sessionfactory = config.configure("hibernate.cfg.xml").buildSessionFactory(); session = sessionfactory.openSession(); ts = session.beginTransaction(); User user = new User(); user.setN…
1.运行npm i webpack-dev-server -D 把工具安装到项目的本地开发依赖 2.改工具用法跟webpack的用法完全一样:package.json中增加配置,直接用npm run *** 来执行这个工具 另: 1.由于安装路径是本地安装,因此无法当作脚本命令在powershell等终端编译器上运行(只有安装到全局 -g 的工具,才能在终端正常执行) 2.webpack-dev-server要正常执行,本地必须安装webpack 3.webpack-dev-server打包生成…
1.super的构造顺序:永远优先构造父类的方法 2.static永远在类实例之前执行,this的使用范围为实例之后…
import os l = ['ssh a;scp /data/visitlog/*11* root@d:/data/mapReduceVisitorLog/'] # b c for i in l: os.system(i) 在执行py脚本前,配置好了免密登录:python this_.py成功登录到a服务器,但是剩下的不能执行: 实现思路:事件触发机制:各个节点 http 监听:收到后执行命令: import os sh_, nodes = 'ssh A "scp /data/visitlog…
处理器继承自:AbstractController,MultiActionController   一.AbstractController 如上图,可以分析出AbstractController用的处理器适配器是SimpleControllerHandlerAdapter   具体Mycontroller里面的handleRequestInternal这个方法是怎么执行的,上图里面AbstractController类是继承了Controller接口,Controller这个接口里面有一个如下…
一.正常流程下的拦截器(全部放行) 1.springMVC中拦截器实现这个接口HandlerInterceptor 第一个拦截器 HandlerInterceptor1   public class HandlerInterceptor1 implements HandlerInterceptor {   //进入 Handler方法之前执行   //用于身份认证.身份授权   //比如身份认证,如果认证通过表示当前用户没有登陆,需要此方法拦截不再向下执行   @Override   publi…
Spring Boot项目中数据源的配置可以通过两种方式实现: 1.application.yml或者application.properties配置 2.注入DataSource及SqlSessionFactory两个Bean 通过第二种方式配置数据源则按照MybatisPlus官方文档使用分页及逻辑删除插件会无效,解决思路是在初始化SqlSessionFactory将插件设置进去 /** * 逻辑删除插件 */ @Bean public GlobalConfig globalConfig()…
突然发现在使用LayUI时,用到弹出层layer.prompt时,如果文本框输入值是空的话点击确定没有反应,不能向下执行. 但是我又需要在这种情况下去继续执行判断或逻辑时该怎么做?? 示例:原代码如下: layer.prompt({ formType: 2, title: '请填写排除原因(注:必填项)', area: ['500px', '150px'], btnAlign: 'c' }, function(value, index, elem){ alert(value); layer.cl…
在grasshopper中,需要导入的包虽然不多,但是相当绕人,所要实现的操作往往找不到,暂时做个分类. 双击输入 python 电池: # 导入rhino 包 import Rhino #Rhino.Geometry 表示执行的是几何图形操作,例如:输入一个点和圆形 pt = Rhino.Geometry.Point3d(80233.3, 38977, 0) cir = Rhino.Geometry.Circle(pt, 199) # 不输出转出是无法在图形上显示出来 p = pt a = c…
正常情况下SELECT的书写顺序和执行顺序: 书写顺序: SELECT>FROM >WHERE>GROUP BY>HAVE>ORDER BY 执行顺序: FROM >WHERE>GROUP BY>HAVE>SELECT>ORDER BY 以下以Product表为例: 执行以下代码说明执行过程: SELECT product_type,count(*) FROM Product WHERE sale_price > 100 GROUP BY…