博文

一个简单GUI的创建(2006-05-09 11:13:00)

摘要:import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class FrameDemo1
{
 public static void main(String args[])
 {
  JFrame frame=new JFrame("My frame");
  Container c=frame.getContentPane();
  c.setLayout(new FlowLayout());
  JLabel lb=new JLabel("FrameDemo");
  JTextField tf=new JTextField("我是菜鸟 但我要飞!!!");
  JButton bt1=new JButton("Botton1");
  JButton bt2=new JButton("Botton2");
  JButton jButton1=new JButton("Botton11");
  jButton1.setBackground(Color.pink);
  jButton1.setBorder(BorderFactory.createRaisedBevelBorder());
  jButton1.setToolTipText("click me");
  jButton1.setText("I have been changde ");
  c.add(lb);
  c.add(tf);
  c.add(bt1);
  c.add(bt2);
  frame.setSize(400,100);   frame.show();
 &......

阅读全文(4825) | 评论:0

书本AddStudentFrame代码(2006-04-27 10:50:00)

摘要:import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.util.*;
import javax.swing.*;
import UI.StudentUI; class AddStudentFrame extends JFrame{
 private StudentUI userInterface;
 private JButton clearButton,writeButton;
 
 static final String JDBC_DRIVER="sun.jdbc.odbc.JdbcOdbcDriver";
 static final String DATABASE_URL="jdbc:odbc:studyDSN";
 
 private Connection connection;
 private Statement statement;
 String sqlString;
 
 String names[]={"学号","姓名","性别","年龄","所在系"
 };
 public AddStudentFrame(){
  super("add a record of students");
  initialize();
  
  userInterface=new StudentUI(names);
  getContentPane().add(userInterface,BorderLayout.CENTER);
  
  writeButton=userInterface.getDotask1Button();
  writeButton.setText("保存");
  
&n......

阅读全文(5961) | 评论:10

书本StudentUI代码(2006-04-27 09:02:00)

摘要:package UI;
import java.awt.*;
import javax.swing.*;
import javax.swing.border.*; public class StudentUI extends JPanel{
 protected JLabel labels[];
 protected JTextField fields[];
 protected JButton doTask1,doTask2;
 protected JPanel innerPanelCenter,innerPanelSouth;
 protected int size;
 
 public static final int SNO=0,SNAME=1,SSEX=2,SAGE=3,SDEPT=4;
 
 public StudentUI(String arrayString[]){
  size=arrayString.length;
  labels=new JLabel[size];
  fields=new JTextField[size];
  
  for(int count=0;count<labels.length;count++)
  labels[count]=new JLabel(arrayString[count]);
  
  for(int count=0;count<fields.length;count++)
  fields[count]=new JTextField();
  
  innerPanelCenter=new JPanel();
  innerPanelCenter.setLayout(new GridLayout(size,2));......

阅读全文(4599) | 评论:0

StringTokenizer一个例子(2006-04-25 10:31:00)

摘要:import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*; public class test extends JFrame{
 private JLabel promptLabel;
 private JTextField inputField;
 private JTextArea outputArea;
 
 
  public test(){
   super("ceshi StringTokenizer");
   Container container=getContentPane();
   container.setLayout(new FlowLayout());
   promptLabel=new JLabel("shu ru yi ge shu");
   container.add(promptLabel);
   inputField=new JTextField(20);
   
   
   
   inputField.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent event){
     StringTokenizer tokens=new StringTokenizer(event.getActionCommand());
     
     outputArea.setText("Number of elements"+tokens.countToke......

阅读全文(6684) | 评论:0

sql数据库study(配合JAVA)(2006-04-06 16:53:00)

摘要:create database study go

use study
go
create table student(
sno char(5),
sname char(10),
ssex char(2),
sage int,
sdept char(20)) insert into student values('20001','张小明','女',23,'信息系') insert into student values('20002','n2','nan',21,'jisuanji') insert into student values('20003','n3','nv',28,'xinxi') insert into student values('20004','n4','nan',18,'jisuanji')
go
create table course(
cno char(2),
cname char(16),
credit decimal(2,1)) insert into course values('c1','数据库',4)
insert into course values('c2','shuxue',2.5)
insert into course values('c3','xinxixitong',4)
insert into course values('c4','yingyu',3) create table sc(
sno char(5),
cno char(2),
grade decimal(3,0)) insert into sc values('20001','c1',91)
insert into sc values('20001','c2',92)
insert into sc values('20001','c3',93)
insert into sc values('20001','c4',94)
insert into sc values('20002','c2',81)
insert into sc values('20002','c3',80)
inse......

阅读全文(5282) | 评论:0

数据库连接简单事例(2006-04-06 16:44:00)

摘要:import java.sql.*;
import javax.swing.*; class jdbcExample1{
 public static void main(String args[]){
  try{
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
   String url="jdbc:odbc:studyDSN";
   String login="sa";
   String password="";
   
   Connection conn=DriverManager.getConnection(url,login,password);
   Statement statement=conn.createStatement();
   String sqlQuery="select * from course";
   ResultSet rs=statement.executeQuery(sqlQuery);
   
   while(rs.next()){
    System.out.print(rs.getString(1)+",");
    System.out.print(rs.getString(2)+",");
    System.out.print(rs.getInt(3)+",");
   }
   
   statement.close();
   ......

阅读全文(4766) | 评论:0

java时钟程序(图片文本筐)(2006-04-06 07:36:00)

摘要:import java.awt.*;
import javax.swing.*;
import java.util.*; //定义测试类
//所有变量名冲突的变量名串1了,不过就效果不好~~
public class TimerTest
{  
 //定义主函数
 public static void main(String[] args)
 { 
 
  //定义JFrame类的一个对象,并创建该对象
     MyTimer1 f = new MyTimer1();
     //调用MyTimer的show()方法
     f.show();
    
//----------------------------------------------------    
    
     //调用类的构造函数
  MyTimer myTimer=new MyTimer();
  
  //调用类的显示时间函数
  myTimer.displayCurrentTime();
  
  //调用类的设置时间函数
  myTimer.setCurrentTime();
  
  //调用类的显示时间函数
  myTimer.displayCurrentTime();
  
  //调用类的显示时间函数
  myTimer.displayCurrentTime......

阅读全文(10681) | 评论:4

Java基本功----Reference(2006-02-25 16:52:00)

摘要: 这是一篇一年多之前便已写就的文章,那时,因为很多Java程序员只求追随新生的事物,却连基本的概念都没有,很多讨论中,很明显是基本功不过硬,于是萌生写一个系列文章,讨论Java的基本功,下面便是在这个想法下催生出的第一篇文章。可事实上,真正完成的也只有这一篇。因为未能及时发布,它就被我遗忘在硬盘的角落中。今天,JavaEye上关于Java传值还是传引用的论战让我记起了自己曾经写过的这篇文章,愿与大家共享。  
Java基本功——Reference     有这样一种说法,如今争锋于IT战场的两大势力,MS一族偏重于底层实现,Java一族偏重于系统架构。说法根据无从考证,但从两大势力各自的社区力量和图书市场已有佳作不难看出,此说法不虚。于是,事情的另一面让人忽略了。 偏巧,我是一个喜欢探究底层实现的Java程序员,虽然我的喜好并非纯正咖啡,剑走偏锋却别是一番风味。   这是一篇一年多之前便已写就的文章,那时,因为很多Java程序员只求追随新生的事物,却连基本的概念都没有,很多讨论中,很明显是基本功不过硬,于是萌生写一个系列文章,讨论Java的基本功,下面便是在这个想法下催生出的第一篇文章。可事实上,真正完成的也只有这一篇。因为未能及时发布,它就被我遗忘在硬盘的角落中。今天,JavaEye上关于Java传值还是传引用的论战让我记起了自己曾经写过的这篇文章,愿与大家共享。 Java基本功——Reference 有这样一种说法,如今争锋于IT战场的两大势力,MS一族偏重于底层实现,Java一族偏重于系统架构。说法根据无从考证,但从两大势力各自的社区力量和图书市场已有佳作不难看出,此说法不虚。于是,事情的另一面让人忽略了。
偏巧,我是一个喜欢探究底层实现的Java程序员,虽然我的喜好并非纯正咖啡,剑走偏锋却别是一番风味。 Reference
Java世界泰山北斗级大作《Thinking In Java》切入Java就提出“Everything is Object”。在Java这个充满Object的世界中,reference是一切谜题的根源,所有的故事都是从这里开始的。 Reference是什么?
如果你和我一样在进入Java世界之前曾经浪迹于C/C......

阅读全文(3430) | 评论:3

helloworld的常见错误问题(2006-02-25 09:13:00)

摘要:问HelloWorld问题的人实在是太多了,而且经常都以“问一个最简单的问题”开头。其
实回想一下,自己也是从这个阶段过来的,说一句“你好”,真的是一个最简单的问题
吗?...//think 好了,言归正传,let's say "HelloWorld!" in java...
首先,我们要假设一下我们的平台是Windows+JDK(Linux环境下也差不多)。这个环境
是相当普遍、基础和入门的。确定已经正确安装JDK了,下一步是小心翼翼地敲入某本教
程上的HelloWorld源码,存盘,然后编译,javac ...问题来了:
* 错误1:
'javac' 不是内部或外部命令,也不是可运行的程序或批处理文件。
(javac: Command not found)
产生的原因是没有设置好环境变量path。Win98下在autoexce.bat中加入path=%path%;c:\jdk1.2\bin,Win2000下则控制面板->系统->高级->环境变量->系统变量...看到了?双击Path,在后面加上c:\jdk1.2\bin。当然我们假设JDK安装在了c:\jdk1.2目录下(有点唐僧了?)...好像还要重启系统才起作用...(//知道了!//西红柿)好,再试试!javac HelloWorld

* 错误2:
HelloWorld is an invalid option or argument.
拜托,给点专业精神,java的源程序是一定要存成.java文件的,而且编译时要写全.java呀。
OK, javac HelloWorld.java (这回总该成了吧?)

* 错误3:
HelloWorld.java:1: Public class helloworld must be defined in a file called
"HelloWorld.java".
public class helloworld{
^
这个问题嘛,是因为你的类的名字与文件的名字不一致。(谁说的,明明看到人家都有这样写的 ;( ) OK,准确地说,一个Java源程序中可以定义多个类,但是,具有pu......

阅读全文(3105) | 评论:2

不希望以后还有关于环境变量的问题——环境变量的设置图解(新手请进)(2006-02-25 07:56:00)

摘要:呵呵  各位学友好~~
在论坛待了半年多了   谢谢各位老鸟的指导使我基本有了JAVA的基础
想想自己刚开始学JAVA的时候 也确实挺辛苦的  在这里感谢《程序爱好者》论坛提供给我们这样的学习交流的机会~~~再次致谢~~~
但是现在在中国JAVA发展还不够成熟,有很多新人刚开始学JAVA的时候都不知道环境变量和当前目录是什么,在这里我代表斑竹兄具体讨论一下环境变量和当前目录的问题,希望对各位新手步入JAVA之门有点帮助~~~~(纯粹摆白的个 )


一、关于环境变量
1、JAVA需要什么样的环境变量,这些环境变量有什么作用?
    JAVA程序能够顺利编译需要两个环境变量,一个是PATH(path),一个是CLASSPATH(classpath)。那么这两个环境变量代表什么呢?或者说究竟在JAVA程序编译中有什么作用呢?这就要涉及到WINDOWS的基本知识了。在WINDOWS环境中,每一条能用的指令都保存在硬盘的“某个角落”,比如说指令NOTEPAD(WINDOWS的记事本指令,在C:\WINNT目录下),那么在DOS命令提示符下直接输入NOTEPAD就可以打开记事本了。但是一旦我们把C:\WINNT目录下的NOTEPAD.EXE这个可执行文件移开(比如说我们现在把它“剪切”到D盘根目录下)我们再在DOS提示符下直接输入NOTEPAD时就无法再打开记事本了,但是我们在DOS下改变路径输入D:\NOTEPAD(或者先输入cd D: 在输入NOTEPAD也行)就可以打开记事本了。这就是说在我们直接输入NOTEPAD的时候,其实其默认路径就是C:\WINN。假设我们要运行一个JAVA程序(hello.java)就要先把它的class文件移动到JAVA里的bin目录下  然后打开DOS,把路径改到JAVA的BIN目录下 执行java hello.class,一次无所谓 但是每次都要这样去做未免太麻烦。还好WINDOWS提供了一个PATH环境变量,他的作用就是现在这个变量的值路径中去找,如果找到了要运行的EXE就运行,否则失败。如果我们把JAVA里的bin目录这个路径赋给path那么下次我在运行ja......

阅读全文(10989) | 评论:4