<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Frog_Demon的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Frog_Demon</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Frog_Demon]]></copyright><item><title><![CDATA[quartz 定时任务，项目启动立即执行]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/89677671</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/89677671</guid><author>Frog_Demon</author><pubDate>Mon, 29 Apr 2019 16:33:39 +0800</pubDate><description><![CDATA[需求：某个定时任务在不需要手动触发，项目启动立即执行。(配置式)

quartz-config.xml


			&lt;?xml version="1.0" encoding="UTF-8"?&gt;
			&lt;beans xmlns="http://www.springframework.org/schema/beans"
			 xmlns:context="http://www....]]></description><category></category></item><item><title><![CDATA[json嵌套数据处理（fastJson,json-lib,jackJson）]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/88599438</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/88599438</guid><author>Frog_Demon</author><pubDate>Sat, 16 Mar 2019 15:59:36 +0800</pubDate><description><![CDATA[业务场景：调用API接口，获取到返回数据为JSON格式，且多重嵌套。

Json数据格式





实体类Result定义类、嵌套类



 在使用fastJson的JSON.pareseArray转换时，注意这里必须用List&amp;lt;&amp;gt;。否则会转换异常报错

com.alibaba.fastjson.JSONException: syntax error, expect {, ...]]></description><category></category></item><item><title><![CDATA[图片上传、预览、及点击图片弹出浮层查看大图]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/86630755</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/86630755</guid><author>Frog_Demon</author><pubDate>Thu, 24 Jan 2019 17:53:52 +0800</pubDate><description><![CDATA[图片上传：

html:

&amp;lt;label&amp;gt;上传图纸:&amp;lt;/label&amp;gt;



js:

var formData = new FormData();

formData.append('file', $('#txt_upLoadPictrue')[0].files[0]);//图片

 formData.append('fileNumber',fileNumber);

fo...]]></description><category></category></item><item><title><![CDATA[导出Excel数据，弹出下载选择框]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/85243604</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/85243604</guid><author>Frog_Demon</author><pubDate>Tue, 25 Dec 2018 10:14:31 +0800</pubDate><description><![CDATA[第一，在controller中注入一个HttpServletResponse  response



第二，设置响应文件流：



第三，写出去

 

                         

第五，重点：前端到controller的请求不可是ajax请求。



 

 ...]]></description><category></category></item><item><title><![CDATA[Mybatis事务]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/85157717</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/85157717</guid><author>Frog_Demon</author><pubDate>Fri, 21 Dec 2018 11:29:15 +0800</pubDate><description><![CDATA[首先事务是什么，

事务是要做的事。是并发控制单元，是自定义的操作序列。这些操作要么全部都做，全部都完成，要么全部都不做，全部都失败。

事务的经典场景：

小明向小东转账100快。这包含了“小明账户扣除100”、“小东账户增加100快”两个操作。很显然，这个两个操作必须全部完成，或者全部失败，才能保证一个完整的事务。如果“扣钱”操作成功，但是“加钱”操作失败，那么整个事务就必须回滚rollbac...]]></description><category></category></item><item><title><![CDATA[HashMap学习]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/83793981</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/83793981</guid><author>Frog_Demon</author><pubDate>Tue, 06 Nov 2018 21:05:52 +0800</pubDate><description><![CDATA[ 

jdk1.7中的hashMap底册采用数组加链表实现。

 



 jdk1.7的源码没看过，看的是jdk1.8的源码。

jdk1.8与1.7对于hashMap的实现最大的区别在于：jdk1.8HashMap底册采用数组+链表/红黑色实现。

主要看看putVal()方法，这个方法处理的逻辑比较多，包括初始化，扩容，树化。



两个版本的hashMap最大的区别是红黑树，当链表的大小超...]]></description><category></category></item><item><title><![CDATA[线程基础一]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/83178852</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/83178852</guid><author>Frog_Demon</author><pubDate>Fri, 19 Oct 2018 11:34:10 +0800</pubDate><description><![CDATA[     工作之余补充一下线程方面的知识。直接上源码：

   

package cn.qxp.test;

/**
 * 此线程会出现脏读的情况。即输出结果有可能是两个800，或者两个100.
 * 
 * 原因：th和th2是SyncThread两个不同的对象实例，
 *             在todo中的synchronized同步检查的目标是不一样的。
 * 
 *         ...]]></description><category></category></item><item><title><![CDATA[使用多线程出现： java.util.ConcurrentModificationException的问题。]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/83063702</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/83063702</guid><author>Frog_Demon</author><pubDate>Mon, 15 Oct 2018 20:16:35 +0800</pubDate><description><![CDATA[     在一个批量Insert业务中，使用多线程进行约束insert。其中出现的一个问题。



     部分数据是成功insert的。 百度得知此问题发生的原因是：在循环迭代中，如果对Vetor、ArrayList进行修改，就可能对抛出这个异常。仔细错误检查代码：entryList的作用域过大，并且，在后面做了entryList.clear的操作。对象还是那个对象，只是把里面的元素清空了而已...]]></description><category></category></item><item><title><![CDATA[记一次对HashSet浅薄的理解]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/83039927</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/83039927</guid><author>Frog_Demon</author><pubDate>Sat, 13 Oct 2018 17:05:31 +0800</pubDate><description><![CDATA[        在开发过程中，本人一直习惯使用HashMap存储相关数据，很少想到HashSet。此次遇到了HashMap中有重复元素，在双重循环取数据的时候，出现数据大量冗余。由此想到了HashSet是不能存在重复元素的。继而，深入学习了一下HashSet，对HastSet做了一点浅薄的记录。

        话不多说，学习集合框架首选得看源码。点击源码进去，告诉我你看到了什么。

     ...]]></description><category></category></item><item><title><![CDATA[工作遇到问题总结之一]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/83002225</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/83002225</guid><author>Frog_Demon</author><pubDate>Wed, 10 Oct 2018 19:50:18 +0800</pubDate><description><![CDATA[场景一：在springmvc的Controller中，使用@ResponseBody注解，返回result给前端，出现乱码问题

解决：@RequestMappering中加上produces



 

场景二： Mybatis连表查询，结果集维护

            第一步：在对应实体类已@Lazy标签设置外表，并实现get、set方法

               

       ...]]></description><category></category></item><item><title><![CDATA[Mybatis多对一、多对一关联查询]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/78439516</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/78439516</guid><author>Frog_Demon</author><pubDate>Fri, 03 Nov 2017 20:37:16 +0800</pubDate><description><![CDATA[1，新建 实体class,与student,同时创建数据库

student:

CREATE TABLE`t_student` (
  `id` int(5) NOT NULL AUTO_INCREMENT,
  `sname` varchar(10) DEFAULT NULL,
  `cid` int(5) NOT NULL DEFAULT '0',
  PRIMARY KEY]]></description><category></category></item><item><title><![CDATA[SpringMVC,Controller如何接收前端传递过来的数组]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/78411527</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/78411527</guid><author>Frog_Demon</author><pubDate>Wed, 01 Nov 2017 10:41:38 +0800</pubDate><description><![CDATA[1，前端页面：传递过去一个数组
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
%>




">

My J]]></description><category></category></item><item><title><![CDATA[getContextpath、getServletPath、getRealpath的不同]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/78407222</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/78407222</guid><author>Frog_Demon</author><pubDate>Tue, 31 Oct 2017 19:54:53 +0800</pubDate><description><![CDATA[请求url:localhost:8080/myInterceptor/user/login.jsp
1、 System.out.println(request.getContextPath());
打印结果：/myIntercetor
 2、System.out.println(request.getServletPath());
打印结果：/user/newForm.jsp
 3、 S]]></description><category></category></item><item><title><![CDATA[Quartz时间配置]]></title><link>https://blog.youkuaiyun.com/Frog_Demon/article/details/78406087</link><guid>https://blog.youkuaiyun.com/Frog_Demon/article/details/78406087</guid><author>Frog_Demon</author><pubDate>Tue, 31 Oct 2017 17:44:22 +0800</pubDate><description><![CDATA[这些星号由左到右按顺序代表 ：     *    *     *     *    *     *   *     
                              格式： [秒] [分] [小时] [日] [月] [周] [年] 
序号 说明 
  是否必填  允许填写的值 允许的通配符 
1  秒  是  0-59    , - * / 
2  分  是  0-59 
]]></description><category></category></item></channel></rss>