当前位置:首页 > sql > sql语句

1

jsp+javabean开发模式下,数据库sql语句的编写规范

作者:asp.net   |   阅读全文   |   时间:2007-04-12
jsp+javabean开发模式下,数据库sql语句的编写规范 :

  在中小型的开发团队或开发项目中,很多人选择了jsp+javabean的开发模式,但这种模式下,sql语句应该写在什么位置,很多人,包括我自己都会走很多的弯路。

  很多书上要么推荐sql语句写在bean中,让jsp调用即可(理由是这样子比较规范),要么推荐sql语句写在jsp文件中(理由是方便开发,开发速度很快),但我在实际开发中,发现采用上述两种方式都不是很好,下面我将我的方法说一下,希望得到大家的指正。

  我认为在做列表查询时,即按照某种条件查询某个表,一行一行的显示时,sql语句应该写在jsp中,因为表中肯定会有些字段需要将代码转换成实际的含义,需要两个或更多的表关联查询,如果写在bean中,则要将返回结果再用bean进行转换,这种运行方法是非常不好的,而且也会严重影响数据库的运行速度。这时,若将sql语句写在jsp中,执行放在bean中执行,这就加快了数据库的查询速度。相反如果写在bean中,开发及维护都会很不方便(因为bean基本上都是单表操作的)。

原则:

    ......

2

用标准的SQL语句实现查询记录分页

作者:asp.net   |   阅读全文   |   时间:2007-04-12
用标准的SQL语句实现查询记录分页 :
在绝大多数的应用中,返回大量的符合条件的记录是司空见惯的,最典型的莫过于搜索了。在搜索的应用中,用户给出搜索条件,服务器查出符合条件的记录。但往往搜索会返回大量的数据记录,如果在网页中,往往是通过分页的方式来实现,页面提供诸如上一页,下一页等等按钮来实现分页。
现在主要有以下几中方式来实现分页:
1.ejb的find方法
2.在显示第一页前将所有的记录放在collection对象中,后续的各页都在内存中取。
3.每一页都到数据库作一次重复的查询,然后将符合条件的记录显示出来。
4.保存前几页的搜索结果在内存中(经常使用到的),后续的记录(这些数据是多数用户都没有耐心看的)再通过连数据库取得。
5.其他各种cache机制。

我们可以根据实际情况来选择适合自己的方法,我给大家介绍一个通过标准的sql语句来得到符合条件的数据。如从第10到20条的符合条件(where语句中的)的记录。通过这种方法取得记录有一个必要条件,必须有一个能够标识记录顺序的字段,如id,time等等。下面我为大家演示一个例子:
查询t_table表中所有记录第10到20条,按id排序。
sql语句为:
select * from t_table t1 where (select count(*) from t_table t2 where t2.id < t1.id ) >= 10 and (select count(*) from t_table t2 where t2.id < t1.id ) < 20

又如查询t_table表中key=123第10到20条的记录,按id排序。
select * from t_table t1 where (select count(*) from t_table t2 where t2.id < t1.id and t2.key = 123) >= 10 and (select count(*) from t_table t2 where t2.id < t1.id and t2.key = 123) < 20 and t1.key = 123

当然条件中的id可以换为任何能表识记录顺序的字段。

    ......

3

jsp+javabean开发模式下,数据库sql语句的编写规范

作者:asp.net   |   阅读全文   |   时间:2007-04-12
jsp+javabean开发模式下,数据库sql语句的编写规范:

  在中小型的开发团队或开发项目中,很多人选择了jsp+javabean的开发模式,但这种模式下,sql语句应该写在什么位置,很多人,包括我自己都会走很多的弯路。

  很多书上要么推荐sql语句写在bean中,让jsp调用即可(理由是这样子比较规范),要么推荐sql语句写在jsp文件中(理由是方便开发,开发速度很快),但我在实际开发中,发现采用上述两种方式都不是很好,下面我将我的方法说一下,希望得到大家的指正。

  我认为在做列表查询时,即按照某种条件查询某个表,一行一行的显示时,sql语句应该写在jsp中,因为表中肯定会有些字段需要将代码转换成实际的含义,需要两个或更多的表关联查询,如果写在bean中,则要将返回结果再用bean进行转换,这种运行方法是非常不好的,而且也会严重影响数据库的运行速度。这时,若将sql语句写在jsp中,执行放在bean中执行,这就加快了数据库的查询速度。相反如果写在bean中,开发及维护都会很不方便(因为bean基本上都是单表操作的)。

原则:

    ......

4

用标准的SQL语句实现查询记录分页

作者:asp.net   |   阅读全文   |   时间:2007-04-12
用标准的SQL语句实现查询记录分页:
    ......

5

一个jdbc的例子(包含sql语句的批处理,事务处理,数据绑定prepare,)

作者:asp.net   |   阅读全文   |   时间:2007-04-12
一个jdbc的例子(包含sql语句的批处理,事务处理,数据绑定prepare,):
/*
* created by intellij idea.
* user: administrator
* date: mar 26, 2002
* time: 3:24:12 pm
* to change template for new class use
* code style | class templates options (tools | ide options).
*/

package com.chinacountry.databases;
import java.sql.*;
import java.util.stringtokenizer;
public class conndb
{
 string sdbdriver = "org.gjt.mm.mysql.driver";
 string sconnstr = "jdbc:mysql://10.100.27.13:3306/db1";
    ......
处理 SSI 文件时出错
© 2006-2008 All Rights Reserved