- 博客(202)
- 资源 (26)
- 收藏
- 关注
原创 Non-terminating decimal expansion; no exact representable decimal result异常处理
错误:今天在使用BigDecimal的时候出现一个错误:java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.原因:通过BigDecimal的divide方法进行除法时当不整除,出现无限循环小数时,就会抛这
2016-12-07 14:13:02 955
原创 BigDecimal用法之计算等额本金和等额本息
一.引言 《EffactiveJava》中介绍float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确,这时候BigDecimal就派上大用场啦。二.常用方法add(Bi
2016-12-06 18:09:07 2363 1
原创 java厚积薄发之set去除重复object
public class SetDemo { public static void main(String[] args) { Set nameSet = new HashSet(); nameSet.add("张三"); nameSet.add("李四"); nameSet.add("王五"); nameS
2016-12-01 17:10:17 2785
原创 sql经典面试题汇总(可以本地测试练习)
1.表名:numberID(number型) Name(varchar2型)1 a2 b3 b4 a5 c6 c要求:执行一个删除语句,当Name列上有相同时,只保留ID这列上值小的例如:删除后的结果应如下:ID(number型) Name(varchar2型)1 a2 b5 c请写出SQL查询语句。答案:delete from
2016-11-29 17:58:43 8252 2
原创 mysql命令gruop by报错this is incompatible with sql_mode=only_full_group_by
今天在使用mysql命令行进行分组时报错:ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'database_tl.emp.id' which is not functionally dependent on columns
2016-11-28 18:12:24 15687 2
原创 mysql命令行批量插入100条数据命令
先介绍一个关键字的使用:delimiter 定好结束符为"$$",(定义的时候需要加上一个空格) 然后最后又定义为";", MYSQL的默认结束符为";"如何通过mysql命令行批量插入100条数据呢,可以在代码里实现,也可以通过命令行,也就是通过存储过程:delimiter $$create procedure myproc ()begindeclare num int ;
2016-11-28 15:10:26 17129
转载 mac下mysql terminal命令行设置以及常规用法
首先正常使用时,需要找到MySQL所在bin目录,例如:$ /usr/local/mysql/bin/mysql -u root -pEnter password: 但每次都要输入这么一长串字符,也过于繁琐,需要用alias命令行去简化$ vim ~/.bash_profile 追加内容:# MySQLalias mysql='/usr/local/
2016-11-28 10:50:46 23495 2
转载 手把手学习nginx基本配置
相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额。那究竟它有什么作用呢?可能很多人未必了解。说到反向代理,可能很多人都听说,但具体什么是反向代理,很多人估计就不清楚了。摘一段百度百科上的描述:Html代码 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并
2016-11-11 16:12:34 17047 2
原创 request之getRequestURI,getRequestURL的区别
jap页面请求url:点击跳转test2页面test2页面:<%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";out.println
2016-11-09 18:21:05 3992
转载 Spring加载properties文件的两种方式
在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可,不需要修改源代码,这样更加方便。在spring中也可以这么做,而且Spring有两种加载properties文件的方式:基于xml方式和基于注解方式。下面分别讨论下这两种方式。1. 通过xml方式
2016-10-28 18:13:45 2492
转载 Linux chmod命令及权限含义
对于一条权限赋值命令:sudo chmod -R 764 ×××;我们必须了解其含义:(1)各字段含义:sudo chmod -R(更改文件夹及其子文件夹) 7(所有者权限)6(组用户权限)4(其他用户权限)xxx(目标文件)(2)首先了解以下权限对应关系(执行权限字母表示 权限含义 执行权限数值表示):
2016-10-28 16:45:14 9712
转载 Linux系统中切换用户身份su与sudo的用法与实例
日常操作中为了避免一些误操作,更加安全地管理系统,通常使用的用户身份都为普通用户,而非root。当需要执行一些管理员命令操作时,再切换成root用户身份去执行。普通用户切换到root用户的方式有:su和sudo。1,su -(su为switch user,即切换用户的简写)格式:su -l USERNAME(-l为login,即登陆的简写)-l可以将l省略掉
2016-10-28 16:21:39 1263
原创 java厚积薄发之unicode与utf-8的区别
历史:很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为”字节“。再后来,他们又做了一些可以处理这些字节的机器,机器开动了,可以用字节来组合出很多状态,状态开始变来变去。他们看到这样是好的,于是它们就这机器称为”计算机“。开始计算机只在美国用。八位的字节一共可以组合出256(2的8次方)种不同的状态
2016-10-27 15:32:01 989
转载 MongoDB索引笔记
索引,使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构,例如 employee 表的姓名(name)列。如果要按姓查找特定职员,与必须搜索表中的所有行相比,索引会帮助您更快地获得该信息。索引就像书的目录,如果查找某内容在没有目录的帮助下,只能全篇查找翻阅,这导致效率非常的低下;如果在借助目录情况下,就能很快的定位具体内容所在区域,效率会直线提高
2016-10-27 13:53:28 425
原创 如何不携带地址栏中url的参数进行刷新
我们知道常用的页面刷新方法有:1.document.location.href = document.location.href;2.window.location.href = window.location.href3.location.reload([bForceGet]) 默认为 false,从客户端缓存里取当前页。true, 则以 GET 方式,从服务端取最新的页面, 相当
2016-10-24 11:09:28 4384
原创 java厚积薄发之Comparable与Comparator的使用
一.java比较器 java的比较器有两类,分别是Comparable接口和Comparator接口。在为对象数组进行排序时,比较器的作用非常明显,首先来讲解Comparable接口。让需要进行排序的对象实现Comparable接口,重写其中的compareTo(T o)方法,在其中定义排序规则,那么就可以直接调用java.util.Arrays.sort()(或者C
2016-10-10 17:47:21 1071 1
原创 java8新概念之stream流
1.什么是stream大家可以把Stream当成一个高级版本的Iterator。原始版本的Iterator,用户只能一个一个的遍历元素并对其执行某些操作;高级版本的Stream,用户只要给出需要对其包含的元素执行什么操作,比如“过滤掉长度大于10的字符串”、“获取每个字符串的首字母”等,具体这些操作如何应用到每个元素上,就给Stream就好了!2.Stream与Collection比较
2016-08-25 18:29:14 5259
转载 isNotEmpty 和isNotBlank的区别
StringUtils方法的操作对象是Java.lang.String类型的对象,是JDK提供的String类型操作方法的补充,并且是null安全的(即如果输入参数String为null则不会抛出NullPointerException,而是做了相应处理,例如,如果输入为null则返回也是null等,具体可以查看源代码)。1. public static boolean isEmpty
2016-08-02 13:50:25 14543 1
原创 java厚积薄发之java反射机制
一.什么是java反射机制了解什么是java反射机制,首选我们先了解一下动态语言这个概念,那么什么是动态语言呢?动态语言的定义“程序运行时,允许改变程序结构或者变量类型,这种语言称为动态语言”。 从这个观点看,Perl,Python,Ruby是动态语言,C++,Java,C#不是动态语言。 尽管在这样的定义与分类下Java不是动态语言,它却有着一个非常突出的动态相关
2016-07-29 11:38:59 522
转载 spring mvc inteceptor 拦截器实现计算controller 的执行时间
什么是 spring inteceptor , SpringMVC 中的Interceptor 拦截请求是通过HandlerInterceptor 来实现的。在SpringMVC 中定义一个Interceptor 非常简单,主要有两种方式,第一种方式是要定义的Interceptor类要实现了Spring 的HandlerInterceptor 接口,或者是这个类继承实现了HandlerInterc
2016-05-20 10:51:17 10534 1
原创 java数值范围以及float与double精度丢失问题
1.java中int,float,long,double取值范围public class TestOutOfBound {public static void main(String[] args) {System.out.println(Integer.MAX_VALUE-(-Integer.MAX_VALUE)); //内存溢出System.out.println(Integer.
2016-05-19 15:15:21 20340 1
原创 freemarker 常用标签总结
1.freemarker 数字格式化freemarker数字格式化可以在两个地方设置,一个是全局的,即在freemarker.properties文件中设置number_format,还有一个是使用string指令来控制数据的输出格式。例如:${num?string('0.00')}如果小数点后不足两位,用 0 代替${num?string('#.##')}如果小数点后多余两位
2016-05-18 10:15:35 2526
转载 java内部类常见面试题汇总
1.根据注释填写(1),(2),(3)处的代码public class Test{ public static void main(String[] args){ // 初始化Bean1 (1) bean1.I++; // 初始化Bean2 (2) bea
2016-04-18 17:13:41 6971
转载 springmvc请求接收参数的几种方法
JAVA[java] view plain copy print?@RequestMapping(value= " /{id}/{str} " ) public ModelAndView helloWorld(@PathVariable String id, @PathVariable String str) { System.out.println(i
2016-04-15 20:02:36 2210
转载 ModelMap、ModelAndView和@Modelattribute的区别
首先介绍ModelMap和ModelAndView的作用 ModelMap ModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即可,他的作用类似于request对象的setAttribute方法的作用,用来在一个请求过程中传递处理的数据。通过以下方法向页面传递参数: addAttribute(String key,O
2016-04-15 20:00:36 3729
转载 Java8之Stream语法详解
1. Stream初体验我们先来看看Java里面是怎么定义Stream的:A sequence of elements supporting sequential and parallel aggregate operations.我们来解读一下上面的那句话:Stream是元素的集合,这点让Stream看起来用些类似Iterator;可以支持顺序和并行的对原Stream
2016-04-15 19:22:14 3440
原创 java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;
java代码控制台报错:java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;原因:List userids = new ArrayList<>();removeWechatUser((String[]) userids.toArray());错误原因是在将li
2016-04-15 19:12:29 12107 1
原创 js常用功能汇总
1.多个class节点遍历: $(".department").each(function() { var $this = $(this); alert($this.val()); })2.js字符串的截取:sbustr 方法返回一个从指定位置开始的指定长度的字符串stringvar.substr(start,lenth);substring 方法返
2016-04-15 19:08:38 5176
原创 js数组与字符串的相互转换方法
一、数组转字符串需要将数组元素用某个字符连接成字符串,示例代码如下:?123 var a, b; a = new Array(0,1,2,3,4); b = a.join("-"); 二、字符串转数组实现方法为将字符串按某个字符切割成若干个字符串,并以数组形式返回,示例代码如下:var s = "abc,abcd,aaa"; ss = s.split(",");// 在每
2016-04-13 23:09:44 4276
原创 java递归获取某个父节点下面的所有子节点
1.menu实体类package recursion;/** * Created by tl on 2016/4/10. */public class Menu { private String id; private String name; private String pid; public String getId() { r
2016-04-10 17:43:44 59715 10
原创 java递归算法总结
1.何为递归个人理解就是自己调用自己,直到满足一个条件结束自己调用自己的过程,这个就是递归。举一个通俗的点的例子:假设你在一个电影院,你想知道自己坐在哪一排,但是前面人很多,你懒得去数了,于是你问前一排的人「你坐在哪一排?」,这样前面的人 (代号 A) 回答你以后,你就知道自己在哪一排了——只要把 A 的答案加一,就是自己所在的排了,不料 A 比你还懒,他也不想数,于是他也问他前面的人
2016-04-10 17:30:43 24999 2
转载 我是一个线程(对理解多线程很有帮助)
第一回 初生牛犊我是一个线程,我一出生就被编了个号:0x3704,然后被领到一个昏暗的屋子里,在这里我发现了很多和我一模一样的同伴。我身边的同伴0x6900 待的时间比较长,他带着沧桑的口气对我说:“我们线程的宿命就是处理包裹。把包裹处理完以后还得马上回到这里,否则可能永远回不来了。”我一脸懵懂,“包裹,什么包裹?”“不要着急,马上你就会明白了,我们这里是不养闲
2016-04-05 22:58:05 5801 8
转载 MAC JDK版本切换
通过命令’jdk6′, ‘jdk7′,’jdk8′轻松切换到对应的Java版本:1.首先安装所有的JDk:* Mac自带了的JDK6,安装在目录:/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/下。* JDK7,JDK8则需要自己到Oracle官网下载安装对应的版本。自己安装的JDK默认路径为:/Library/Java/JavaV
2016-04-05 13:14:30 6521
原创 java数组和list互转方法
1.List转换成为数组。(这里的List是实体是ArrayList)List list = new ArrayList();list.add("1");list.add("2");final int size = list.size();String[] arr = (String[])list.toArray(new String[size]);2.数组转换成为ListS
2016-04-01 15:15:01 5226
原创 MyBatis在insert插入操作时返回主键ID的配置
很多时候,在向数据库插入数据时,需要保留插入数据的id,以便进行后续的update操作或者将id存入其他表作为外键。但是,在默认情况下,insert操作返回的是一个int值,并且不是表示主键id,而是表示当前SQL语句影响的行数。。。接下来,我们看看MyBatis如何在使用MySQL和Oracle做insert插入操作时将返回的id绑定到对象中。1.mysql in
2016-03-12 16:14:52 8991 1
原创 java线程常见面试题
1.如果你有三个线程,分别为T1,T2,T3,如何让线程T2在线程T1之后执行,在线程T3之前执行。答案:使用线程的join方法,该方法的作用是“等待线程执行结束”,即join()方法后面的代码块都要等待现场执行结束后才能执行。package com.liuan.job; public class Test { @SuppressWarnings("static-ac
2016-03-11 15:53:45 835
原创 Spring security获取当前用户
1、如果在jsp页面中获取可以使用spring security的标签页面引入标签使用: username : 即可显示当前用户。2.java代码中使用 UserDetails userDetails = (UserDetails) SecurityContextHolder.getContext().getAuthentication() .getPrincipal(
2016-02-23 20:05:13 30192
转载 httpclient 上传文件、下载文件
用httpclient4.3 post方式推送文件到服务端 准备:httpclient-4.3.3.jar;httpcore-4.3.2.jar;httpmime-4.3.3.jar标签: 代码片段(1)[全屏查看所有代码]1. [代码][Java]代码 ?12
2016-02-02 17:09:02 1207
转载 json+hibernate死循环问题的解决方法
【问题】如题所示,在我们使用hibernate框架而又需要将对象转化为json的时候,如果配置了双向的关联关系,就会出现这个死循环问题异常信息:Method public java.lang.String org.apache.commons.lang.exception.NestableRuntimeException.getMessage(int) threw an excepti
2016-02-02 17:06:10 11920 1
bootstrap时间控件
2015-11-18
ajaxfileupload.js
2015-11-16
MyBatis3.2.3帮助文档(中文版)CHM 下载
2015-11-05
Xftp安装exe
2015-10-20
拉钩网前台代码
2015-09-07
LICEcap_ha,专业制作gif工具
2015-09-07
eclispe反编译插件和工具
2015-09-07
JForum_SSO_-_JForum单点登陆原理与配置
2015-07-28
Spring+Mybatis+MySql+Maven项目源码
2015-06-29
MyEclipse2014 破解工具
2015-06-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人