首页 \ 问答 \ JAVA基础需要掌握哪些知识?

JAVA基础需要掌握哪些知识?

JAVA基础需要掌握哪些知识? 掌握了哪些知识才算是把JAVA的基础都学明白了???    回答稍微详细点 谢谢 刚学JAVA,是个菜鸟。我的底子相当弱了,C语言曾经学过,但是现在基本什么都忘了。象你们说的API什么的基本上都不知道啥意思。。。在网上看别人说学JAVA必须把基础打好,但是真不知道JAVA基础到底包含哪些知识?也去听了两节JAVA的几节补习班,就讲了些语法,象我这种新手,应该看一些什么书才能快速点入门啊(简单些的)听别人说的买了本JAVA核心技术I,里面是真有些看不明白,很多知识都不知道是什么意思。专业术语太多了,还没注释。 希望各位大佬们给小弟提供些菜鸟学习的经验,让我少走些弯路,回答详细些 可以追加分的哈 ^0^
更新时间:2023-07-30 14:07

最满意答案

是自己编的 可以引用 连接池思想就是这个啊 
不过你可以下载 已经编好的连接池 上面有API 自己可以按照这个思想 就回用 了; 

import java.io.FileInputStream;

public class ConnectionPool{
   private Vector<Connection> pool;
   private String url;
   private String username;
   private String password;
   private String driverClassName;
// 连接池的大小,也就是连接池中有多少个数据库连接。
   private int poolSize = 1;

   private static ConnectionPool instance =null;
//私有的构造方法,禁止外部创建本类的对象。
   
// 使用了设计单子模式
   private ConnectionPool(){
      init();   
   }

// 返回当前连接池的一个对象
   public static ConnectionPool getInstance(){
     if(instance==null){
        instance=new  ConnectionPool();   
     }
      return instance;
    }

//连接池初始化方法,读取属性文件的内容,建立连接池中的初始连接 
    private void init(){
    pool= new Vector<Connection>(poolSize);
    addConnection();
   }

//返回连接到连接池中
   public synchronized void release(Connection conn){
      pool.add(conn);  
  }
// 关闭连接池中的所有数据库连接
  public synchironized void closePool(){
    for(int i=0;i<pool.size();i++){
       try{
            ((Connection)pool.get(i)).close(); 
        }catch(SQLExcepiton e){
          e.printStachTrace();
        }
         pool.remove(i);
       }
    }

/**
*   返回连接池中的一个数据库连接
*/
   public synchronized Connection getConnection(){
      if(pool.size()>0){
       Connection conn = pool.get(0);
       pool.remove(conn);
       return conn;
      }else{      
       return null;     
      }
    }

// 在连接池中创建初始设置的的数据库连接

  private void addConnection(){
    Connection conn = null;
      for (int i=0;i<poolSize;i++){
     
      try{
         Class.forName(driverClassName);        
         conn=java.sql.Drivermanager.getConnection(url,username,password);   
         pool.add(conn);         
         }catch(ClassNotFoundException e){
            e.printStachTrace(); 
         }catch(){}
   }
   
   
}





}

其他回答

所谓连接池,就是一个存放很多不断开数据库链接的java.sql.connection对象而已
在外部调用时,从池中取出一个空闲的connection对象,而释放链接也不过只是把connection对象放回池中而不断开链接,网上现在有很多简单的连接池的例子源代码,可以搜索一下
我给你视频教程。很详细的。
看下tomcat源码就知道了
冒得问题?

给个网址给你,希望你有所收获

 http://www.verycd.com/topics/215898
因为工作需要要使用到连接池,所以拜读了互联网上众多前辈的文章,学了不少经验,这里想做一个小结,加上自己的想法和在一起,希望能给大家一些帮助。 




  目的: 




消除数据库频繁连接带来的开销和瓶颈。 


  解决方案: 




不过多的限制用户的使用,既不能太多的要求用户按规定的方法得到和使用数据库连 


尽量保持用户的习惯 


  目前的很多方法都是要求用户只能按规定方法使用连接,不能使用直接关闭数据连接的方法。解决办法就是使用代理类,来中间解决。可以参考 http://www-900.ibm.com/developerWorks/cn/java/l-connpoolproxy/index.sHTML 






能维护连接的正常状态 






要求用户按规定的方法得到和使用数据库连 


尽量保持用户的习惯 


  目前的很多方法都是要求用户只能按规定方法使用连接,不能使用直接关闭数据连接的方法。解决办法就是使用代理类,来中间解决。可以参考 http://www-900.ibm.com/developerWorks/cn/java/l-connpoolproxy/index.sHTML 






能维护连接的正常状态 


  因为针对数据库连接创建的资源,如果不能及时的释放,就会影响下一次数据连接的使用。例如在sql 2k中,一个连接不同创建多条Statement否则操作时会有数据连接占线的异常,所以必须在归还连接以后释放这些资源

相关问答

更多

相关文章

更多

最新问答

更多
  • 获取MVC 4使用的DisplayMode后缀(Get the DisplayMode Suffix being used by MVC 4)
  • 如何通过引用返回对象?(How is returning an object by reference possible?)
  • 矩阵如何存储在内存中?(How are matrices stored in memory?)
  • 每个请求的Java新会话?(Java New Session For Each Request?)
  • css:浮动div中重叠的标题h1(css: overlapping headlines h1 in floated divs)
  • 无论图像如何,Caffe预测同一类(Caffe predicts same class regardless of image)
  • xcode语法颜色编码解释?(xcode syntax color coding explained?)
  • 在Access 2010 Runtime中使用Office 2000校对工具(Use Office 2000 proofing tools in Access 2010 Runtime)
  • 从单独的Web主机将图像传输到服务器上(Getting images onto server from separate web host)
  • 从旧版本复制文件并保留它们(旧/新版本)(Copy a file from old revision and keep both of them (old / new revision))
  • 西安哪有PLC可控制编程的培训
  • 在Entity Framework中选择基类(Select base class in Entity Framework)
  • 在Android中出现错误“数据集和渲染器应该不为null,并且应该具有相同数量的系列”(Error “Dataset and renderer should be not null and should have the same number of series” in Android)
  • 电脑二级VF有什么用
  • Datamapper Ruby如何添加Hook方法(Datamapper Ruby How to add Hook Method)
  • 金华英语角.
  • 手机软件如何制作
  • 用于Android webview中图像保存的上下文菜单(Context Menu for Image Saving in an Android webview)
  • 注意:未定义的偏移量:PHP(Notice: Undefined offset: PHP)
  • 如何读R中的大数据集[复制](How to read large dataset in R [duplicate])
  • Unity 5 Heighmap与地形宽度/地形长度的分辨率关系?(Unity 5 Heighmap Resolution relationship to terrain width / terrain length?)
  • 如何通知PipedOutputStream线程写入最后一个字节的PipedInputStream线程?(How to notify PipedInputStream thread that PipedOutputStream thread has written last byte?)
  • python的访问器方法有哪些
  • DeviceNetworkInformation:哪个是哪个?(DeviceNetworkInformation: Which is which?)
  • 在Ruby中对组合进行排序(Sorting a combination in Ruby)
  • 网站开发的流程?
  • 使用Zend Framework 2中的JOIN sql检索数据(Retrieve data using JOIN sql in Zend Framework 2)
  • 条带格式类型格式模式编号无法正常工作(Stripes format type format pattern number not working properly)
  • 透明度错误IE11(Transparency bug IE11)
  • linux的基本操作命令。。。