- 浏览: 11374 次
- 性别:
- 来自: 成都
最新评论
文章列表
java和C++区别
- 博客分类:
- 学习笔记
JAVA和C++都是面向对象语言。也就是说,它们都能够实现面向对象思想(封装,继承,多态)。而由于C++为了照顾大量的C语言使用者, 而兼容了C,使得自身仅仅成为了带类的C语言,多多少少影响了其面向对象的彻底性!JAVA则是 ...
前段时间和一个公司合作了一个java web方面的应用软件商店,在解决订单唯一性上出了一些麻烦,先说一下业务吧,我们这个应用软件商店上面的购物是:只要买过终身都可以下载,因此和一般的产生订单的方法不同的,因为不存在同一个用户在不同的时间买同一件商品。好了,我介绍一下我的订单唯一号的生成方法。
订单号暂时确定为12位,因为12位能有10亿个订单,完全够用了,如果不够用,以后还可以扩展。步骤:先从数据库中查询到最大的id号,然后在这个基础上加1得到结果后再在这个数字钱填充0直到12位,关键点在于整个这个方法要用同步。上代码
/**
* 生成12位数字的订单号
* ...
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:
select id from t where num is null
可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:
select id from t where num=0
3.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。
4.应尽量避免在 w ...
Android, change, 数据库, WiFi
程序执行需要读取到安全敏感项必需在androidmanifest.xml中声明相关权限请求, 完整列表如下:
android.permission.ACCESS_CHECKIN_PROPERTIES
允许读写访问"properties"表在checkin数据库中,改值可以修改上传( Allows read/write access to the "properties" table in the checkin database, to change values that get uploade ...
首先android对于提供有关SQLite的方法尚未完善,这里谈谈我在开发项目当中对于SQLite在android 的一些用法与Cursor的体会的一些看法。
SQLite的增删改都很简单,关键是查询,当你想要执行一些复杂的查询时,你往往就会觉得android 提供的SQLite方法明显不够。
在查询返回的是一个Cursor类型的对象,它是一个指针,且永远都不会为空,所以,当你查询某语句,并判断返回值是否为空时,切勿用cursor==null表示。而有个方法,cursor.getCount()==0就能判断其结果值是否为空了。另外,对于一些dao类的方法,最好写在一个文件中,且最好抽象化,养 ...
有时由于项目开发的需要,必须将SQLServer2005中的某些表同步到Oracle数据库中,由其他系统来读取这些数据。不同数据库类型之间的数据同步我们可以使用链接服务器和SQLAgent来实现。
有时由于项目开发的需要,必须将SQLServer2005中的某些表同步到Oracle数据库中,由其他系统来读取这些数据。不同数据库类型之间的数据同步我们可以使用链接服务器和SQLAgent来实现。假设我们这边(SQLServer2005)有一个合同管理系统,其中有表contract 和contract_project是需要同步到一个MIS系统中的(Oracle9i)那么,我们可以按照以下几步实 ...
// 相对于给定ID控件
android:layout_above 将该控件的底部置于给定ID的控件之上;
android:layout_below 将该控件的底部置于给定ID的控件之下;
android:layout_toLeftOf 将该控件的右边缘与给定ID的控件左边缘对齐;
android:layout_toRightOf 将该控件的左边缘与给定ID的控件右边缘对齐;
android:layout_alignBaseline 将该控件的baseline与给定ID的baseline对齐;
android:layout_alignTop 将该控件的顶部边缘与给定I ...
Android提供了Invalidate方法实现界面刷新,但是Invalidate不能直接在线程中调用,因为他是违背了单线程模型:Android UI操作并不是线程安全的,并且这些操作必须在UI线程中调用。
Android程序中可以使用的界面刷新方法有两种,分别是利用Handler和利用postInvalidate()来实现在线程中刷新界面。
利用Handler刷新界面
实例化一个Handler对象,并重写handleMessage方法调用invalidate()实现界面刷新;而在线程中通过sendMessage发送界面更新消息。
// 在onCreate()中开启线程 ...
Android系统框架和上层应用是类java(不是正统的sun java)开发的,实现了自己的java虚拟机dalvik,既然用java虚拟机和java开发,一般都会认为效率低下。其实不然,在基本主流的智能手机的软件平台上,android的执行速度是最快的。
那 ...
如下程序,运行后,只是弹出一个框,但是点击播放按钮,无法播放,不知道为什么,有知道的说一下哈,先谢过了。
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Example7_9 extends Applet implements ActionListener{
AudioClip clip;
Button buttonPlay,buttonLoop,buttonStop;
public void init(){
clip=getAudioClip(getCodeBase(),&quo ...