- 浏览: 7353 次
- 性别:
- 来自: 厦门
最新评论
文章列表
PreparedStatement学习笔记
- 博客分类:
- 数据库
关于PreparedStatement的优点,在网上主要看到3个优点:
1.代码的可读性和可维护性。
2.尽最大可能提高性能。
PreparedStatement是预编译的,对会被多次执行的相同SQL,只预先对SQL进行编译,每次执行SQL就不用编译SQL了,直接执行预先编译得到的执行计划。PreparedStatement提高效率的关键在于减少了Statement每次执行SQL时都要编译SQL的时间。
PreparedStatement是怎么实现预编译的,PreparedStatement预存的SQL上的"?"和对应的值是怎么传给 ...
资源池(Resource Pool)
针对共享资源,为了解决资源的频繁分配和释放所产生的问题。
连接池基本思想
是为数据库连接建立一个缓存池。预先在缓冲池放入一定数量的连接,当需要建立数据库连接时,只需从缓存池从取出一个连接,使用完毕之后放回去。
连接池关键问题1. 并发问题
2. 多数据库服务器和多用户
建立单例模式的连接池管理类,用Map<连接池名称, 连接池对象>管理。
3. 事务处理
ALL-ALL-NOTHING 原则,即对一组sql要么全做,要么全不做。
4. 连接池的分配和释放
空闲池,提供连接给需要 ...
运行程序遇到问题
Please ensure that adb is correctly located at 'E:\Android\SDK\platform-tool\adb.exe' and can be executed.
解决:
安装环境变量Path里增加:E:\Android\SDK\platform-tools, 重启Eclipse就不会报这个错
今天开始学习Android,在这记录下。
1、下载的软件
JDK 1.6,Eclipse 3.6,Android SDK (在CSDN下的sdk2.3)
2、安装软件
JDK、Eclipse就不讲了,这边讲一下Android SDK、ADT的配置。
(1) Eclipse -> Help -> Install New Software -> 进入Install对话框点 Add... -> Location 输入地址:
https://dl-ssl.google. ...
插入排序思想1、分类:把数组R的数据分成2类,A = { 已排序的子数组 },B = { 未排序的子数组 }。2、排序:遍历B,依次取B中各个数据插入到A中的适当位置。直接插入排序设数组 R[0,1,...,n] = { A[0,1,...,i-1], B[i,i+1,...,n] } (数组从0开始计数,i=1,2,...,n-1)。遍历数组R: i从1到n-1,i始终指向B的第一个元素,拿R[i]=B[i]倒序到A中比较(A[i-1],A[i-2],...,A[0]),若A中当前比较值A[j]比B[i]大,则把A[j]往后挪一位,B[i]继续向前倒序比较;否则,B[i]插入A[j]后面那个位 ...
创建一个打印工具类,提供经常要用到的打印方法。在业务程序里需要查看执行结果时直接调用这里面的方法,不用再去写打印的方法使得业务程序代码看起来很乱。 这边先只放一个方法,以后再慢慢丰富。
public class PrintUtils {
public static void printIntArr(int[] arr){
if(arr==null || arr.length==0)
return;
String str = "[";
for(int i=0; i<arr.length; i++){
str += arr[i ...
自己写的一个冒泡排序和TestCase贴出来一下。
在下面的冒泡排序里,用了一个boolean变量isFinalOrder来判断数组是否达到正确的顺序(s升序排序),由于很多数组都是局部有序,增加这个变量可以提前判断数组是否达到有序状态,从而提高排序的效率。
public class BubbleSort {
public int[] sort(int[] arr){
for(int i=0; i<arr.length-1; i++){
boolean isFinalOrder = true;//是否最终顺序
for(int j=0; j<arr ...