WEB开发网
开发学院WEB开发Jsp Java 基础常用功能语句 阅读

Java 基础常用功能语句

 2009-11-24 21:01:42 来源:WEB开发网   
核心提示:2009-08-18 15:49设置居中(注意,要在设置窗体大小下面设置该句)this.setLocationRelativeTo(null);String[] kecheng = {"java","英语","数学"}; JComboBox jComboBox
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);

Tags:Java 基础 常用

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接