- 浏览: 1048127 次
- 性别:
- 来自: 上海
最新评论
文章列表
新建立一个Web Project, 含有web.xml
[html] view plaincopy
01.<?xml version="1.0"encoding="UTF-8"?>
02.<web-app id="WebApp_ID" version="2.4"xmlns="http://java.sun.com/xml/ns/j2ee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-insta ...
今天在做一个项目的时候用到了Spring的定时计划任务。这是Spring的特色功能,可以根据设置在特定的时间或间隔时间做特定的事。
下面给出一个例子:
[java] view plaincopy在CODE上查看代码片派生到我的代码片
01.package net.csdn.blog.cha ...
JAVA 反射的应用还是比较多,这里会对反射的一些原理进行介绍,然后我们才知道如何使用和优化。至于反射的使用介绍,这里就不在过多叙述了,API 上都介绍得有。
要了解JAVA 反射的原理,我们还得对类在虚拟机中的一些知识做简要介绍...
一、类文件的结构:
1.1 虚拟机加载Class文件过程:
在JVM 类加载机制的博客里面我介绍过整体流程,这里仅仅介绍加载时相关部分。
在我们启动一个类,或者其他方式加载一个类的时候,会通过类的全限定名获取该类的二进制流,然后将字节流所代表的的静态存储结构转化成方法区的运行时数据结构,然后会生成一个代 ...
同步就是许多线程同时用一个资源啥的哦,一个在用别的就要等,异步就相反了,可以不用等待下面这是人家的话:同步:发送一个请求,等待返回,然后再发送下一个请求 异步:发送一个请求,不等待返回,随时可以再发送下一个请求 同步可以避免出现死锁,读脏数据的发生,一般共享某一资源的时候用,如果每个人都有修改权限,同时修改一个文件,有可能使一个人读取另一个人已经删除的内容,就会出错,同步就会按顺序来修改。异步则是可以提高效率了,现在cpu都是双核,四核,异步处理的话可以同时做多项工作,当然必须保证是可以并发处理的。这些都是对的。同步和异步最大的区别就在于。一个需要等待,一个不需要等待。比如广播,就是一个异步例子 ...
maven出现感叹号的原因
产生原因:
因为一些maven管理的jar没能正确下载。
先查看buildpath,找问题的jar包,之后再一个个解决
对这些有问题的jar,是因为当前的maven仓库无法找到,所以可以通过如下方法添加能找到相应jar的maven仓库:
1.在google中直接搜索相应jar,比如:jmxri-1.2.1.jar
2.在搜索结果中找到有这个jar的maven仓库,并加入到setting.xml中。
3.重新对项目进行 右键 - maven - update dependencies。
//获得当天0点时间
public static int getTimesmorning(){
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.MILLISECOND, 0);
return (int) (cal.getTimeInMillis()/1000);
}
//获得当天24点时间
public static ...
1.Hibernate是如何连接数据库
主要是通过hibernate.cfg.xml配置文件中的配置
在这个文件中定义了数据库进行连接所需要的信息,包括JDBC驱动、用户名、密码、数据库方言等,
configuration类借助dom4j的XML解析器解析设置环境,然后使用这些环境属性来生成 SessionFactory。这样这
个sessionFactory生成的session就能成功获得数据库的连接。
2.Hibernate是如何进行数据库写操作
对数据库的写操作包括保存、更新和删除,当保存一个POJO持久对 ...
一般来说,用Calendar做日期处理的时候,都习惯于使用add方法:
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.SECOND, 1);
最近代码Review的时候看到有人用set方法来做日期的处理:
Calendar calendar = Calendar.getI ...
、Date and its subclasses:
java.util.Date
java.sql.Date
java.sql.Timestamp
2、The calendar and time zone classes:
java.util.Calendar
java.util.GregorianCalendar
java.util.TimeZone
java.util.SimpleTimeZone //(for use with the Gregorian calendar only)
3、The formatting and parsing classes:
java ...
其实对于list,只能通过遍历来查找,对于数据不大,性能上没问题。
要是数据很多,应该优先考虑hashmap,而不是用list来存放数据
查list中符合条件的对象
binarySearch(List<? extends T> list, T key, Comparator<? super T> c)
使用二分搜索法搜索指定列表,以获得指定对象。
Spring中Quartz的配置
Quartz是一个强大的企业级任务调度框架,Spring中继承并简化了Quartz,下面就看看在Spring中怎样配置Quartz:
首先我们来写一个被调度的类:
package com.kay.quartz;
public class QuartzJob
{
public void work()
{
System.out.println("Quartz的任务调度!!!");
}
}
Spring的配置文件:
<?xml version="1.0" enco ...
//降序
Collections.sort(listFollowBuddy,new Comparator<Buddy.FollowBuddy>(){
@Override
public int compare(Buddy.FollowBuddy b1, Buddy.FollowBuddy b2) {
int r=0;
if(b1.getRecmdLevel()!=null&&b2.getRecmdLevel()!=null){
...
我会给大家介绍3种不同的实现方法:
1.普通thread实现
2.TimerTask实现
3.ScheduledExecutorService实现
一、普通thread
这是最常见的,创建一个thread,然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果。这样可以快速简单的实现,代码如下:
复制代码 代码如下:
public class Task1 {
public static void main(String[] args) {
// run in a second
final long timeInterval = 1000;
Runna ...
package com.mintcode.jkys.util;
import hirondelle.date4j.DateTime;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.TimeZone;
public abstract class DateUtil {
p ...
//方法 一 System.currentTimeMillis();
//方法 二 Calendar.getInstance().getTimeInMillis();
//方法 三 new Date().getTime(); 最近做监控系统,发现代码中有前两种方法,然后突然有了一个想法,到底哪个更快呢?然后做了如下实验:import java.util.Calendar; import java.util.Date; public class TimeTest { private static long _TEN_THOUSAND=10000; p ...