Java 方法填充。请注意,此版本的方法采用两个参数,一个ResultSet句柄和ResultSet对象中开始检索行的行 CachedRowSet crs = new CachedRowSetImpl(); crs.setMaxRows(20); crs.setPageSize(4); crs.populate(rsHandle, 10);
当此代码运行时,crs将由rsHandle中的四行(从第十行开始)填充Java 方法填充。请注意,此版本的方法采用两个参数,一个ResultSet句柄和ResultSet对象中开始检索行的行 CachedRowSet crs = new CachedRowSetImpl(); crs.setMaxRows(20); crs.setPageSize(4); crs.populate(rsHandle, 10);,java,jsp,jdbc,Java,Jsp,Jdbc,当此代码运行时,crs将由rsHandle中的四行(从第十行开始)填充 在类似的路径上,您可以建立一种策略,在JSP上对数据进行分页等等。U为每个页面显示建立了一个DB连接?mySQL的连接速度非常快,但是如果考虑性能,您也可以拥有一个DB连接池,所以是的,每个页面都有一个DB连接,尤其是因为你不知道下一页移动到前多久。 CREATE PROCEDURE Objects_GetPaged ( @sort VARCHAR(255), @Page INT, @RecsPerP
在类似的路径上,您可以建立一种策略,在JSP上对数据进行分页等等。U为每个页面显示建立了一个DB连接?mySQL的连接速度非常快,但是如果考虑性能,您也可以拥有一个DB连接池,所以是的,每个页面都有一个DB连接,尤其是因为你不知道下一页移动到前多久。
CREATE PROCEDURE Objects_GetPaged
(
@sort VARCHAR(255),
@Page INT,
@RecsPerPage INT,
@Total INT OUTPUT
)
AS
SET NOCOUNT ON
--Create a temporary table
CREATE TABLE #TempItems
(
id INT IDENTITY,
memberid int
)
INSERT INTO #TempItems (memberid)
SELECT Objects.id
FROM Objects
ORDER BY CASE @sort WHEN 'Alphabetical' THEN Objects.UserName ELSE NULL END ASC,
CASE @sort WHEN 'Created' THEN Objects.Created ELSE NULL END DESC,
CASE @sort WHEN 'LastLogin' THEN Objects.LastLogin ELSE NULL END DESC
SELECT @Total=COUNT(*) FROM #TempItems
-- Find out the first and last record we want
DECLARE @FirstRec int, @LastRec int
SELECT @FirstRec = (@Page - 1) * @RecsPerPage
SELECT @LastRec = (@Page * @RecsPerPage + 1)
SELECT *
FROM #TempItems
INNER JOIN Objects ON(Objects.id = #TempItems.id)
WHERE #TempItems.ID > @FirstRec AND #TempItems.ID < @LastRec
ORDER BY #TempItems.Id
// get a ResultSet from some query
ResultSet results = ...
if (count > 0) {
results.setFetchSize(count + 1);
results.setFetchDirection(ResultSet.FETCH_FORWARD);
results.absolute(count * beginIndex);
}
for (int rowNumber = 0; results.next(); ++rowNumber) {
if (count > 0 && rowNumber > count) {
break;
}
// process the ResultSet below
...
}
CachedRowSet crs = new CachedRowSetImpl();
crs.setMaxRows(20);
crs.setPageSize(4);
crs.populate(rsHandle, 10);