1、Eclipse 的启动画面
   A、加启动参数。如: eclipse.exe -showsplash C:\splash.bmp
        更多可参考:http://www.cnblogs.com/sharewind/archive/2007/03/11/671270.html
   B、修改默认图片。位于:plugins\org.eclipse.platform_3.3.2.R33x_v20071022 (灰色为版本号)
2、Tomcat 的虚拟目录配置
   打开 %Tomcat%\conf\server.xml 文件,在 <Host> 和 </Host> 之间加入
   <Context path="/myapp" docBase="D:\myapp" workDir="" debug="0" reloadable="true" crossContext="true" />
   更多可参考:http://blog.csdn.net/mmm123lmj/archive/2009/07/25/4378186.aspx
3、struts 的 database.properties 配置
   # Database properties file
# Oracle
# driver=oracle.jdbc.driver.OracleDriver
# url=jdbc:oracle:thin:@localhost:1521/dbname
# username=oracle
# password=oracle
# DB2
# driver=com.ibm.db2.jcc.DB2Driver
# url=jdbc:db2://localhost:50000/dbname
# username=db2admin
# password=db2
# MySQL
# dri ......
    
        
    
    1.题:java历史?
答:Java 之父Golsling 
1995 年5 月23 日 Java 诞生   
1998 年12 月 1.2 版本Java2  J2SE J2EE J2ME   
2004 年12 月 1.5 版本(5.0) Java JavaSE JavaEE JavaME
2.题:JavaSE,JavaEE,JavaME?
答:JavaSE ---Java 标准平台  
JavaEE ---企业级平台  
JavaME ---微小平台,用在资源受限的平台上
3.题:Java语言特点?
答:(1)跨平台---一次编译,到处运行  
(2) 简单---简化C++ , 取消了指针,对指针进行了上层的封装,它保证能够通过这  
个指针(引用), 来访问有效的内存单元。  
不允许多继承,使继承关系成树装图,每个类都只能由一个  
父类。java 语言的开发效率高,但执行效率低。( 相当于c++ 的55%)   
(3)纯面向对象的语言---都要放在类中  
(4)垃圾回收机制---自动垃圾收集,永远不会出现内存泄露的问题
4.题:JVM(虚拟机)?
答:java 语言是先编译后解释,java 源码是通过编译生成一种特殊的.class 的中间字节码文件,  
然后再由JVM 进行解释运行。  
(编译)(解释)  
.java -- ......
    
        
    
    import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class JavaBasic {
     public static void main(String[] args){
      StringBuffer sd = new StringBuffer();
      String hhhString="adlkll";
      Pattern pattern = Pattern.compile("[A-Za-z]*");
      Matcher matcher = pattern.matcher(hhhString);
      if (matcher.matches()){
       System.out.println("符合要求");
      } else {
       System.out.println("不符合要求");    //是否符合正则表达式内容 
      }
      
//      hhhString=hhhString.replace(" ", ",");
      String[] ss1=hhhString.trim().split(" ");
      System.out.println(ss1.length);
      for(int i=0;i<ss1.length; ......
    
        
    
    1.
public class EasyError1 {
     class Student {
           private String name;
 
           public String getName() {
              return name;
           }
 
           public void setName(String name) {
              this.name = name;
           }
           }
public List<Student> getList(List<String> names){
    List<Student> studentList=new ArrayList<Student>();
    Student student=new Student();
    for(String str:names){
   & ......
    
        
    
    今天把以前写的java代码拿出来,发现出了好多错误。调了半天,发现是版本的问题,郁闷!
可能之前我写代码的时候用的是JDK1.5,今天从网上下载JDK1.6,没成功。就草草下载了JDK1.5,结果总是提示“could not find the main class. program will exit”。我就到
window-》preference-》java-》compiler把当前的版本换成别的,看看行不行,如果不行,再换回来,多捣腾几次就好了。
另外,不知道为什么用1.5版本,我之前写的代码,生成class的,可以运行但是不能连接到网络上。当我安装上了1.6后,环境变量配置改成了1.6的,但是eclipse中的
window-》preference-》java-》compiler换成1.6的就会出现问题,仍未1.5就可继续运行。虽然最终代码能够运行,但是具体原因还是不知道,望知情者留言?
 ......
    
        
    
    用在多线程,同步变量。 线程为了提高效率,将某成员变量(如A)拷贝了一份(如B),线程中对A的访问其实访问的是B。只在某些动作时才进行A和B的同步。因此存在A和B不一致的情况。volatile就是用来避免这种情况的。volatile告诉jvm, 它所修饰的变量不保留拷贝,直接访问主内存中的(也就是上面说的A)
=========================分割线1=================================
版权声明 :转载时请以超链接形式标明文章原始出处和作者信息及本声明 
http://aleung.blogbus.com/logs/32090434.html 
在Java内存模型中,有main memory,每个线程也有自己的memory (例如寄存器)。为了性能,一个线程会在自己的memory中保持要访问的变量的副本。这样就会出现同一个变量在某个瞬间,在一个线程的memory中的值可能与另外一个线程memory中的值,或者main memory中的值不一致的情况。
 
一个变量声明为volatile,就意味着这个变量是随时会被其他线程修改的,因此不能将它cache在线程memory中。以下例子展现了volatile的作用:
public class StoppableTask extends Thread {
  private volatile boolean pleaseStop;
  public void run() {
    whil ......