摘要: 我们先来分别看一下这两个接口 Runnable: 只有一个方法run(),表示执行任务的逻辑。 Callable: 也只有一个方法call(),但是是一个有返回值的方法,这给我们提供了获取方法执行结果的可能,即使它是个异步的任务,它可以获取异常,给我们极大地便利知道任务执行失败的原因。 Runnab 阅读全文
posted @ 2017-09-24 23:19 霓羽决奕 阅读(1780) 评论(0) 推荐(0) 编辑
摘要: 1.首先在项目中引入echart.js库。 2.建立对应的放图的地方div标签 两个div分别表示一个饼图和一个折线图 3.饼图的代码: 说明: 其中的ajax请求是通过java代码获取数据库的相关数据,获取数据的相关代码如下: 4.获取数据后,通过JSON对象转换,传到前端页面,前端页面根据JSO 阅读全文
posted @ 2016-10-14 10:21 霓羽决奕 阅读(1181) 评论(1) 推荐(0) 编辑
摘要: 1"$set":用来制定一个字段值,若不存在,则创建; 一般用于点加一个字段 db.users.update({name:"joe"},{"$set":{"favorite book":"War and Peace"}}) 还可以修改一个字段 db.users.update({name:"joe"} 阅读全文
posted @ 2016-06-14 22:59 霓羽决奕 阅读(683) 评论(0) 推荐(0) 编辑
摘要: 为什么要使用修改器? 通常我们只会修改文档的一部分,这时候更新整个文档就显得很麻烦,通常是通过原子性的更新修改器来完成。 1."$set"修改器 "$set"用来指定某个字段,如果不存在,则创建。这对部分更新或者添加来说就非常方便了。 如: step1:往users数据库长如一条数据,通过JavaS 阅读全文
posted @ 2016-06-10 11:26 霓羽决奕 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 说明:来看一下关系型数据库的update语句 UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某 其中where子句就类似查询文本,定位要更改的子表,set子句类似于修改器,更新哪些内容。 1.1文档替换 就是用一个新的文档完全替换匹配的文档。用于进行大规模模式数据的迁移。 阅读全文
posted @ 2016-06-05 17:19 霓羽决奕 阅读(523) 评论(0) 推荐(0) 编辑
摘要: 一,日期相关的函数 Select to_char(sysdate,'Q') from dual;--指定日期的季度 Select to_char(sysdate,'MM') from dual;--月份 Select to_char(sysdate,'WW') from dual;--当年第几周 S 阅读全文
posted @ 2016-06-01 14:27 霓羽决奕 阅读(4082) 评论(0) 推荐(0) 编辑
摘要: 你可以使用Spring提供的validator接口进行对象的校验。Validator接口与Errors协同工作,在Spring做校验的时候,它会将所有的校验错误汇总到Errors对象中去。 来看这个简单的数据对象: 实现org.springframework.validation.Validator 阅读全文
posted @ 2016-05-17 16:35 霓羽决奕 阅读(2728) 评论(0) 推荐(0) 编辑
摘要: (1),每一个bean属性,就是一个普通的java类。 类有属性,有方法,如何交给容器管理。(注解的方式,xml方式配置) (2),通过Bean来实例化对象的方式 1.通过构造器(一般是无参的默认构造器) <bean id="exampleBean" class="examples.ExampleB 阅读全文
posted @ 2016-05-16 14:10 霓羽决奕 阅读(467) 评论(0) 推荐(0) 编辑
摘要: 强引用: 只要引用存在,垃圾回收器永远不会回收Object obj = new Object();//可直接通过obj取得对应的对象 如obj.equels(new Object());而这样 obj对象对后面new Object的一个强引用,只有当obj这个引用被释放之后,对象才会被释放掉,这也是 阅读全文
posted @ 2017-10-11 00:07 霓羽决奕 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 线程池状态 ThreadPoolExecutor内部有多个状态,理解线程池内部状态对于理解线程池原理至关重要,所以接下来看下线程池的状态: 通过调用runStateOf()方法获取当前线程池状态 通过调用workerCountOf()获取当前线程数 阅读全文
posted @ 2017-09-30 15:46 霓羽决奕 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 首先来看一下Timer类 例子如下: 运行结果如下: 运行后,前2行很快就会输出,第三行5秒后出现。 从这个例子可以看出一个典型的利用timer执行计划任务的过程如下: new一个TimerTask的子类,重写run方法来指定具体的任务 new一个Timer类,Timer.schedule(Time 阅读全文
posted @ 2017-09-30 15:45 霓羽决奕 阅读(346) 评论(0) 推荐(0) 编辑
摘要: ThreadPoolExecutor允许提供一个BlockingQueue来保存等待执行的任务。 查看结构图 我们需要关注的方法是offer(E),put(E),take() newFixedThreadPool和newSingleThreadExecutor在默认情况下将使用一个无界的队列(Lin 阅读全文
posted @ 2017-09-24 17:15 霓羽决奕 阅读(4802) 评论(1) 推荐(0) 编辑
摘要: 在jvm中,线程是一个宝贵的资源,创建与销毁都会抢占宝贵的内存资源,为了有效的重用线程,我们用线程池来管理线程,让创建的线程进行复用。 JDK提供了一套Executor框架,帮助我们管理线程,核心成员如下: 它们都在java.util.concurrent包中,是JDK并发包的核心类,其中,Exec 阅读全文
posted @ 2017-09-23 18:01 霓羽决奕 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 1.1在tomcat服务器的lib目录下加入数据库连接的驱动jar包 1.2修改tomcat服务器的conf目录下server.xml配置文件 编辑server.xml文件,添加全局JNDI数据源配置,配置如下: <GlobalNamingResources> <Resource name="Use 阅读全文
posted @ 2017-04-07 17:57 霓羽决奕 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 1.安装查看:http://ifeve.com/zookeeper-talk-quick-start/ 2.使用: Zookeeper是一个高性能的分布式应用协调服务的框架。Zookeeper=Zoo+keeper,中文直译是动物园的看守者。 Zookeeper可以用于解决很多分布式系统遇到的问题, 阅读全文
posted @ 2017-03-21 11:56 霓羽决奕 阅读(177) 评论(0) 推荐(0) 编辑
摘要: Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have ex 阅读全文
posted @ 2017-02-16 10:30 霓羽决奕 阅读(436) 评论(0) 推荐(0) 编辑
摘要: http://www.oschina.net/code/snippet_1762525_47819#68813 阅读全文
posted @ 2016-11-30 17:11 霓羽决奕 阅读(520) 评论(0) 推荐(0) 编辑