温馨提示:您的每一次转载,体现了我写此文的意义!!!烦请您在转载时注明出处http://www.blogjava.net/sxyx2008/谢谢合作!!!

雪山飞鹄

温馨提示:您的每一次转载,体现了我写此文的意义!!!烦请您在转载时注明出处http://www.blogjava.net/sxyx2008/谢谢合作!!!

BlogJava 首页 新随笔 联系 聚合 管理
  215 Posts :: 1 Stories :: 674 Comments :: 0 Trackbacks

#

private void emulateShiftHeld(KeyEvent.Callback view)
{
try
{
KeyEvent shiftPressEvent 
= new KeyEvent(00, KeyEvent.ACTION_DOWN,
KeyEvent.KEYCODE_SHIFT_LEFT, 
00);
shiftPressEvent.dispatch(view);
}
catch (Exception e)
{
}
}
posted @ 2011-03-31 11:52 雪山飞鹄 阅读(3664) | 评论 (2)编辑 收藏

World Wind是什么了?自己去官方看!我也是菜鸟!
官方主页:http://worldwind.arc.nasa.gov/download.html
World Wind Java SDK:http://worldwind.arc.nasa.gov/java/
有兴趣的朋友可以下载官方的安装包,安装体验,目前最新版本为1.4    下载地址http://worldwind.arc.nasa.gov/download.html
效果图

好了,赶紧下载Java的sdk写个自己的HelloWorld程序吧
地址:http://worldwind.arc.nasa.gov/java/
下载后将gluegen-rt.jarjogl.jarworldwind.jar三个jar包添加到工程的classpath目录
并且将以下gluegen-rt.dlljogl_awt.dlljogl_cg.dll、jogl.dll文件与jogl.jar文件关联起来

接下来看代码吧:
package com.worldwind.demo;

import java.awt.Dimension;
import java.awt.Toolkit;

import javax.swing.JFrame;

import gov.nasa.worldwind.BasicModel;
import gov.nasa.worldwind.awt.WorldWindowGLCanvas;

public class HelloWorldWind extends javax.swing.JFrame {

    
private static final long serialVersionUID = 1L;

    
public HelloWorldWind() {
        
        WorldWindowGLCanvas wwd 
= new WorldWindowGLCanvas();
        
        Dimension dimension
=Toolkit.getDefaultToolkit().getScreenSize();
        
        
int width=(dimension.width-800)/2;
        
int height=(dimension.height-600)/2;
        
        
        wwd.setBounds(width, height, 
800600);
        
        
//wwd.setPreferredSize(new java.awt.Dimension(200, 200));
        this.setTitle("WorldWind Test");
        
this.getContentPane().add(wwd, java.awt.BorderLayout.CENTER);
        
this.pack();
        wwd.setModel(
new BasicModel());
        
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
    }

    
public static void main(String[] args) {
        java.awt.EventQueue.invokeLater(
new Runnable() {
            
public void run() {
                
new HelloWorldWind().setVisible(true);
            }
        });
    }
}

赶紧Run一把吧

看好了,这次是自己写的swing程序噢,鼠标拖拽体验一下!

点我下载工程代码
posted @ 2011-03-30 09:40 雪山飞鹄 阅读(2812) | 评论 (0)编辑 收藏

一、BoneCP配置文件格式(bonecp-config.xml):

<?xml version="1.0" encoding="UTF-8"?>
<bonecp-config>
  
<default-config>
   
<!--  -->
 
<property name=""></property>
  
</default-config> 
</bonecp-config> 
二、BoneCP主要配置参数
1.jdbcUrl
设置数据库URL
2.username
设置数据库用户名
3.password
设置数据库密码
4.partitionCount
设置分区个数。这个参数默认为1,建议3-4(根据特定应用程序而定)。
为了减少锁竞争和改善性能,从当前线程分区(thread-affinity)中获取一个connection,
也就是这个样子:partitions[Thread.currentThread().getId() % partitionCount]。当拥有充足的短期(short-lived)的线程时候,这个参数设置越大,性能越好。当超过一定的阀值时,连接池的维护工作就可能对性能造成一定的负面影响(仅当分区上的connection使用耗尽时)。
5.maxConnectionsPerPartition
设置每个分区含有connection最大个数。这个参数默认为2。如果小于2,BoneCP将设置为50。
比如:partitionCount设置为3,maxConnectionPerPartition设置为5,你就会拥有总共15个connection。
注意:BoneCP不会将这些connection一起创建出来,而是说在需要更多connection的时候从minConnectionsPerPartition参数开始逐步地增长connection数量。
6.minConnectionsPerPartition
设置每个分区含有connection最大小个数。这个参数默认为0。
7.acquireIncrement
设置分区中的connection增长数量。这个参数默认为1。
当每个分区中的connection大约快用完时,BoneCP动态批量创建connection,
这个属性控制一起创建多少个connection(不会大于maxConnectionsPerPartition)。
注意:这个配置属于每个分区的设置。
8.poolAvailabilityThreshold
设置连接池阀值。这个参数默认为20。如果小于0或是大于100,BoneCP将设置为20。
连接池观察线程(PoolWatchThread)试图为每个分区维护一定数量的可用connection。
这个数量趋于maxConnectionPerPartition和minConnectionPerPartition之间。这个参数是以百分比的形式来计算的。例如:设置为20,下面的条件如果成立:Free Connections / MaxConnections < poolAvailabilityThreshold;就会创建出新的connection。
换句话来说连接池为每个分区至少维持20%数量的可用connection。
设置为0时,每当需要connection的时候,连接池就要重新创建新connection,这个时候可能导致应用程序可能会为了获得新connection而小等一会。
9.connectionTimeout
设置获取connection超时的时间。这个参数默认为Long.MAX_VALUE;单位:毫秒。
在调用getConnection获取connection时,获取时间超过了这个参数,就视为超时并报异常。

三、BoneCP线程配置参数
1.releaseHelperThreads
设置connection助手线程个数。这个参数默认为3。如果小于0,BoneCP将设置为3。
设置为0时,应用程序线程被阻塞,直到连接池执行必要地清除和回收connection,并使connection在其它线程可用。
设置大于0时,连接池在每个分区中创建助手线程处理回收关闭后的connection(应用程序会通过助手线程异步地将这个connection放置到一个临时队列中进行处理)。
对于应用程序在每个connection上处理大量工作时非常有用。可能会降低运行速度,不过在高并发的应用中会提高性能。
2.statementReleaseHelperThreads
设置statement助手线程个数。这个参数默认为3。如果小于0,BoneCP将设置为3。
设置为0时,应用程序线程被阻塞,直到连接池或JDBC驱动程序关闭statement。
设置大于0时,连接池会在每个分区中创建助理线程,异步地帮助应用程序关闭statement当应用程序打开了大量的statement是非常有用的。可能会降低运行速度,不过在高并发的应用中会提高性能。
3.maxConnectionAge
设置connection的存活时间。这个参数默认为0,单位:毫秒。设置为0该功能失效。
通过ConnectionMaxAgeThread观察每个分区中的connection,不管connection是否空闲,如果这个connection距离创建的时间大于这个参数就会被清除。当前正在使用的connection不受影响,直到返回到连接池再做处理。
4.idleMaxAge
设置connection的空闲存活时间。这个参数默认为60,单位:分钟。设置为0该功能失效。
通过ConnectionTesterThread观察每个分区中的connection,如果这个connection距离最后使用的时间大于这个参数就会被清除。
注意:这个参数仅和idleConnectionTestPeriod搭配使用,而且不要在这里设置任何挑衅的参数!
5.idleConnectionTestPeriod
设置测试connection的间隔时间。这个参数默认为240,单位:分钟。设置为0该功能失效。
通过ConnectionTesterThread观察每个分区中的connection, 如果这个connection距离最后使用的时间大于这个参数并且距离上一次测试的时间大于这个参数就会向数据库发送一条测试语句,如果执行失败则将这个connection清除。
注意:这个值仅和idleMaxAge搭配使用,而且不要在这里设置任何挑衅的参数!

三、BoneCP可选配置参数
1.acquireRetryAttempts
设置重新获取连接的次数。这个参数默认为5。
获取某个connection失败之后会多次尝试重新连接,如果在这几次还是失败则放弃。
2.acquireRetryDelay
设置重新获取连接的次数间隔时间。这个参数默认为7000,单位:毫秒。如果小于等于0,BoneCP将设置为1000。
获取connection失败之后再次尝试获取connection的间隔时间。
3.lazyInit
设置连接池初始化功能。这个参数默认为false。
设置为true,连接池将会初始化为空,直到获取第一个connection。
4.statementsCacheSize
设置statement缓存个数。这个参数默认为0。
5.disableJMX
设置是否关闭JMX功能。这个参数默认为false。
6.poolName
设置连接池名字。用于当作JMX和助手线程名字的后缀。

四、BoneCP调试配置参数
1.closeConnectionWatch
设置是开启connection关闭情况监视器功能。这个参数默认为false。
每当调用getConnection()时,都会创建CloseThreadMonitor,监视connection有没有关闭或是关闭了两次。警告:这个参数对连接池性能有很大的负面影响,慎用!仅在调试阶段使用!
2.closeConnectionWatchTimeout
设置关闭connection监视器(CloseThreadMonitor)持续多长时间。这个参数默认为0;单位:毫秒。仅当closeConnectionWatch参数设置为可用时,设置这个参数才会起作用。
设置为0时,永远不关闭。
3.logStatementsEnabled
设置是否开启记录SQL语句功能。这个参数默认是false。
将执行的SQL记录到日志里面(包括参数值)。
4.queryExecuteTimeLimit
设置执行SQL的超时时间。这个参数默认为0;单位:毫秒。
当查询语句执行的时间超过这个参数,执行的情况就会被记录到日志中。
设置为0时,该功能失效。
5.disableConnectionTracking
设置是否关闭connection跟踪功能。这个参数默认为false。
设置为true,连接池则不会监控connection是否严格的关闭;设置为false,则启用跟踪功能(仅追踪通过Spring或一些事务管理等机制确保正确释放connection并放回到连接池中)。
6.transactionRecoveryEnabled
设置事务回放功能。这个参数默认为false。
设置为true时,MemorizeTransactionProxy可以记录所有在connection上操作的情况,当connetion操作失败的时候会自动回放先前的操作,如果在回放期间还是失败,则抛出异常。注意:这个功能会使连接池微弱地降低运行速度。
注:本文转自http://chirs1012f.javaeye.com/blog/805261
posted @ 2011-03-16 14:51 雪山飞鹄 阅读(4171) | 评论 (2)编辑 收藏

     摘要: BoneCP is a fast, free, open-source, Java database connection pool (JDBC Pool) library. If you are familiar with C3P0 and DBCP then you already know what this means. For the rest, this is a library th...  阅读全文
posted @ 2011-03-16 14:48 雪山飞鹄 阅读(8059) | 评论 (0)编辑 收藏

        近期项目使用flex3实现,一年多没用了,突然用到这玩意,感觉有点陌生了。今天要用代码实现flex3的全屏模式。这里有几个步骤需要注意:
        修改html-template目录下的index.template.html文件,注意添加或修改红色字体部分
        第一处:
AC_FL_RunContent(
        
"src""playerProductInstall",
        
"FlashVars""MMredirectURL="+MMredirectURL+'&MMplayerType='+MMPlayerType+'&MMdoctitle='+MMdoctitle+"",
        
"width""${width}",
        
"height""${height}",
        
"align""middle",
        
"id""${application}",
        
"quality""high",
        
"bgcolor""${bgcolor}",
        
"name""${application}",
        
"allowFullScreen","true",
        
"type""application/x-shockwave-flash",
        
"pluginspage""http://www.adobe.com/go/getflashplayer"
    );
        第二处:
AC_FL_RunContent(
            
"src""${swf}",
            
"width""${width}",
            
"height""${height}",
            
"align""middle",
            
"id""${application}",
            
"quality""high",
            
"bgcolor""${bgcolor}",
            
"name""${application}",
            
"allowFullScreen","true",
            
"type""application/x-shockwave-flash",
            
"pluginspage""http://www.adobe.com/go/getflashplayer"
    );
        第三处:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
            id
="${application}" width="${width}" height="${height}"
            codebase
="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab">
            
<param name="movie" value="${swf}.swf" />
            
<param name="quality" value="high" />
            
<param name="bgcolor" value="${bgcolor}" />
            
<param name="allowScriptAccess" value="sameDomain" />
            
<embed src="${swf}.swf" quality="high" bgcolor="${bgcolor}"
                width
="${width}" height="${height}" name="${application}" align="middle"
                play
="true"
                loop
="false"
                quality
="high"
                allowFullScreen="true"

                type
="application/x-shockwave-flash"
                pluginspage
="http://www.adobe.com/go/getflashplayer">
            
</embed>
    
</object>

         最后:

全屏AS代码:

stage.displayState=StageDisplayState.FULL_SCREEN;

退出全屏AS代码:

stage.displayState=StageDisplayState.NORMAL;
posted @ 2011-03-01 13:40 雪山飞鹄 阅读(2367) | 评论 (1)编辑 收藏

package com.future.zfs.util;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@SuppressWarnings(
"serial")
public class FileDownLoadServlet extends HttpServlet{
    
    @Override
    
protected void service(HttpServletRequest request, HttpServletResponse response)
            
throws ServletException, IOException {
        String path
=request.getParameter("filename");
        path
=new String(path.getBytes("ISO-8859-1"),"utf-8");
        download(path,request,response);
    }
    
    @SuppressWarnings(
"deprecation")
    
public HttpServletResponse download(String path,HttpServletRequest request, HttpServletResponse response) {
        
try {
            
// path是指欲下载的文件的路径。
            File file = new File(request.getRealPath("/")+"/"+path);
            
// 取得文件名。
            String filename = file.getName();
            
// 取得文件的后缀名。
            
//String ext = filename.substring(filename.lastIndexOf(".") + 1).toUpperCase();

            
// 以流的形式下载文件。
            InputStream fis = new BufferedInputStream(new FileInputStream(file));
            
byte[] buffer = new byte[fis.available()];
            fis.read(buffer);
            fis.close();
            
// 清空response
            response.reset();
            
// 设置response的Header
            response.addHeader("Content-Disposition""attachment;filename=" + new String(filename.getBytes("utf-8"),"ISO-8859-1"));
            response.addHeader(
"Content-Length""" + file.length());
            OutputStream toClient 
= new BufferedOutputStream(response.getOutputStream());
            response.setContentType(
"application/octet-stream");
            toClient.write(buffer);
            toClient.flush();
            toClient.close();
        } 
catch (IOException ex) {
            ex.printStackTrace();
        }
        
return response;
    }
}
web.xml
<servlet>
        
<servlet-name>fileDownLoadServlet</servlet-name>
        
<servlet-class>com.future.zfs.util.FileDownLoadServlet</servlet-class>
    
</servlet>
    
<servlet-mapping>
        
<servlet-name>fileDownLoadServlet</servlet-name>
        
<url-pattern>/fileDownLoadServlet</url-pattern>
    
</servlet-mapping>
<href="fileDownLoadServlet?filename=通讯录.xls">哈哈,测试文件下载</a>
posted @ 2010-12-10 17:21 雪山飞鹄 阅读(21702) | 评论 (9)编辑 收藏

     摘要: package com.future.zfs.util; import java.io.File; import java.io.IOException; import java.io.PrintWriter; import java.util.Iterator; import java.util.List; impo...  阅读全文
posted @ 2010-12-10 17:19 雪山飞鹄 阅读(5981) | 评论 (4)编辑 收藏

drop table book;
drop sequence book_seq;
drop trigger book_tri;
--创建表格
create table book
(
bookId 
integer primary key not null,
bookName 
varchar2(20),
price 
number(3)
)tablespace zfs_data
desc  book;
--创建序列
--
创建一个从10000开始每次递增为1的序列
create sequence book_seq minvalue 10000 maxvalue 9999999 increment by 1 start with 10000 ;
--创建一个触发器,用于每次插入前自动成成序列的值
create or replace trigger book_tri
  before 
insert on book for each row
  
begin
    
select book_seq.nextval into :new.bookId from dual;
  
end;
/  
commit;  

insert into book (bookName, price) values('深入浅出EXTJS',59);
insert into book (bookName, price) values('深入浅出Jquery',49);

select * from book;
posted @ 2010-12-08 14:19 雪山飞鹄 阅读(1709) | 评论 (0)编辑 收藏

     摘要: 方法一 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = req...  阅读全文
posted @ 2010-12-08 14:01 雪山飞鹄 阅读(1497) | 评论 (0)编辑 收藏

运行regedit.exe 打开注册表编辑器,定位到:HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins\WordToRQM12.Connect 键,双击右边的“LoadBehavior”,在弹出的修改值对话框中将其值从3改为2,然后关闭注册表编辑器,重新启动Word
posted @ 2010-12-08 13:58 雪山飞鹄 阅读(1149) | 评论 (0)编辑 收藏

仅列出标题
共22页: First 上一页 4 5 6 7 8 9 10 11 12 下一页 Last