1.Ê×ÏÈдһ¸öȨÏÞ¹ýÂËfilterÀà,ʵÏÖFilter½Ó¿Ú
/*Ê×ÏÈдһ¸öȨÏÞ¹ýÂËfilter*/
import javax.servlet.Filter;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.FilterChain;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletResponse;
public class RightFilter
implements Filter {
public void init(FilterConfig filterConfig) throws ServletException {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse res = (HttpServletRespons ......
import java.util.Date;
class Dog{
private String name;
private Date birthday;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
}
public class Cat {
/**CatÀàÖк¬ÓÐnameºÍbirthdayÁ½Ë½ÓгÉÔ±±äÁ¿£¬ÇÒÖØÐ´ÁËequals·½·¨ºÍhashCode·½·¨
*
* @param name ºÍ birthday
*
*/
private String name;
private Date birthday;
public Cat(){}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birt ......
ÕýÔò±í´ïʽÔÚ×Ö·û´®´¦ÀíÉÏÓÐ×ÅÇ¿´óµÄ¹¦ÄÜ£¬sunÔÚjdk1.4¼ÓÈëÁ˶ÔËüµÄÖ§³Ö
ÏÂÃæ¼òµ¥µÄ˵ÏÂËüµÄ4ÖÖ³£Óù¦ÄÜ£º
²éѯ£º
ÒÔÏÂÊÇ´úÂëÆ¬¶Î£º
String str="abc efg ABC";
String regEx="a|f"; //±íʾa»òf
Pattern p=Pattern.compile(regEx);
Matcher m=p.matcher(str);
boolean rs=m.find();
Èç¹ûstrÖÐÓÐregEx£¬ÄÇôrsΪtrue£¬·ñÔòΪflase¡£Èç¹ûÏëÔÚ²éÕÒʱºöÂÔ´óСд£¬Ôò¿ÉÒÔд³ÉPattern p=Pattern.compile(regEx,Pattern.CASE_INSENSITIVE);
ÌáÈ¡£º
ÒÔÏÂÊÇ´úÂëÆ¬¶Î£º
String regEx=".+\(.+)$";
String str="c:\dir1\dir2\name.txt";
Pattern p=Pattern.compile(regEx);
Matcher m=p.matcher(str);
boolean rs=m.find();
for(int i=1;i<=m.groupCount();i++){
System.out.println(m.group(i));
}
ÒÔÉϵÄÖ´Ðнá¹ûΪname.txt£¬ÌáÈ¡µÄ×Ö·û´®´¢´æÔÚm.group(i)ÖУ¬ÆäÖÐi×î´óֵΪm.groupCount();
·Ö¸î£º
ÒÔÏÂÊÇ´úÂëÆ¬¶Î£º
String regEx="::";
Pattern p=Pattern.compile(regEx);
String[] r=p.split("xd::abc::cde");
Ö´Ðкó£¬r¾ÍÊÇ{"xd","abc","cde"}£¬Æäʵ·Ö¸îʱ»¹Óиú¼òµ¥µÄ·½·¨£º
String str="xd::abc::cde";
String[] r=str.split("::");
Ìæ»»£¨É¾³ý£©£ ......
ÌâÄ¿¶¼ºÜ¼òµ¥,µ«ÓÐʱºòÈÃÄãÓñÊÍêÕûµÄд³öÀ´È´²»ÄÇôÈÝÒ×ÁË.
1.±éÀúÎļþ¼Ð(±»Õâ¸öÌâÄ¿¿¼ÁËÁ½´Î)
import java.io.File;
public class ListFile {
public static void main(String[] args) {
// TODO Auto-generated method stub
String path = "C:/Inetpub";
File f = new File(path);
list(f);
}
public static void list(File f){
if(f.isDirectory()){
File[] files = f.listFiles();//listFiles·½·¨
for(int i= 0;i<files.length;i++)
list(files[i]);
}
else
System.out.println(f.getName());
}
}
2.2³ËÒÔ8ÓøßЧµÄ·½·¨
2<<3 (±ÊÊÔʱºò±»ÎÒд³É2<<<3,javaÀïûÕâ¸öÔËËã·û)
3.µ¥Àýģʽ(Õâ¸öÒ²¿¼ÁËÁ½´Î)
public class Singleton {
private static Singleton _intance = null;
private Singleton() {
}
public synchronized static Singleton getInstance() {
if (_intance == null) {
_intance = new Singleton();
}
return _intance; ......
ÎÄÕÂÓÃʵÀý´úÂëչʾÁËJavaÖжàÏ̷߳ÃÎʹ²Ïí×ÊÔ´
ʱÏß³Ìͬ²½
µÄÖØÒªÐÔ¡£
·Ö±ðͨ¹ýÔÚÁ½¸öÏß³ÌÖÐͬʱ·ÃÎÊ(µ÷ÓÃget_id*·½·¨)¾¹ýͬ²½´¦Àí(lock¼°Synchronized)µÄ¹²Ïí×ÊÔ´(tmp)¼°Î´¾¹ýͬ²½´¦ÀíµÄ¹²Ïí×ÊÔ´(tmp)À´ËµÃ÷ͬ²½´¦ÀíµÄµÄ×÷Óá£
mainÖзÖÁ½²¿·Ö:
1£©Ç°°ë²¿·Ö£¬non-synchronization²¿·ÖÓÃÀ´²âÊÔûÓÐ×öͬ²½´¦ÀíµÄ´úÂë¶Î£¬ÔËÐнá¹ûÓ¦¸ÃÊÇ
After thread #1 call get_id(), id=1
After thread #2 call get_id(), id=1
2£©ºó°ë²¿·Ö£¬synchronization²¿·ÖÓÃÀ´²âÊÔ×ö¹ýͬ²½´¦ÀíµÄ´úÂë¶Î£¬ÔËÐнá¹ûÓ¦¸ÃÊÇ
After thread #1 call get_id(), id=1
After thread #2 call get_id(), id=2
²Î¿¼×ÊÁÏ£º
-1-¹ØÓÚsleepºÍwaitÇø±ð¿´Ò»ÏÂÕâ¸ö: http://wurd.javaeye.com/blog/174563¡£
-2-¹ØÓÚsynchronized¿ÉÒÔ¿´Ò»ÏÂÕâÆª£ºhttp://www.wangchao.net.cn/bbsdetail_148670.html£¬±È½ÏÃ÷ÁË¡£
-3-¹ØÓÚJavaÏß³Ìͬ²½¿ÉÒÔ¿´Ò»ÏÂÕâ¸ö£ºhttp://lavasoft.blog.51cto.com/62575/27069£¬ºÜÏêϸ¡£
/********************************************************************************
*FileName: Thread_sync.java
*Date: 2010/01/12
*Intention: Test thread synchronization tools in ......
java.io.InputStreamµÄread()·½·¨ÃèÊö£º
If no byte is available because the end of the stream has been reached, the value -1 is returned.
µ½´ïÁ÷µÄÄ©Î²Õæ»á·Å»Ø-1Âð£¿
Îļþ¶ÁдÖпÉÒÔ·µ»Ø-1
SocketͨѶÔòÓÐһ˵£¬ºÜÆæ¹ÖÎÒ·¢ÏÖcÓïÑÔËÆºõ¶Áµ½Êý¾ÝÁ÷½áβ¿ÉÒԵõ½-1£»¶øJavaÖÐÔò±È½ÏÄѵõ½-1£¬¶Á²»µ½Êý¾Ýʱºòread()»áÒ»Ö±×èÈûÖÐ,´ÓJDK1.4ºóºÜ¶àÈËÊÇÓÃjava.nio,ÄÇÊÇÁíÒ»¸ö»°Ìâ¡£
¶ÁÈ¡socketÁ÷ÖÐÊý¾Ý£¬¸ù¾Ý-1ÅжÏÊDz»ÏÖʵµÄ£¨Í¨³£¶¨Òå¸÷×ÔͨѶÐÒ飩£¬ÕâÀïûÓп¼ÂÇÍøÂç¶ÏµôÇéÐΣ¬Ö±½Ó¶ÁÈ¡Êý¾Ý£¬¹Ø¼üÎÊÌâ¾ÍÊÇ¿¼ÂÇʲôʱºòÍ˳öÑ»·£¬²»ÔÚ¶ÁÈ¡Êý¾Ý£¬·ñÔòread()×èÈû¡£Ë¼Â·£ºÓÃÒ»´Î¶Á1024×Ö½ÚºâÁ¿£¬×îºóÒ»´ÎûÓжÁÂú»òÕ߸պöÁÂúʱºò£¬±íʾÁ÷ÖÐûÓÐÊý¾ÝÁË¡£
½ÓÊÕ¶Ë´úÂëÆ¬¶Î£º
InputStream is = socket.getInputStream();
int len = 0;
byte[] buf = new byte[1024];
StringBuffer sbf = new StringBuffer(); ......