- 博客(61)
- 资源 (14)
- 收藏
- 关注
原创 Spring Data Redis使用Stream出现消息积压问题
Spring Data Redis使用Stream出现消息积压问题阅读框架拉取消息的源码得知最终是创建了一个线程进行异步执行修改最终效果阅读框架拉取消息的源码得知最终是创建了一个线程进行异步执行 /* StreamPollTask 往上翻可看到继承了Runnable, 所以使用来开线程执行逻辑的task */ /** * 线程执行代码可看到关键在于doLoop */ @Override public void run() { pollState.starting(); t
2021-10-08 16:12:41
1592
2
原创 总结 | 刘俊强:做好一对一沟通的关键要素
近期才和团队成员进行了一对一沟通, 恰巧看到这篇文章所以总结一下多多勉励.为什么需要1V1沟通在技术管理专栏中多次强调管理人员需要和成员有稳定的沟通渠道, 而一对一更是重中之重.一对一会议是管理人员和团队成员相互沟通、互相跟进,并了解彼此工作关系的重要渠道。定期举行的一对一会议是最强大的管理工具之一,可以使管理工作事半功倍.1v1沟通的作用明确沟通目的: 互相尊重, 互相理解, 互相信任,...
2019-10-14 15:06:28
2249
原创 Thymeleaf热更新不需要ctrl+f9即可修改页面
Thymeleaf热更新不需要ctrl+f9即可修改页面Properties文件中配置spring.thymeleaf.cache=falsespring.thymeleaf.templates_root=src/main/resources/templates/再加一个Configuration@Configuration@Profile("dev")public cla...
2018-05-30 15:41:49
2596
1
原创 Spring源码分析--@Autowired注入的不是代理对象,导致事务回滚失败(@Transactional无效)
@Autowired注入的不是代理对象,导致事务回滚失败(@Transactional无效)结论:不要在@Configuration类中的@Bean中直接注入需要成为代理对象的对象问题分析我们都知道Spring的事务控制是使用AOP实现的,所以@Autowired注入的对象必须是一个代理对象(类似:$Proxy89@10644)。 但是我们在使用@Bean进行配置的时候,很可能写出如下代码:
2017-02-13 16:57:12
7987
1
原创 Shiro源码分析 -- Subject.isPermitted(permission)已登陆用户判断是否具有某权限
这行代码用来判断已登陆用户是否具有某权限subject.isPermitted(permission.getPermission());假设登陆用户已有权限:system我们需要判断的权限: system:role:add问题在于,此时shiro会判断用户具有system:role:add权限。通过单步跟踪找到:WildcardPermission.impli
2016-10-28 17:20:55
16007
原创 由HandlerInterceptor.afterCompletion引起的对DispatcherServlet异常处理分析!
该方法的签名:void afterCompletion( HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception;该方法 最后一个参数为异常信息,但是我在Controller中throw异常,页面都提示了,我却在这个方法中获取
2016-07-15 14:47:44
19060
3
原创 Jenkins Publish over SSH,上传文件及执行命令
基本流程:安装插件Publish over SSH 系统配置中配置SSH JOB中配置Publish over SSH配置SSH服务器:在系统配置中增加 SSH Servers在Job中增加相应的配置 注意点:在SSH中默认是没有环境变量的,需要自己引入一下,centos:source /root/.bash_profile大部分linux:...
2016-07-08 16:00:24
25614
原创 Jenkins自动部署到(远程)tomcat服务器
Jenkins的流程:1.从版本控制中获取代码 ->2. 使用maven编译生成相应的包(jar,war) ->3. 部署到指定的地点。其中2.主要是解决依赖的问题,或许你需要先mvn install所有自己的工程其中3.主要是要配置tomcat用户,并且拥有manager-script权限即可。安装基本流程:https://jenkins.io/download/,在
2016-07-07 17:26:06
26468
1
原创 jQuery.validator自定义验证
需求:在新增信息前端验证必须上传图片,在修改时不用。思路:无论在新增还是在修改,图片都会有标签进行预览,只是新增的时候img.src不会有值。所以我们通过这个值来判断是新增还是修改。 // 在修改信息时,图片不用必填 // 要求在input上写data-img-according-to="图片预览的id" $.validator.addMethod("imgAccor
2016-05-25 10:11:09
1653
原创 shiro直接对类进行注解,类似于@Controller的形式
因为我司项目重构,我负责编写了一些模块,而每个模块Controller都有list,add等相同的方法,他们并不需要处理业务逻辑,只是将请求转到Service层处理完后,根据返回结果再转到相应的视图。所以我编写了Controller层的抽象类,并且在抽象类中实现常用的方法的方法且标记此类的常用注解@RequestMapping("/list")。 然后其他的所有想要具有 普通CRUD功能的C
2016-04-23 01:35:22
28738
1
原创 我真是受够了没有外键关联的Hibernate多表查询!-- 反射 通过example查询列表
HIbernate 中,没有外键关联,Criteria 不能关联查询!所以就不能findByExample,通过一个条件对象来获取数据。只能我们自己搞了!AbstractClass: /** * 设置查询条件 * @param t * @param whereHQL * @return */ private List s
2016-03-02 17:28:25
4497
原创 Spring webapp Junit测试
import com.fasterxml.jackson.databind.ObjectMapper;import org.junit.runner.RunWith;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.test.context.ContextConfigurati
2016-02-01 11:50:15
3558
原创 对 移动端响应式框架 pageResponse.js 进行扩展,完成自己的需求
GITHUB:https://github.com/peunzhang/pageResponse我需要用的是他的Contain模式,然而就像他介绍的,有一个缺点:页面水平垂直居中,左右或上下可能出现空白,页面背景使用纯色或可复制背景可解决此类问题。他也介绍了,这个框架的原理:使用transform:scale缩放页面,要求视觉稿高清。在配置好页面 后,我们审查需要自适应
2016-01-25 11:15:49
2198
原创 Spring初始化数据库
xmlns:jdbc="http://www.springframework.org/schema/jdbc"xsi:schemaLocation=http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd " default-lazy-ini
2015-12-27 17:37:54
2088
原创 jQuery Raty 源码改造,设置自己想要的值
现在有个要求: 先从后台获取我们要显示多少颗星星,再为每个星星设置一个value属性,为这个星星在数据库中的id.1.找到Raty 定义数据结构的地方,并且加入自己的变量: $.fn.raty.defaults = { cancel : false, cancelClass : 'raty-cancel', cancelHint
2015-11-23 17:19:45
4634
原创 Hibernate多表查询
SELECT u.id, u.username, r.nameFROM users u, rights AS rWHERE u.right_id = r.id假设SQL是这样的。我在Hibernate中就需要这样获得查询后的数据。 Session currentSession = hibernateTemplate.getSe
2015-11-13 17:41:31
574
原创 ueEditor 增加插件,超级方便
在导入ueEditor的js后另建一个js,执行以下代码// 注册插件UE.registerUI('报名表单插入', function (editor, uiName) { //注册按钮执行时的command命令,使用命令默认就会带有回退操作 editor.registerCommand(uiName, { execCommand: function () {
2015-09-30 15:59:40
8482
原创 SpringMVC 使用 AOP注解
package com.v2gogo.api.aop;import java.util.Date;import org.aspectj.lang.JoinPoint;import org.aspectj.lang.annotation.After;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.ann
2015-09-16 17:54:36
673
原创 JdbcTemplate 与 entity 映射
jdbcTemplate.queryForObject(sql, params, new UserVote()); // 一个对象jdbcTemplate.query(sql, new Object[] { id }, new UserVote()); // 一个list这个地方的 UserVote需要实现implements RowMapper 进而实现方法public User
2015-09-11 18:03:38
7585
原创 Java 正则表达式
代码很简单,但是有个细节import java.util.ArrayList;import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test { public static void main(String[] args) { String str = "123的的"; P
2015-09-09 10:22:57
451
原创 SpringMVC + Mybatis + Shiro + ehcache时缓存管理器报错。
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'shiroFilter' defined in class path resource [spring/spring-shiro-web.xml]: Cannot resolve reference to bean 'sec
2015-08-20 08:54:02
12476
原创 Spring源码:Spring 容器资源加载模板模式应用
模板位于:abstract class AbstractXmlApplicationContext : protected void loadBeanDefinitions(XmlBeanDefinitionReader reader) throws BeansException, IOException { Resource[] configResources = getConfig
2015-07-31 13:21:18
846
原创 MyBatis与Spring 整合后,创建Bean报奇葩错的解决
代理了MaBatis Generator自动生成的Mapper的类package com.aliapp.wxxd.material.service;import interfaces.EntityWrapperInterface;import java.util.List;import org.springframework.beans.factory.annotation.Aut
2015-07-30 13:56:56
24468
原创 MySQL 查询某个列中相同值的数量统计
数据现在是这样的,我想确定出type列中的news和image。。。。甚至以后有其他值,他们分别有多少个。SELECT type, count(1) AS countsFROM materialGROUP BY typecount(1),代表统计第一列,写上1 比写 *的效率高!
2015-07-22 09:06:37
35498
2
原创 Java泛型,结合JSONObject动态生成指定的对象
private T getTargetClass(String resultString, T t) { System.out.println(resultString); JSONObject result = JSONObject.fromObject(resultString); return (T) JSONObject.toBean(result, t.getClass()
2015-07-15 16:48:02
12464
原创 Springmvc JSON交互
先上前端javascript,ajax代码 function testAjaxS(){ $.ajax({ type:'post', url:'material/testAjax', data:'MediaId=手', success:function(data){//返回json结果 alert("success"); }
2015-07-15 15:33:34
3530
原创 JAVA WEB 获取properties文件,存放路径 及 获取路径
首先明白,ClassPath : 指的是:WEB-INF\classes这个目录下,通常把文件放在src文件夹下,或者新建文件并且添加到build path即可。IDE在同步文件到tomcat时会自动将文件放在classes下。 获取properties的代码: public Properties loadProperties() { Properties properties = ne
2015-07-10 15:00:39
8969
原创 XStream 数组(List)输出结构
微信SDK初步结构 恩..这是微信工程的结构,嘻嘻~ http://b.hiphotos.baidu.com/image/pic/item/d1a20cf431adcbeff71cbb18aeaf2edda3cc9f80.jpg 原以为应该:根对象中有个Articles类中,Articles类中包含一个变量名为 item的数组(list)对象才
2015-07-09 17:13:46
3933
原创 微信业务处理:职责链模式
微信中有很多普通消息和事件消息。我们可能要针对一个消息进行处理,而要针对消息的type创建指定的类,感觉用工厂模式还是不方便。~要写很多判断。所以我采取了责任链模式有点乱~~看测试代码: @Test public void textSimpleChianHandler(){ AbstractNormalHandlerChain simpleHandle
2015-06-30 14:01:57
705
原创 Math.random 重复随机,不重复随机
package random;public class RandomRepeatOrNotRepeat { // 随机数字最大值 public final static int maxValue = 20; // 随机数字最小值 public final static int minValue = 1; // 需要几位数字 public final static int resul
2015-06-06 18:07:22
6523
转载 SSH无密码/用户名不同,自动登录
其实我觉得每次使用SSH时输入用户名和密码也没什么不好,但是却被同事各种无情的鄙视。 T T创建公钥1ssh-keygen -t rsa无视它出来的任何提示,欢快的一路回车到底吧~把公钥复制到远程主机把公钥id_rsa.pub复制到远程机器的 /home/username/.ssh目录并命名为authorized_ke
2015-05-31 08:46:51
8176
原创 LInux : 运行Windows程序, 基于Wine 的Crossover, 下载地址
http://media.codeweavers.com/pub/crossover/cxlinux/
2015-05-21 11:13:33
871
原创 PingPlusPlus (一): 简单付款
感谢2015年4月20的 Ping++技术支持耐心指导~流程:客户端 对 服务端发出支付请求服务端 根据请求,设置相应的extra. //这个extra不是额外的呀,是必须的!客户端 接收 服务端返回的Charge对象我把ping++的处理 放在service层中了~~ // 测试ping++交易 // 返回Ch
2015-04-20 16:56:59
9275
2
原创 Struts2 逐步成长(六):Ajax配置
result字符串处理:inputStream = new ByteArrayInputStream("your string".getBytes("UTF-8")); xml针对上面return的配置action:package web;import java.io.ByteArrayInputStream;import java.io.InputStream;
2015-04-20 15:53:12
729
原创 Struts2 逐步成长(五): Action中方法名问题!
在Action中我有一个方法,目的是通过id找指定对象public String getById() { request.put("member", service.findById(id)); return SUCCESS; }还有一个登陆方法: public String login(){ Member validation = service.login(model
2015-03-13 19:27:34
883
原创 java知识点:dom4j 由map转字符串
map.toString()是这样子的~{welcome-file-list={welcome-file=[index.html, {a=[{b=[{c=[c1c1c1c1c1c1, c2c2c2c2c2c2]}, b2b2b2b2]}, 22222, 33333]}, index.jsp, default.html, default.htm, default.jsp]}, display-n
2015-02-27 19:47:48
802
原创 FrontEnd 步步高升:bootstrap3-validation.js 必填项星号(*)显示方式修改
作者的GITHUB:https://github.com/mrlong/bootstrap3-validation.js,先感谢一下,很好用~作者的样式,当表单有类为:form-horizontal 时,必填项*号显示样式很奇怪~~作者垂直表单添加 * 源码如下:else if(fform_style==2){ $(obj).
2015-02-26 22:57:03
8792
原创 FrontEnd 步步高升:鼠标在图片上,产生遮盖效果
思路:在图片旁边放一个height:0px的DIV,让jQuery改变高度,产生动画DOM树 活动标
2015-02-13 15:12:29
865
转载 CSS 3,用伪元素制作不一样的阴影效果
曲线阴影,翘边阴影 * { margin: 0; padding: 0; list-style: none } .wrap { margin: 50px auto; width: 600px; height: 200px; background-co
2015-02-12 17:38:43
1724
转载 如何使用Java、Servlet创建二维码
归功于智能手机,QR码逐渐成为主流,它们正变得越来越有用。从候车亭、产品包装、家装卖场、汽车到很多网站,都在自己的网页集成QR码,让人们快速找到它们。随着智能手机的用户量日益增长,二维码的使用正在呈指数上升。让我们来看看QR码的简要概述,以及如何在Java中生成它们。QR码介绍QR码(Quick Response 快速响应码)是矩阵条形码(或二维码)的一种类型,最先为于汽车行业而设计。
2015-02-12 17:12:05
707
SpringMVC+Mybatis+Spring+Shiro+ehcache整合配置文件
2015-08-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人