`
文章列表

mybatis动态传递0

mybatis动态传递参数是,如果是引用类型的话,那么传递0的时候,不要判断为''空字符串,如果不小心写了这个判断,将不会把0作为参数传递进去的   写法错误,orderStatus是一个Integer类型的数据 要把后面的去掉,否则传递0的时候,将不传递到动态sql里面去 <if test="orderStatus != null and orderStatus != ''"> and order_status = #{orderStatus} </if>

自动生成代码

自动生成代码   
最近改造项目,将项目的自动分页使用pagehelper来处理 增加新的jar包   将mybatis的jar包升级到3.2.8以上,如果没升级到,将不用 <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.8</version> </dependency>   将mybatis配置文件中新增如下插件  sql的xml文件为   mapper文 ...
最近测试环境上面装了jira和nexus私服环境,由于jira安装的时间比较早,版本比较低,用的jdk是1.6的,nexus使用的是1.7以上版本,两个在启动的时候总是会冲突,这个时候就临时调整环境变量 直接修改/etc/profile文件 #export JAVA_HOME=/usr/java/jdk1.8.0_45 #export JAVA_HOME=/appl/jdk/jdk1.6.0_27 export JAVA_HOME=/appl/jdk/jdk1.7.0_79 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAV ...

mysql记录慢日志

在mysql5.6以上版本中,直接在my.cnf文件   [mysqld] 下面新增如下配置 slow_query_log = on    slow-query-log-file = /home/mysql/slow-query.log long_query_time = 1   slow_query_log开启慢日志查询 slow-query-log-file 日志存放的位置 long_query_time 超过多少秒的sql进行记录
直接在mybatis-config.xml配置文件中新增一个配置 <settings>         <setting name="lazyLoadingEnabled" value="false"/>         <setting name="logImpl" value="STDOUT_LOGGING"/> </settings>   注意,这个时候,也要有对应的log4j.properties配置文件 log4j.rootCategory=I ...
最近做一个链表分组查询,并且取每个分组的前几位数据的业务 例如有商品表,订单表,品类表,商品表中有自己的分类,并且商品表外键关联品类表主键,订单表外键关联商品表中的商品id 业务需要,根据当前时间区间进 ...
在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法。 以下是本文目录大纲: 一.CountDownLatch用法 二.CyclicBarrier用法 三.Semaphore用法 一.CountDownLatch用法 CountDownLatch类位于java.util.concurrent包下,利用它可以实现类似计数器的功能。比如有一个任务A,它要等待其他4个任务执行完毕之后才能执行,此时就可以利用CountDownLatch来实现这种功能 ...
最近mabatis在自动生成代码的时候,只生成了insert方法,没有生成delete,update等方法,一般情况是忘记配置了数据库id的主键,配置完主键即可
<input type="text" name=birthday autocomplete="off" onClick="WdatePicker()" />   引入的文件包一定按照原有格式引入 <script type="text/javascript" src="/js/date/WdatePicker.js"></script>
由于图片服务器空间不够,我们将不常用的图片tar压缩后,但是有时候又需要指定解压一些文件   可以使用命令 tar xvf 压缩文件.tar  指定需要解压的文件 这里一定要注意,指定需要解压的文件,必须要按照压缩文件的目录来,如果目录错误是解压不出来的

mysql连表查询优化

mysql在做连表查询时,有时候用不到索引,这个时候就可以用explain来看一下查询计划   例如 EXPLAIN SELECT * FROM goods_base g JOIN `order` d ON d.goods_id=g.goods_id ; 这个虽然在g表和d表都为goods_id建立了索引,但是执行计划中,d表并没有走索引的   这个时候,如果要用到d表走索引的话,可以在where条件后面跟一个d表的索引条件查询即可 EXPLAIN SELECT * FROM goods_base g JOIN `order` d ON d.goods_id=g.goods_ ...
之前配置了很多次,主要是jar包的版本不对,导致了一些冲突,tomcat7的lib下面的jar我全部复制了下来,直接替换即可   替换完毕后,可以直接在context.xml文件中配置   <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"    memcachedNodes="n1:10.251.237.72:11211"    sticky="false"    lockingMode="auto" ...

年轻代gc jvm crash

    博客分类:
  • java
最近公司线上部分服务器出现了gc异常崩溃,检查了下异常崩溃日志,但是应用日志并没有出现很大的异常,但是在日志文件系统发现了hs_err_pid32506.log日志,这基本判定是jvm 异常了 打开日志文件   当时线程崩溃的是GCTaskThread   这个是当时所有Thread的列表,执行的线程exited是GCTaskThread  这块就发现是eden区域满了的时候发生了异常,然后查了些资料,发现是sun jdk在1.6的版本中,由于优化了垃圾回收算法,但是如果出现了和新生代区域大小差不多的对象时,就会引发这种crash,在启动参数中加入 -XX:-ReduceInitia ...

bitset和lambda表达式

    博客分类:
  • java
今天看了下lambda表达式,突然想看一下list中removeif的源码,发现挺有意思的 首先说一下BitSet这个类,这个类按照jdk里面说的是一个按需增长的位向量,没一个位置都是一个boolean值,我自己的理解就是一个很容易扩大的数组,每个数组的位置,都是一个boolean值,每个默认值为false   好,这会来看一下removif的源码,前提得先明白lambda表达式,removeif方法是传递了一个Predicate接口的参数  首先定义一个removeset的bitset,长度为当前数组的长度,然后遍历当前数组,利用传递的参数filter来判定是否需要执行remove操 ...
Global site tag (gtag.js) - Google Analytics