- 博客(19)
- 收藏
- 关注
原创 spring拦截器实现demo
spring拦截器及spring aop类似实现demo: public interface Interceptor {String intercept(ActionInvocation invocation);}public class TranscationInterceptor implements Interceptor {@Overridepublic String intercep
2017-09-05 15:50:12
457
原创 如何用debug没事启动tomcat
很多同学都有过将项目打成war包,放到tomcat的webapps的目录下,然后启动bin目录下的startup.bat,即可启动项目,但这种启动方法,无法用eclipse进行debug断点,因为tomcat不是以debug的方式进行启动的,下面是debug模式启动tomcat的方法: 打开bin目录下的startup.bat文件,在里面加上: SET CATALINA_OPTS=-s
2017-04-06 14:58:58
725
转载 mybatis一级缓存(session cache)引发的血案
问题回顾 最近项目功能单元测试中,出现了一个奇怪的bug。远程调试发现,程序进行了2次相同的查询,返回了实体类(ClassA)的2个对象:classAInstance1和classAInstance2,当修改classAInstance1.property1时,竟然classAInstance2.property1也被改了!!! 很快发现classAInstance1和classAInstance
2017-03-31 16:56:02
1065
转载 hashmap碰撞 造成的死循环
在多线程环境中,使用HashMap进行put操作时会引起死循环,导致CPU使用接近100%,下面通过代码分析一下为什么会发生死循环。 首先先分析一下HashMap的数据结构:HashMap底层数据结构是有一个链表数据构成的,HashMap中定义了一个静态内部类作为链表,代码如下(与本文无关的代码省略):静态内部类entry代码 收藏代码 static class Entry
2017-03-03 10:38:22
865
原创 activiti 定时边界相关
在activiti开发中经常会碰到节点之间互相跳转的需求,正常的跳转,用下面代码即可完成:public class JumpCmd implements Command<Object> { private String activityId; private String processInstanceId; @Autowired
2017-03-03 10:32:48
2245
原创 activiti 总结点
最近开发中用到的activiti开发,现有几点总结如下:1.并行网关 多进多出会有问题,由于并行网关 这里会判断进来的线 和execution的数量是否一致,如果一致就会走 takeAll方法,如果不一致 则会log.debug总结:如果跳转到并行网关或是正常流转到并行网关上,如果连接第一个并行网关的有两条线或两条以上,则并行网关上的节点 在execution表中不会生成,只会生成并行网关一个节点
2017-03-03 10:19:42
335
原创 利用Java反射机制和POI实现导出Excel功能
1.Apache POI简介 Apache poi工具包是一个著名的操作Microsoft文档的Java工具库,里面提供大量的对word,excel,ppt操作的方法。最近由于项目需要一个将数据库数据导出到excel的功能,所以学习了这个工具包的用法。下面简要介绍一下操作excel的几个重要的类和方法。1.HSSF、XSSF和SXSSF HSSF和XSSF包都是poi中操作excel的包,他们的
2016-11-14 16:58:09
2015
原创 java 泛型List擦除问题(解决方案)
java和c#比较,会有一个被C#耻笑的问题,就是java的泛型传入List时会被擦除,书上是这样解释的:代码示例如下:public abstract class AbstractOp implements Operation { @Overridepublic T get(String customKey) { String vStr = CacheUtil.get(getKey(cu
2016-11-08 12:43:00
1886
转载 JS 控制VIEWPORT在微信上正常显示
很多同学可能会遇到这种情况,自己写的Html5页面在app中显示都是正常的,但是到了微信中,显示就缩小的将近一半,这是什么原因呢,是因为微信的浏览器内核是他们特有的,和一般的浏览器内核不同,同意通过加下面这段js解决这个问题:var viewport = document.querySelector(“meta[name=viewport]”); var winWidths=$(window).w
2016-03-16 09:22:19
2143
原创 SQL优先排序
很多开发业务中都会碰到这样的需求,将自己的一些信息,优先排到前面,一般的SQL会怎么写?以Message这张表为例,要求查出当前登录用户的message信息优先排在前面,如果可以获取到当前的登录用户的userId为1222222,下面提供两种方法: 1. select * from Message order by case userId when 1222222 then 1
2016-03-11 10:54:11
1501
转载 String s = a+b+c+d+e;创建了几个对象的详细分析?
最近看到许多类似的帖子,大致意思如下:问题1: String s = “a” + “b” + “c” + “d” + “e”; 问此语句共创建了几个对象, 答案是 就创建了一个 String s = “a” + “b” + “c” + “d” + “e”; 赋值符号右边的”a”、”b”、”c”、”d”、”e”都是常量 对于常量,编译时就直接存储它们的字面值而不是它们的引用 在
2016-03-01 18:55:44
1566
原创 java 对List集合进行排序
Collections.sort(evidenceDetailVolist,new Comparator(){ public int compare(EvidenceDetailVo arg0, EvidenceDetailVo arg1) { if(arg0.getUseId()-arg1.getUseId()>0){
2016-01-29 16:57:31
401
原创 mybatis中 排序(将指定的排在后/前面)
public List<SuitEvidenceVo> selectWithFileByCaseId(Long caseId, List<Long> userIdList, Page evidencePge) { SuitEvidenceDoExample example = new SuitEvidenceDoExample(); Criteria criteria = exa
2016-01-29 16:34:37
15837
原创 后台传List参数,mybatis接收遍历处理demo
1.mapperExt.java中定义的方法:List<EvidenceOppugnCount> countByTypeUserIdList(@Param(value = "caseId") Long caseId, @Param(value = "list") List<Long> userIdList, @Param(value = "refId") Long r
2016-01-29 16:30:05
4530
原创 后端直接通过http写数据到html页面
public String getIntellectualResultByNicnName(String nickName) { // 获取用户基本信息 ResultDO<BaseUserDO> resultdo = uicReadService.getBaseUserByNick(nickName, envUtil.getAppName()); BaseUserDO user
2016-01-13 16:50:42
825
原创 List列表中根据某一个字段,进行去重!
比如得到的List中有10个User对象,现在要求UserName相同的对象只保留一个,下面给大家介绍两种较简便的方法, 方法一:首先建一个空的list1和一个HashMap,然后对List进行for循环,在for循环中得到List中的User对象,将User对象的UserName放到Map中(map中的key和value可以都是user的userName),如下:
2016-01-13 14:17:57
11365
原创 前端 根据文本框输入字符串长度 实时控制按钮可用或是不可用
比如如下的有个需求: 要求如下:当输入的兑换码的长度超过1时,下面的兑换按钮有效,可点击,否则无效,不可点击如下代码是整个div: 兑 &nb
2015-12-09 14:18:33
876
原创 java 设置特定时间
在java开发中,很多字段是Date类型的,当需要我们给时间一个默认值的时候,该怎么写呢,怎么写一个指定的时间呢?一般有两个方法:1. new Date(year,month,day); 这种方法是废弃掉的,不建议使用2.用 Calendar,如下: Calendar calendar=Calendar.getInstance();
2015-12-09 13:54:11
30955
2
原创 mysql数据库 导入表及数据步骤
1.安装mysql客户端,我用的是MySQL WorkBench2.安装mysql服务端,我用的是解压版的 mysql-5.6.27-winx643.打开解压的 mysql-5.6.27-winx64的bin文件中的mysqld.exe执行(会一闪而过),在执行mysql.exe4.输入dos命令: a. create database 数据库表名;//(如:create d
2015-12-02 11:11:29
2067
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人