博文

如何学好J2ME(2006-04-13 13:28:00)

摘要: 来源: J2ME开发网 作者: mingjava 日期: 2005-6-2 10:17:10        现在工作很忙,最近没有时间写技术文章了。因此今天谈谈自己学习J2ME的一些心得。希望对大家有所帮助。同时欢迎大家谈谈自己的感受! 具备良好的java语言基础,不要还没有学习java语言就拿起一本J2ME的书来看。这样效果并不好,相反如果你有良好的java语言基础的话,J2ME就显得比较容易掌握!
如果你决定开始学习J2ME了,那么首先你应该清楚J2ME的体系结构是什么样的。当你真正清楚了Configuration和Profile的关系、了解了CDC和CLDC的区别后,那么你可以开始编写自己的HelloWorldMIDlet了
选择优秀的开发环境,J2ME的开发环境比较灵活。我推荐使用Eclipse和EclipseME插件。因为Eclipse的插件非常丰富且灵活,当你开发联网应用程序的时候安装Lomboz就可以了。当然你也可以选择Jbuilder等IDE,但是不推荐记事本!
在编写代码之前,应该多读一下好的代码。毕竟MIDlet的写法和一般的java Application不是很一样。推荐WTK中的Demo程序。
MIDP的API doc比较少,每个类的方法也很少。如果有时间的话,每天看个4-5个。这会对你帮助很大。毕竟它的API和J2SE的并不一样,只是它的子集,不应该想当然的使用。
清楚MIDP中高级UI和低级UI类的使用和区别,在你做用户界面的之前,思考好什么符合你的要求,推荐使用高级UI,这样更简单、可移植性更好。但是需要使用Canvas的时候不要犹豫,大胆使用!清楚高级事件和低级事件处理的机制。
在开发应用程序的时候尽量使用MVC模式,这样扩展性出色。
彻底掌握Record Management System,这是MIDP的一个重要子集。实现数据持久性存储不可缺少的系统。善于使用RecordFilter和RecordEnumeration来简化RMS的操作,在我的blog里面有一系列的关于RMS的文章,有时间就看看吧!
重视线程,如果你还不真正清楚线程的时候的话,那么赶快找资料看看吧。在J2ME的开......

阅读全文(3558) | 评论:1

书上的异常程序(2006-04-13 10:21:00)

摘要:import java.io.*; class JavaThrows{
 public int compute(int x) throws ArithmeticException{
  int z=100/x;
  return z;}
  
  public void method1(){
   int x;
   while(true){
   try{
    x=System.in.read();
    x=x-48;
    x=compute(x);
    System.out.println(x);}
    catch(IOException ioe){
     System.out.println("read error");}
     catch(ArithmeticException e){
      System.out.println("devided by 0");}
   }}
   
   public static void main(String args[]){
    JavaThrows t1=new JavaThrows();
    t1.method1();}
 
 }......

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

吐血总结关于找工作的20条经验!!! (2006-04-09 16:24:00)

摘要:吐血总结关于找工作的20条经验
以下信息,由上海求职客栈www.qzkz.com为你收集整理,希望对你有用! 04年毕业,还没有单干的资本,我分析我自己也不适合单干,一直在打工,也倾向于一辈子打工。我工作快两年了,回顾一下自己的经历,写了点东西。大家也一起来说说经验吧,共同交流一下,互相促进,增长一点本领。
   凡是跟帖回复的,写出真实经历的,揭露无良公司假招聘手法的,表扬优秀雇主的,谴责恶劣雇主的,能给版友们启发的,介绍你现在所在的城市的人力资源状况的,……,识字不疯狂同志都向您表达崇高的敬意。下面就是我的文字了。
  
  
   经验一:光鲜的招聘现场背后不一定代表一个正规友善、蓬勃向上的公司。比如2004年初我经历过一个大型**超市,它很快就倒闭了,招聘现场非常热闹,招聘手法非常有现代感--但是,两个月后,这家公司倒闭了。所以判断一个公司的实力,最好还是上网查一下、到公司问一下,像这个公司的供货商或者合作伙伴打听一下,绝人不能看招聘时的场面或者招聘人员的自我宣传。
  
   经验二:招聘人员的高素质,不代表将来直接和你一起工作的人同样素质高;很多朋友都遇到过这样的问题,好不容易看到了一个知情达理的HR,谈得也很好。去工作了以后,才发现那个公司很乱套,除了那个HR以外的人员都非常差,甚至你会发现那个HR也很差。
  
   经验三:经常招聘的公司,基本都不好地方,多数还有圈套。广为人知的就是**证券、**建材、**保险,别看他们还是上市公司,骗起人来都是一套一套的。在国外店越大越得谨慎,但是目前国内越大的店越具有欺负人的潜质,还没人管,**建材就是典型。
  
   经验四:招聘人员夸夸其谈的、使用煽动性语言的,多数都是陷阱。这样的有很多,一般都是几个穿着西装领带的人在招聘现场唾沫横飞,职位一般都是销售,许诺只要你能干,月薪3000、5000、10000,甚至100000都不在话下。比较出名的还有**保险的"保险,永不失业的朝阳产业",靠,如果是永不失业的朝阳产业,你怎么还每周都到人才市场招人?
  
   经验五:如果你不喜欢现在的专业,决心要通过考研究生改行,那么不必在考研究生之前找工作,考完后也会有工作的,尤其是春节以后。人的精力有限,集中兵力做好一件事情。反正你都想改行......

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

时间  比较小程序(2006-04-08 18:03:00)

摘要:import java.text.SimpleDateFormat;
import java.util.Date;
public class Test
{
public static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
private static void compare_Date(Date EffectiveStartDate){
Date dtCurrent=new Date();
       
String EffectiveStart_Date = sdf.format(EffectiveStartDate);
        String dtCurrent_Date = sdf.format(dtCurrent);
       
    if(EffectiveStart_Date.compareTo(dtCurrent_Date) >= 0)
    {
       System.out.println("effective date >= current date");
    }
    else
    {
       System.out.println("effective date < current date");
    }
}     public static void main(String[] args) {
    &n......

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

java GUI小程序(2006-04-08 17:29:00)

摘要:import java.awt.*;
import javax.swing.*; public class ColorAndLine extends JFrame{
 public ColorAndLine(){
  super("using color and line");
  setSize(800,400);
  setVisible(true);
 }
 public void paint(Graphics g){
  super.paint(g);
  while(true)
 {//System.out.print((int)(Math.random()*100));
     g.setColor(new Color((int)(Math.random()*250),(int)(Math.random()*250),(int)(Math.random()*250)));
  g.drawLine((int)(Math.random()*1000),(int)(Math.random()*1000),(int)(Math.random()*100),(int)(Math.random()*100));
 repaint();
 }
 }
 public static void main(String args[]){
  ColorAndLine application=new ColorAndLine();
  application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }
}     修改 import java.awt.*;
import javax.swing.*; public class ColorAndLine extends JFram......

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

网 易 求 职 被 骗 记 转自CSDN(2006-04-08 17:23:00)

摘要:堂堂网易,中国三大门户之一的网易,居然会做出到人才市场上招人免费试用,试用期满后用近于污辱人的方式辞掉的事情,完全不管你是否已经很好的掌握了工作技能,完全不管你在试用期是多么的努力认真,高明,高明啊!可怜我女朋友被骗之后,差点自杀!!现在对找工作充满了恐惧,整天在躲在家里以哭洗面。其心灵受到的创伤谁来负责?
我是一名普通的计算机程序员,网易的创始人丁磊先生一直是我的偶像,其传奇般的创业经历一直是我追逐的梦想。为了心中的梦想我于2005年7月从内地小城来到了广州,并顺利的找到了一份程序员的工作。我的女朋友为了爱情,过了一段时间也辞掉工作来到了广州。熟悉了一段时间之后开始了找工作的过程,其中经过了许许多多的求职、面试、选择,种种艰辛不用多说,不过我们倒也并不着急。因为我的工资已够我们在广州的生活了,我们希望可以找到一份稳定一点的,规范一点的工作。我女朋友是一个以爱情为中心的很感性的女孩,所以我也没有想过要她挣多少钱。
2005年11月6日星期日,我女朋友去南方人才市场参加招聘会,回来后她很兴奋的跟我说,网易让她去面试。我也非常高兴,必竟网易可是个大公司啊。我说那你今晚到网上找一些网易的资料,准备一下吧。11月7日她去网易并通过了他们的面试,网易录用她了,在其客户服务部下面的一个小组工作,主要是负责网易的游戏用户的求助邮件的处理和回呼的工作,试用期1200元,不过得先要参加15天的培训(这15天没有工资,每天9点上班,下午18点下班)培训完后进行考试,考试通过后才可以入职。我有一点疑惑,去问了一位朋友,朋友对我说,你要小心,现在广州有很多这样的公司,打着培训的晃子无偿的使用你一段时间,然后将你辞掉。可是我不相信,我说网易这么大的一个企业怎么会做这么下三烂的事呢?
11月8日星期二,我女朋友开始了她网易的第一天工作,回来后跟我说,公司并没有培训,只是让她们两个新招进来的员工,跟着那些老员工学习,并给了一张工作流程图给她们,讲解了之后,让她们自己看。这时我心里有了一点被骗的感觉,不过又想,可能是网易比较小气吧,在员工能熟练工作之前,不想开工资。所以我就说,努力吧,平时工作时多问那些老员工,回来之后有什么不熟的在家里练一下,挣取早点掌握工作技能。就这样,我女朋友开始了前四天的忙碌的学习过程,我从来没有见过我女朋友这么认真学习过什么,我知道她是很珍惜这份工作的,......

阅读全文(4029) | 评论:1

Java数据库程序中的存储过程设计(2006-04-08 10:34:00)

摘要:本文阐述了怎么使用DBMS存储过程。阐述了使用存储过程的基本的和高级特性,比如返回ResultSet。本文假设你对DBMS和JDBC已经非常熟悉, 也假设你能够毫无障碍地阅读其它语言写成的代码(即不是Java的语言),但是,并不要求你有任何存储过程的编程经历。

  存储 过程是指保存在数据库并在数据库端执行的程序。你可以使用特殊的语法在Java类中调用存储过程。在调用时,存储过程的名称及指定的参数 通过JDBC连接发送给DBMS,执行存储过程并通过连接(如果有)返回结果。

  使用存储过程拥有和使用基于EJB或CORBA这样的应用 服务器一样的好处。区别是存储过程可以从很多流行的DBMS中免费使用,而应用服务器大都非常昂贵。这并不只是许可证费用的问题。使用应 用服务器所需要花费的管理、编写代码的费用,以及客户程序所增加的复杂性,都可以通过DBMS中的存储过程所整个地替代。

  你 可以使用Java,Python,Perl或C编写存储过程,但是通常使用你的DBMS所指定的特定语言。Oracle使用PL/SQL,PostgreSQL使用pl/pgsql, DB2使用Procedural SQL。这些语言都非常相似。在它们之间移植存储过程并不比在Sun的EJB规范不同实现版本之间移植Session Bean困难。并 且,存储过程是为嵌入SQL所设计,这使得它们比Java或C等语言更加友好地方式表达数据库的机制。

  因为存储过程运行在DBMS自 身,这可以帮助减少应用程序中的等待时间。不是在Java代码中执行4个或5个SQL语句,而只需要在服务器端执行1个存储过程。网络上的数据 往返次数的减少可以戏剧性地优化性能。

  使用存储过程

  简单的老的JDBC通过CallableStatement类支持存 储过程的调用。该类实际上是PreparedStatement的一个子类。假设我们有一个poets数据库。数据库中有一个设置诗人逝世年龄的存储过程。 下面是对老酒鬼Dylan Thomas(old soak Dylan Thomas,不指定是否有关典故、文化,请批评指正。译注)进行调用的详细代码:

try
{
 int age = 39;......

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

网上找工作必看之网站 - 转载(2006-04-08 10:24:00)

摘要: chinahr.com 从1999年以来我所有的工作都是通过这个网站找得,国内知名企业大多都使用此媒体,在北京的朋友一般不会没有收获,今年春节后一周内,通过此网站,居然有7家企业邀请我去面试。 zhaopin.com 如果你能被这家网站上的企业相中,那说明你一定是很有实力得,此网站集中了很多知名外企,当然如果你相被猎中的话,一定要具备英文功底,曾经两家IT世界知名公司面试,可以被E文所限,失之交臂。 www.jobcn.com,www.cjol.com 在广东的朋友可以集中在这两个网站找工作,以前在老家的时候,就是接到了这两个网站上的公司的机会,可惜来了北京。   还有家著名的网络招聘媒体我没说,我想大家都知道,我在这家网站发布过很多次简历及应聘信息,但从无回音,以至我很是怀疑它的数据的真实性,NASDAQ又怎么了,后来听一位业内朋友说,此网站主要以HR外包业务为主,网站只是个摆设。 www.gongzuo123.com
如果您接到应聘通知的时候,一定要到这家网站转转,看看别人怎么评价这家企业得,或者直接从同事录里给同事发MAIL问问内部情况,
往往有意向不到的收获。此网站汇集了15W家网络上招聘的企业,包括各行业。 如果您有更好的网站,请补充!......

阅读全文(3447) | 评论:1

 Java中文处理, 资源包后缀详解 (2006-04-08 10:13:00)

摘要: 作者: 车东 Email: chedongATbigfoot.com/chedongATchedong.com 写于:2002/07 最后更新: 02/22/2006 14:42:55

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明
http://www.chedong.com/tech/hello_unicode.html 关键词:linux java mutlibyte encoding locale i18n i10n chinese  ISO-8859-1 GB2312 BIG5 GBK UNICODE 内容摘要:   不知道你有没有这样的感受:为什么PHP很少有乱码问题而用Java做WEB应用却这么麻烦呢?为什么在Google上能用简体中文查到繁体中文,甚至日文的结果?而且用Google的时候发现它居然能自动根据我使用浏览器的语言选择自动调出中文界面?
很多国际化应用的让我理解了这么一个道理:Unicode是为更方便的做国际化应用设计的,而Java核心的字符是基于UNICODE的,这一机制为应用提供了对中文“字”的控制(而不是字节)。但如果不仔细理解其中的规范,这种自由反而会成为累赘,从而导致更多的乱码问题: 关于字符集的一些基本概念; 试验1:显示系统的环境设置和支持的编码方式; 试验2:系统缺省编码方式对Java应用的输入输出影响; 试验3:在WEB应用中输出和输出中的字符集问题; 关于字符集的准备知识:
ISO-8859-1 GB2312 BIG5 GBK GB18030 UNICODE 为什么会有这么多字符集编码方式? 注意:以下说明不是严格定义,一些比喻仅作为方便理解使用。 假设一个字符就是棋盘上的一个棋子,有其固定的坐标,如果需要区别所有的字符,就需要有足够的棋格容纳不同的“字符”。  英文和欧洲其他语言的单字节字符集(SingleByte Charsets):
首先对于ISO-8859系列的字符集都想象成一个:2^8 = 16 * 16 = 256个格子的棋盘,这样所有的西文字符(英文)用这样一个16×16的坐标系就基本可以覆盖全了。而英文实际上只用其中小于128(\x80)的部分就够了。利用大于128部......

阅读全文(88079) | 评论: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......

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