知识整理[二〇一二年八月三日 星期五]

简介:

 好一段时间没写博客了。主要是我换了新环境,来到上海了,中间有段小插曲。。。具体不多说了,整理下最近的笔记。

如何卸载WINDOWS服务?

在查看“管理工具”→ “ 服务” 时会发现有一些被插件或者病毒安装的服务,首先想到的是禁用它,可是禁用后还是有些想法,比如删除文件、卸载服务。下面就简单地介绍一下如何卸载服务:

在“管理工具”→ “ 服务”里找到你要卸载的服务,双击打开它的属性,比如查看“卡巴斯基反病毒6.0个人版”的属性,可以看到如下描述:

服务名称:AVP
显示名称:卡巴斯基反病毒6.0个人版

然后打开注册表(运行regedit),依次打开HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,
在Services下找到你要卸载的服务的名称,上例中即为AVP,删除整个AVP项,重启计算机后就把该服务完全卸载了。

另外,在卸载服务前也可以把关联的文件删除,在服务的属性中“可执行文件的路径”下即为其关联的文件。

 

JAVA获取当前年份和月份?

 

 
 
  1. Calendar cal = Calendar.getInstance(); 
  2. int year = cal.get(Calendar.YEAR); 
  3. int month = cal.get(Calendar.MONTH )+1
  4.  
  5. System.out.println(year + " 年 " + month + " 月"); 

 

PHP开启GD扩展?

找到php.ini文件,在里面把extension=php_gd2.dll前面的;注释去掉
php_gd2.dll文件在php/ext下,检查它是否存在
下面一段代码用来检测你的机器是否安装了GD扩展:
<?php
if(extension_loaded('gd')) {
  echo '你可以使用gd<br>';
  foreach(gd_info() as $cate=>$value)
    echo "$cate: $value<br>";
}else
  echo '你没有安装gd扩展';
?>
 
 
php的Mysql扩展
 
 
本地配置wamp配置多个网站的方法

1. 首先将Windows/system32/drivers/etc/hosts文件打开(用记事本打开)

2. 将原来的127.0.0.1 localhost改为
127.0.0.1 localhost
127.0.0.1 nitnews      #(这个你可以自己顺便写)

3. 保存修改后的文件,如果有什么提示就允许即可

4. 启动wamp打开apache配置文件(我的wamp是在D盘装的),文件位置在wamp/bin/apache/apache2.2.8/conf/httpd.conf文件

5. 修改httpd.conf文件
找到ServerName localhost:80在前面加上#屏蔽了
找到DocumentRoot ”D:/wamp/www/”也在前面加上#屏蔽了
这个地方原来是什么样我忘了,就找下和这个相似的改成这个样,我前面配置过伪静态好像改过这里。
<Directory />
Options FollowSymLinks
#AllowOverride None
AllowOverride All

#Order deny,allow

#Deny from all

</Directory>
再找到Allow from 127.0.0.1这个改成Allow from all
再在文件最后填上
NameVirtualHost *:80

<VirtualHost *:80>

ServerName localhost

DocumentRoot ”D:/wamp/www/”

</VirtualHost>

<VirtualHost *:80>

ServerName nitnews

DocumentRoot ”D:/wamp/nitnews/”

</VirtualHost>

6. 然后重启wamp,dns client服务(在运行里输入services.msc然后找到对应服务重新启动下)

7. 测试在地址栏输入http:/nitnews/(对了,现在D:wamp下面建立一个nitnews文件夹)

8. 测试在地址栏输入http://localhost/

 

 HashMap与Hashtable的区别(这是我面试的时候遇到的问题,竟然没答上来

 

HashTable的应用非常广泛,HashMap是新框架中用来代替HashTable的类,也就是说建议使用HashMap,不要使用HashTable。可能你觉得HashTable很好用,为什么不用呢?这里简单分析他们的区别。 
1.HashTable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。

2.HashTable不允许null值(key和value都不可以),HashMap允许null值(key和value都可以)。

3.HashTable有一个contains(Object value),功能和containsValue(Object value)功能一样。

4.HashTable使用Enumeration,HashMap使用Iterator。

以上只是表面的不同,它们的实现也有很大的不同。

5.HashTable中hash数组默认大小是11,增加的方式是 old*2+1。HashMap中hash数组的默认大小是16,而且一定是2的指数。

6.哈希值的使用不同,HashTable直接使用对象的hashCode,代码是这样的:
int hash = key.hashCode();
int index = (hash & 0x7FFFFFFF) % tab.length;
而HashMap重新计算hash值,而且用与代替求模:
 
  1. int hash = hash(k); 
  2. int i = indexFor(hash, table.length); 
  3.  
  4. static int hash(Object x) { 
  5.   int h = x.hashCode(); 
  6.  
  7.   h += ~(h << 9); 
  8.   h ^= (h >>> 14); 
  9.   h += (h << 4); 
  10.   h ^= (h >>> 10); 
  11.   return h; 
  12. static int indexFor(int h, int length) { 
  13.   return h & (length-1); 


以上只是一些比较突出的区别,当然他们的实现上还是有很多不同的,比如HashMap对null的操作。

 

HQL去重复查询

HQL去重复查询:DetachedCriteria

具体用法大家网上搜,一大把。

 

JAVA数组操作(工作中遇到的,一个数组给分成每5个一组)

第一种方法:

 
  1. String[] phNums={"01584" ,"0215456" ,"034898" ,"0456464" ,"0548844" ,"065445454" ,"078112311" ,"085481212" ,"09545484" ,"102557" ,"1145484515" }; 
  2. String[] newNo= new String[5]; 
  3.  int i=0
  4.  int j=0
  5.  while(i<phNums.length ){ 
  6.       newNo[j]=phNums[i]; 
  7.        if(i==4||j==4){ 
  8.              for(int k=0;k<5;k++){ 
  9.                    if(newNo.length ==5){ 
  10.                         System. out.print(newNo[k]+"," ); 
  11.                   } 
  12.             } 
  13.             System. out.println(); 
  14.             System. out.println("-----------------------------------" ); 
  15.             newNo= new String[5]; 
  16.             j=0
  17.       } else
  18.             newNo[j]=phNums[i]; 
  19.             j++; 
  20.       } 
  21.       i++; 
  22. System. out.println(newNo[0]); 

第二种方法:

 
  1. String a[] = {"1","5" ,"3" ,"4" ,"8" ,"y" ,"6" ,"h" ,"s" ,"45" ,"89545" ,"yuqy" ,"ert" ,"tyu" ,"sdvg" ,"545546" }; 
  2.             String b[] = new String[5]; 
  3.              for(int i=0 , j=0;i<a.length;i++,j++){ 
  4.                   b[j] = a[i]; 
  5.                    if(j==4){ 
  6.                         System. out.println("获取了数组:" ); 
  7.                          for(int k=0;k<b.length;k++){ 
  8.                               System. out.print(b[k]+"," ); 
  9.                         } 
  10.                         System. out.println(); 
  11.                         System. out.println("------------" ); 
  12.                         b = new String[5]; 
  13.                         j=-1
  14.                   } 
  15.             } 
  16.             System. out.println(b[0]); 

具体的数组总结可以看熔岩的这篇博文http://lavasoft.blog.51cto.com/62575/183878

 

 

java中的“System.out.println“和“System.err.println”的区别是什么?

(1)System.out.println 能重定向到别的输出流,这样的话你在屏幕上将看不到打印的东西了,如输出到 一个txt的log日志中.

(2)而System.err.println只能在屏幕上实现打印,即使你重定向了也一样。 要说 最直接的区别的话: 就是 如果 你使用err打印出的 字符串,再eclipse的console会显示成红色的哦。 :-)   



本文转自shyy8712872 51CTO博客,原文链接:http://blog.51cto.com/shuyangyang/952574,如需转载请自行联系原作者


相关文章
|
C#
C#得到某月最后一天晚上23:59:59和某月第一天00:00:00
C#得到某月最后一天晚上23:59:59和某月第一天00:00:00
197 0
C#得到某月最后一天晚上23:59:59和某月第一天00:00:00
|
SQL 存储 消息中间件
Java开发八月七号上午面试
Java开发八月七号上午面试
132 0
我的工作日报 - 2020-9-15 星期二
我的工作日报 - 2020-9-15 星期二
83 0
我的工作日报 - 2020-9-15 星期二
|
弹性计算 缓存 Linux
第一天笔记
一.创建资源(实例) 二.远程连接ECS服务器 三.安装vsftpd 四.配置vsftpd 五.客户端测试
美国之行第一天(r12笔记第50天)
   经过长途的劳顿,终于到达了美国的Newark机场,要说是4月30日还是5月1日到,说起来真是绕口。大体意思就是北京时间4月30日下午3点多出发,美国时间4月30日下午5点多到达,再简而言之,就是美国时间比中国时间晚12个小时,这边现在是4月30日晚上,而北京已经到了5月1日的大中午。
1476 0
春花三月
图片发自简书App 图片发自简书App 图片发自简书App
719 0
2014最后一天到2015新年第一天凌晨4加班中
2014最后一天到2015新年第一天凌晨4加班中
984 0
|
C++ 人工智能
2014秋C++第11周项目5参考-当年第几天
课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。 【项目5-当年第几天】定义一个函数,其参数为年、月、日的值,返回这一天为该年的第几天。要求在main函数中输入年月日,然后调用这个函数求值,并在main函数中输出结果。 int days(int y,
960 0