2009-08-18 15:49
////设置居中(注意,要在设置窗体大小下面设置该句)
this.setLocationRelativeTo(null);
********************
String[] kecheng = {"Java","英语","数学"};
JComboBox jComboBox3 = new JComboBox(kecheng);
JComboBox jComboBox2 = new JComboBox();
**********************
int t=Integer.valueOf( k).intValue(); /////数值转化
this.year=String.valueOf(ca1.get(Calendar.YEAR)); /////字符转化
*********************
ResultSet rest=stmt.executeQuery("select 字段from表")// 显示下一条
rest.next();
*********************
'\n' 回车换行
**********************
//获取日期差,返回相差天数。
//日期格式:2005-01-01
//Author : Meanson Wang
/
static long getCompareDate(String startDate,String endDate) throws ParseException {
SimpleDateFormat formatter=new SimpleDateFormat("yyyy-MM-dd");
Date date1=formatter.parse(startDate);
Date date2=formatter.parse(endDate);
long l = date2.getTime() - date1.getTime();
long d = l/(24*60*60*1000);
return d;
}
**************************
String DATA_FORMAT="yyyy-MM-dd";
java.text.SimpleDateForma sdf=new java.text.SimpleDateForma(DATA_FORMAT);
Calendar c1=Calendar.getInstance();
c1.set
*********************
获得当前系统时间
import java.util.*;
在类里定义一个对象
Calendar ca1=Calendar.getInstance();
在void jbInit() throws Exception {里定义
this.year=String.valueOf(ca1.get(Calendar.YEAR));
this.month=String.valueOf(ca1.get(Calendar.MONTH));
this.day=String.valueOf(ca1.get(Calendar.DATE));
/////
jTextArea1.setText("日期:"+this.year+"年"+this.month+"月"+this.day +"日");
////
**************************
/////////设置焦点
jTextField1.grabFocus();
/////////设置焦点
****************************
///////////按键设置焦点
this.getRootPane().setDefaultButton(jButton1);
///////////按键设置焦点
****************************
/////////////////////转换字符为ASC2码
String str=new String("a");
char cha;
cha=str.charAt(0);
System.out.print((int)cha);
/////////////////////转换字符为ASC2码
******************************
rr.equals(ss.toString())
********************************
////////设置启动程序时哪个面板先跳出来
jTabbedPane1.setSelectedComponent(jPanel1);
******************************
///////////////////////////绑定键盘按钮(例如绑定F2)
JButton myButton=new JButton("Button1");
myButton.getInputMap().put(KeyStroke.getKeyStroke("F2"),"doSomething");
myButton.getActionMap().put("doSomething",btnAction);
*********************************
////////////////////////////////////////////
ActionListener a=new ActionListener(){
public void actionPerformed(ActionEvent ae){
System.out.println("keyPress sure");
}
};
//////////////////////////////////////////
getRootPane().registerKeyboardAction(a,KeyStroke.getKeyStroke(),);
****************************************得到从0.0到1.0的随机数
double t=Math.random();
System.out.println(t);
////////double t=Math.random()*1000/2;
*************************************************
////////////////////////////////////////////////获取一个Vector类对象数组的长度(容量)
Vector vv = new Vector();
......
int t=vv.size();
////////////////////////////////////////////////可以用此方法去得到列表框的长度(容量)
***************************************************
///////////////////////////////////////时间器的使用
ActionListener a8=new ActionListener(){
public void actionPerformed(ActionEvent ae){
//////在这里写要执行的片断
}
};
Timer t1=new Timer(10,a8);
t1.start();
******************************************
year=String.valueOf(ca1.get(Calendar.YEAR));
month=String.valueOf(ca1.get(Calendar.MONTH));
week=String.valueOf(ca1.get(Calendar.DAY_OF_WEEK));
hou=String.valueOf(ca1.get(Calendar.HOUR_OF_DAY));
min=String.valueOf(ca1.get(Calendar.MINUTE));
sec=String.valueOf(ca1.get(Calendar.SECOND));
****************************************
double y=Math.pow(double x,a);//////公式代表X的a次方等于y
****************************************
180/pi=1弧度;
1度=pi/180弧度;
*****************************************
jSlider1_stateChanged////////滑动条改变方法
******************************************
%USERPROFILE%\My Documents /////我的文档通用地址,"%USERPROFILE%"为用户信息
%USERPROFILE%\「开始」菜单 /////在开始菜单添加文件夹的地址
******************************************获得当前系统用户信息,"user.name"为其中一个键值
String t="user.name";
System.out.println(System.getProperty(t));//参见帮助文档的java.lang.System
**************************************************////判断两个密码框输入是否一致
if(jPasswordField1.getText().intern()!=jPasswordField2.getText().intern())
*************************************************************************************
////////fn是数组,判断数组中某元素是第几项,file.getName()是元素
for(int tb=0;tb<fn.length;tb++){
if(fn[tb].equals(file.getName())){i=tb;}
}
////////fn未数组,判断数组中某元素是第几项
**************************************************************************
//窗体最小化
this.setState(1);
**************************************************************************
/////////////如何利用FileWriter在文本中换行?
\r\n
*************************************************************************
///////////////如何调用本地的dll?
jni
***********************************************************************
///用java实现打开一个文件夹选择对话框
JFileChooser parseDir = new JFileChooser();
parseDir.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
parseDir.showOpenDialog(this);
String pas=parseDir.getSelectedFile().getPath();//获取选择的文件夹路径
**********************************************************************
this.pack();//调用此函数可以重新规划窗体
******************************************************************
this.setCursor(Cursor.SE_RESIZE_CURSOR);//改变鼠标指针
**************************************************************
修改替换一段文字的某个字
StringBuffer str=new StringBuffer("dsfsdfsdbdfbfdbdfbdfbdfbdfbfdb");
String str1 = str.toString();
char bChar='b';
int i;
i=str1.indexOf(bChar);
while(i>=0){
str.setCharAt(i,'哈');//把b改为哈字
i=str1.indexOf(bChar,i+1);
}
System.out.println(str);
********************************************************************
替换一段文字中的某些字符串算法
/**读取数据库内容的换行符"/n"把它们替换成Html可识别的换行符的算法*/
StringBuffer str=new StringBuffer(nr);
String str1="\n";
int numStr=str.indexOf(str1);
while(numStr>=0)
{
if(str1.length()>3){
str.replace(numStr,numStr+str1.length(),"<br>") ;
}else{
str.replace(numStr,numStr+1,"<br>") ;//在"/n"的位置中插入"<br>"
}
numStr=str.indexOf(str1);
}
System.out.println(str);
******************************************************************
删除一段文字中的某个字
StringBuffer str=new StringBuffer("打碎打碎大师傅大师傅毒素大师傅大师傅似懂非懂锁骨");
String bChar="大";//定义要删除的字符
int i;//定义一个循环变量
i=str.indexOf(bChar);
while(i>=0){//当i小于0时代表已经没有该字符串了
str.deleteCharAt(i);
i=str.indexOf(bChar);
}
System.out.println(str);//显示最终结果
*****************************************************************
//验证字符串里是否包含某个字符
StringBuffer str=new StringBuffer(jTextField1.getText());
String str1="@";
if (str.indexOf(str1) == -1)
{
JOptionPane.showMessageDialog(this,"邮箱地址无效!","确定!",JOptionPane.INFORMATION_MESSAGE);
}
*****************************************************************
//////////调用帮助文档
try{
String sss="C:\\WINDOWS\\hh.exe";//系统的chm文件浏览器路径
Runtime rt = Runtime.getRuntime();
String p=sss+" "+"F:\\编程资料\\Java文件夹\\java书\\java帮助文档\\5.0\\api.chm";
rt.exec(p);}
catch(Exception ee){}
******************************************************************
////////一次性创建多个按钮
JButton[] b=new JButton[21];
for(i=1;i<21;i++)
{
b[i]=new Button();
b[i].setFont(new Font("仿宋",0,16));
}
////////////// 创建100个标签 (写在构造函数里面)
for(i=1;i<=100;i++)
{ String t=String.valueOf(i);
JLabel t2=new JLabel(t);
contentPane.add(t2, null);
}
//////////////////////创建100个标签组
JLabel[] b2=new JLabel[100];
for(i=0;i<=100;i++){
try{
b2[i] = new JLabel(String.valueOf(i));
b2[i].setBorder(BorderFactory.createEtchedBorder());
jPanel1.add(b2[i], null);}
catch(Exception r){System.out.println(r);}
}
***************************************************************
Frame窗体去掉边框
setUndecorated(true);
****************************************************************
Timer是一个线程用来调度在后台线程中运行的计划任务的使用工具。任务可能计划只运行一次,或者以一定的时间间隔重复运行。
下面是一个定时的小程序:
/**//**
* 弹出菜单显示3秒钟后自动隐藏
*
*/
private void timerToHidden() {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
msgWindow.setVisible(false);
}
}, 3000);
}
**********************************************************
Toolkit.getDefaultToolkit().beep();//发出系统BeBe声
*********************************************************
<meta http-equiv="refresh" content="3; url=http://kang.mccse.com"> //每3秒刷新一次
*********************************************************
在jsp页中导入多个类
<%@ page import ="java.awt.event.*,java.awt.*,javax.swing.*" contentType="text/html; charset=GB2312" %>
************************************************************
(new java.util.Date()).toLocaleString();//现在时间
************************************************************
String userPass,agaPass;
...
if(userPass.matches(agaPass)==false){...} //可用matches(String)来比较两个字符串变量是否相等
*************************************************************
http://服务器IP:8080 // 局域网访问服务器
http://192.168.1.5:8080/WebModule1/jsp1.jsp
*********************************************************
request.getServerName() //获取服务器IP地址
****************************************************
<%response.setContentType("text/html; charset=gb2312" );
request.getCharacterEncoding("GB2312");
%> 可在网页对话框中输入中文存储到数据库里
**********************************************************************
<script language="javascript">window.alert('欢迎!')</script>//网页对话框
//空格
*********************************************************************
SQLServer中通用的主机名为:127.0.0.1
**************************************************************
用一下的句子代替forword可以重定向到某页面,并且url可以改变
response.sendRedirect("cliuyan.jsp");
**************************************************************
html中使用QQ留言的代码
<a target="blank" href="http://wpa.qq.com/msgrd?V=1&Uin=214392346&Site=远走高飞 47=yes">
<img alt="点击这里给我发消息" src="http://wpa.qq.com/pa?p=1:214392346:7" border="0"></a>
****************************************************************
想与某人的QQ聊天
<a target="blank" href="http://wpa.qq.com/msgrd?V=1&Uin=某人的Q号">
<img alt="点击这里给我发消息" src="http://wpa.qq.com/pa?p=1:214392346:7" border="0"></a>
***************************************************************
jsp间传递对象和值
(一)(这是真正的传递对象)
//存
String[] info={"1","2","3"}
ServletContext context = this.getServletConfig().getServletContext();
context.setAttribute("info",info);
............
//取
String[] ss=(String[])context.getAttribute("info");
(二)用session传递值再改变类型(如果只要得到对象的值而已)
//存
String[] info={"1","2","3"}
session.setAttribute("userInfo",info);
............
//取
String[] ss=(String[])session.getAttribute("userInfo");
********************************************************************************************
查询一个表的一个字段在另一个表的值用in
select * from userInfo where 用户帐号 in (select 出题老师 from themeInfo where 题目ID=11 )
******************************************************************************************
随机从一个表中抽取n行记录
select top n * from themeInfo where 所属科目='"+sub+"' and 题目类型='"+v.elementAt(i).toString()+"' order by newid()
*****************************************************************************************
在DOS命令环境变量设置中,如果要想在旧变量值后添加新值如 path=F:\jdk1.4 后添加E:\Jdk1.5
则键入命令 set path=%path%;E:\Jdk1.5
**********************************************************************************
//可以在的JFileChooser构造函数中设置的JFileChooser默认显示路径
String path="F:\";
JFileChooser chooser = new JFileChooser(path);}
**************************************************************************************
//实现记忆下拉框功能 JComboBox J。
String it=jComboBox1.getSelectedItem().toString();
for(int i=0;i<jComboBox1.getItemCount();i++){
if(jComboBox1.getItemAt(i).toString().equals(jComboBox1.getSelectedItem().toString())){
jComboBox1.removeItemAt(i);
}
}
jComboBox1.addItem(it);
**************************************************************************************************
//打开文件的方式
//先创建一个对话框对象,标题设置为“打开媒体文件”
FileDialog fd=new FileDialog(this,"打开媒体文件",FileDialog.LOAD);
//然后设置该对话框的当前目录为上一次打开的目录
fd.setDirectory(currentDirectory);
//调用show函数显示该打开媒体文件对话框
fd.show ();
*************************************************************************************************
//添加按钮事件
你也可以给Jframe增加一个按钮以及它的监听器,点击按钮改变表格的宽度:
JButton resizeButton = new JButton("Resize Third Column");
setResizeButton.addActionListener(this);
public void actionPerformed(ActionEvent e){
//检查是哪一个按钮被点击
if (e.getActionCommand().equals("Resize Third Column")){
System.out.println("Resize called - resizes third column
to 300");
table.setColumnWidth(2, 300);
//强制GUI刷新
table.invalidate();
frame.invalidate();
frame.validate();
frame.repaint();
}
********************************************************************************************************
******************************************************************************************************
清空表格
int k=model.getRowCount();
for(int i=0;i<k;i++){
model.removeRow(0);
}
********************************************************************************************************
jTa.setRowSelectionInterval(0,0);//定位到某行
**************************************************************************************************
e.getButton()==1//鼠标左键
e.getButton()==3//右键
******************************************************************************************************
让程序启动时关联文件,在main函数中写以下函数
File audioFile = new File(args[0]);//把入口类main函数的args传递给一个文件
SimpleAudioPlayer player = new SimpleAudioPlayer(audioFile);//把文件调用
**********************************************************************************************************
将图片等资源放在class文件夹里,然后类里调用
Icon full=new ImageIcon(photosee.Frame1.class.getResource("full.PNG"));
就可以找到资源,也就是把资源全部打包进应用程序里面
****************************************************
鼠标拖放的实现可参考photosee例子和“F:\编程资料\Java文件夹\网上java教程文章里\”的东西
**************************************************
java调用dos命令修改系统时间
try {
java.lang.Runtime.getRuntime().exec("cmd /c time 22:10:44");
} catch (java.io.IOException e)
{
e.printStackTrace();
}
*******************************************************************************************
图片格式转换
FileInputStream in = new FileInputStream(sourceFile);
BufferedImage image = ImageIO.read(in);
isSuccess = ImageIO.write(image, "jpg", targetFile);
试一下这段代码,这是我写的一个bmp转jpg的程序中的转换部分。
***********************************************************************************************
可通过文件名赋值给一个字符串判断文件类型
File f=new File("sfdsf.fs");
String s=f.getName();
if(s.endsWith(.jpg)){...}
***************************************************************************************
得到应用程序当前的路径
System.out.println(System.getProperty("user.dir"));
****************************************************************************************
toFront();//JFrame的这个属性可以让窗体在最前面
***************************************************************************************
这两个函数可以选中文本域里面的某一段
jTextArea1.setSelectionStart(3);
jTextArea1.setSelectionEnd(6);
******************************************************************************************
输入提示框
String s=JOptionPane.showInputDialog(null,"查找","请输入字符串");
**********************************************************************************************
new ServerSocket(8080, 1, InetAddress.getByName("127.0.0.1"));将socket绑定到某个地址
SocketAddress s=new InetSocketAddress("219.136.215.246",56610);
**********************************************************************************
在任意的数据库查询语句中输入"sp_databases",可以得到sqlserver2000数据库的数据库结果集
*************************************************************************************
JEDITORPANE 获得网页显示出来的文字
try{
System.out.println(jEditorPane1.getDocument().getText(0,jEditorPane1.getDocument().getLength()));
}catch(Exception r){}
*************************************************************************************
设置光标位置
jEditorPane1.setCaretPosition(rr); rr为int型
*************************************************************************************
监听键盘组合按下
if(e.getKeyCode()==KeyEvent.VK_C&&e.isControlDown()){
System.out.println("hello");
}
*****************************************************************************************
在一个类内可以设置系统属性名和值可在类中读取
System.setProperty("hello","123");
System.out.println(System.getProperty("hello"));
************************************************************************
java更改应用程序图标的办法
利用ResScope打开程序资源
选中程序图标
然后导入 32*32*256 的图标代替原图标就可以了
********************************************************************
可以使得滚动条自动置于底部
jta.setCaretPosition(jta.getText().length());
***********************************************************************
例子:用Dos定位到目录下并选中文件
explorer /n, /root, c:\windows\system32,/select, c:\windows\system32\notepad.exe
*******************************************************************
使用dos打开一个文件直接输入文件路径就可以了
**************************************************************
让滚动条滚到自动最后记录
yourJScrollPane.getVerticalScrollBar().setValue(999999);
****************************************************************************************
Jsp分页如下:
<%@ page language="java" import="java.util.*,java.sql.*" %>
<%@ page contentType="text/html;charset=gb2312"%>
<jsp:useBean id="cn" scope="page" class="myConnection.Conn" /><!--引用数据库操作的bean,自己完成,这里不再赘述-->
<%
int curpage=1;//当前页
int page_record=20;//每页显示的记录数
//用下面的方法(sql查询完成,速度快)
curpage=Integer.parseInt(request.getParameter("page"));//获取传递的值,需要显示的页
ResultSet rs=cn.rsexecuteQuery("select top "+page_record+" * from tablename where id not in (select top "+(curpage*page_record)+" id from tablename order by id desc) order by id desc");
//本查询语句得到的是所要显示的1000页的20条记录,大致思路为??子查询排除需要显示的记录前的所有记录,父查询则对余下的记录进行降序排列
while(rs.next) {
out.println(rs.getInt("id").toString());
}
rs.close();
%>
***************************************************************************************
删除D盘所有的_desktop.ini文件的Dos命令
del D:\_desktop.ini /f/s/q/a"
*********************************************************************************
求数组最大值
int[] array={3,5,9,4,8};
int maxNum=array[0];
for(int i=1;i<array.length;i++)
{
maxNum=java.lang.Math.max(array[i],maxNum);
}
System.out.println(maxNum);
*************************************************************************************
我的方法求最小值
int[] s={54,54,68,47,58,32,17,56,6,654};
int t=0;
for(int i=0;i<s.length-1;i++){
t=(s[i]<=s[i+1])?s[i]:s[i+1];
s[i+1]=t;
}
System.out.println(t);
******************************************************************************
设置窗体图标
frame.setIconImage(Toolkit.getDefaultToolkit().createImage("h:/h1.png"));
**********************************************************************************
获取一个文件的大文件图标
This example uses an unsupported class - - sun.awt.shell.ShellFolder - - and therefore will not work in all virtual machines.
// Create a File instance of the file
File file = new File("filename.txt");
try {
sun.awt.shell.ShellFolder sf = sun.awt.shell.ShellFolder.getShellFolder(file);
// Get large icon
Icon icon = new ImageIcon(sf.getIcon(true), sf.getFolderType());
} catch (FileNotFoundException e) {
}
******************************************************************************
去除一个组件
jPanel1.remove(jLabel1);
jPanel1.repaint();
*******************************************************************************
使用Frame的.pack();函数时,如果不想改变当前窗体大小
底层的窗格调用contentPane.setPreferredSize(contentPane.getSize());
******************************************************************************
正确的java打开文件
File f=new File(path);
Runtime.getRuntime().exec("cmd /c start "+f.getName(),null,f.getParentFile());
**********************************************************************
利用JDIC打开文件
Desktop.open(file);