永发信息网

java分页,大家都来看下,谢谢了

答案:1  悬赏:80  手机版
解决时间 2021-07-30 22:27

用的是MYsql数据库,,在JAVA里做的,用的SERVLET 现在没做分页前的流程..添加一条数据,成功后跳道查询的SERVLET然后SERVLET调用查询方法(根据条件查询

public List cjUrlsByType(String type) {

List list = new ArrayList();
String sql = "select * from urls where urlType like '%" + type
+ "%' order by urlTime desc";

try {
if (conn.isClosed()) {
Conn dbConn = new Connections();
try {
conn = dbConn.getConn();
// conn = DriverManager.getConnection("proxool.mysql");
} catch (Exception e) {
e.printStackTrace();
}
}
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
while (rs.next()) {
CaiJing cj = new CaiJing();
cj.setUrlId(rs.getInt("urlId"));
cj.setUrl(rs.getString("url"));
cj.setUrlType(rs.getString("urlType"));
cj.setUrlTime(rs.getString("urlTime"));
cj.setGroups(rs.getString("groups"));
list.add(cj);
}
} catch (Exception e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} finally {
pd.close();
}

return list;
}

)
然后成功后返回SERVLET然后转到JSP页面,带个参数,,然后在页面(


<%
if (request.getAttribute("uList") != null) {
List list = (List) request.getAttribute("uList");
for (int i = 0; i < list.size(); i++) {
CaiJing cj = (CaiJing) list.get(i);
%>

<%=cj.getUrl()%>
<%=cj.getUrlTime() %><br>

<%
}
}
%>
)

这是没做分页之前的,我想弄分页面,用SQL做的,,,,谢谢大家了,,说的详细点,带注释,,我机会都不会了,,谢谢,,一定要具体,每个步骤啥的,,,可以按上我上面那个完全改下,然后写出来

最佳答案


//修改以上方法 begin /////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////


public List cjUrlsByType(String type,int page , int row) { // page 为第几页 row 为一页取几条数据



int rowpage=row*page;
int sumRows=this.getCountcjUrlsByType(type); //获得表里的全部信息的总行数

if (sumRows > 0) { //如果有数据
if (sumRows % row > 0) {
int endPage=sumRows / row+1;
if (page==endPage) {
row = sumRows % row;
}
}



String sql = "select to (row) * from urls where urlType like '%" + type+ "%' order by urlTime desc";



//按照思路写出的sql id为排序的主键
String sql2="select top ("+row+") * from ( select top ("+row+") * from ( select top ("+rowpage+") * from ("+sql+" ) as tableInfo order by tableInfo.id ) as tableInfo ) as tableInfo order by tableInfo.id desc ";


rs = stmt.executeQuery(sql2);



//修改以上方法 end /////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////




////获得表里的全部信息的总行数


public int getCountcjUrlsByType(type){


int num=0;


String sql = "select count(*) as countInfo from urls where urlType like '%" + type
+ "%' order by urlTime desc";


try {
if (conn.isClosed()) {
Conn dbConn = new Connections();
try {
conn = dbConn.getConn();
// conn = DriverManager.getConnection("proxool.mysql");
} catch (Exception e) {
e.printStackTrace();
}
}
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
while (rs.next()) {


num=rs.getInt(countInfo) ;
}
} catch (Exception e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} finally {
pd.close();
}


return num;




}



我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
初三化学~~~~~~~
我想请问下`国产凌凌漆的那把插在墙上的那把
2010年春节火车会不会拥挤?全面点
表达心里憋屈的句子,心里憋屈怎么发表说说 有
请问“周渝明”在一个偶像剧里演“单伟易”的
我想在两个月内增肥15斤,向各位朋友求助
失去了还可以从来吗?
房县十堰江淮美食在什么地方啊,我要过去处理
wants to share photos and slideshows with
玩网页小游戏出现类似马赛克,托屏,是怎么回
梦见打强盗!怎么回事?
韦德穿过的JORDON鞋?
爬华山最好最适合带什么呢?
发几个字多少流量
音速玩到月亮等级了,是在星星频道升级快点还
推荐资讯
怎么用快没钱的卡开一大堆腾迅业务?能开多久?
怎么样才能让你一直的幸福下去?
谁知道怎样消除黑眼圈
新邵县邵阳这个饼这个地址在什么地方,我要去
网球王子中谁的招数最强最厉害?
皇冠牌的护发素
出数学题帮帮忙,出85道计算题和85道应用题,要
你能在1到100之间的整数之中,找出5个数使它
湖滨区三门峡观音堂特色卤肉文涛餐馆地址在什
云梦县孝感经通天下头颈肩腰腿疼中医养生馆(
梁园区商丘伊利母婴营养研究中心地址在什么地
克山县齐齐哈尔克山翰沃城售楼中心地址有谁知
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?