欢迎光临
我们一直在努力

servlet与javabean实现长文本数据分页显示-JSP教程,数据库相关

建站超值云服务器,限时71元/月

这是做wap的时候遇到的问题,您遇到类似的问题可以参考一下!

javabean文件:

dataconnection.java;//数据库连接

basicinfo.java;//数据bean容器

datawork.java;//数据操作

servlet文件:

orderinfoservlet.java;//servlet实现长文本数据分页显示

xml配置文件:

web.xml;//servlet配置

dataconnection.java文件内容为:

package wap_cctv_film;

import java.sql.*;

public class dataconnection {

public static connection getdataconnection() {

connection conn = null;

try {

class.forname("com.microsoft.jdbc.sqlserver.sqlserverdriver").newinstance();

conn = drivermanager.getconnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=wapvod","cctv_sql_user","cctv_sql_user");

}

catch (exception ex) {

ex.printstacktrace();

}

return conn;

}

}

——————————————————————————–

basicinfo.java文件内容:

package wap_cctv_film;

import java.io.*;

public class basicinfo

implements serializable {

private string basicname;

private int basichits;

private int basicid;

private string basictext;

private int basicisshow;

private int basictype;

public string getbasicname() {

return basicname;

}

public void setbasicname(string basicname) {

this.basicname = basicname;

}

public int getbasichits() {

return basichits;

}

public void setbasichits(int basichits) {

this.basichits = basichits;

}

public int getbasicid() {

return basicid;

}

public void setbasicid(int basicid) {

this.basicid = basicid;

}

public string getbasictext() {

return basictext;

}

public void setbasictext(string basictext) {

this.basictext = basictext;

}

public int getbasicisshow() {

return basicisshow;

}

public void setbasicisshow(int basicisshow) {

this.basicisshow = basicisshow;

}

public int getbasictype() {

return basictype;

}

public void setbasictype(int basictype) {

this.basictype = basictype;

}

}

——————————————————————————–

datawork.java文件内容:

package wap_cctv_film;

import java.sql.*;

import java.util.*;

public class datawork {

private connection conn;

public datawork() {

this.conn = dataconnection.getdataconnection();

}

public basicinfo getbasciinfo(string sql) throws exception {

statement stmt = conn.createstatement();

resultset rst = stmt.executequery(sql);

basicinfo basicinfo = null;

while (rst.next()) {

basicinfo = new basicinfo();

basicinfo.setbasicid(rst.getint("basicid"));

basicinfo.setbasictype(rst.getint("basictype"));

basicinfo.setbasicname(rst.getstring("basicname"));

basicinfo.setbasictext(rst.getstring("basictext"));

basicinfo.setbasichits(rst.getint("basichits"));

basicinfo.setbasicisshow(rst.getint("basicisshow"));

}

return basicinfo;

}

——————————————————————————–

orderinfoservlet.java文件内容:

package wap_cctv_film;

import javax.servlet.*;

import javax.servlet.http.*;

import java.io.*;

public class orderinfoservlet

extends httpservlet {

private static final string content_type = "text/vnd.wap.wml;charset=gb2312";

//initialize global variables

public void init() throws servletexception {

}

//process the http get request

public void doget(httpservletrequest request, httpservletresponse response) throws

servletexception, ioexception {

response.setcontenttype(content_type);

printwriter out = response.getwriter();

int articleid;

if (request.getparameter("articleid") == null) {

articleid = 0;

}

else {

articleid = integer.parseint(request.getparameter("articleid"));

}

try {

datawork getinfo = new datawork();

basicinfo basicinfo = getinfo.getbasciinfo(

"select * from basicinfo where basicid=" + articleid);

out.println("<?xml version=1.0?>");

out.println("<wml>");

out.println("<head>");

out.println("<meta http-equiv=cache-control content=max-age=0 />");

out.println("</head>");

out.println("<card id=main title=梦幻掌上剧场–剧情简介–" +

basicinfo.getbasicname() +

">");

out.println("<p>");

out.println("《" + basicinfo.getbasicname() + "》剧情简介<br />");

int pagewords = 199; //每一页显示的字数

int pagecount; //所有的页数

int pages; //当前页

//若pages为空,则付值1;否则等于

if (request.getparameter("pages") == null) {

pages = 1;

}

else {

pages = integer.parseint(request.getparameter("pages"));

}

int textlen = basicinfo.getbasictext().length();//文本长度

//求出文本分段得出的总页数;

if (textlen % pagewords == 0) {

pagecount = (int) math.ceil(textlen / pagewords);

}

else {

pagecount = (int) math.ceil(textlen / pagewords) + 1;

}

//当前页面总文本剩余的长度,得出两种条件选择;

int lasttextlen = textlen – pages * pagewords;

//一种是剩余长度大于一页文字的长度,即大于199个字;

if (lasttextlen > pagewords) {

out.println(basicinfo.getbasictext().substring( (pages – 1) *

pagewords,

pages * pagewords) + "(第" + pages + "/" + pagecount + "页)<br />");

}

//一种是剩余文本长度小于一页文字的长度;即是最后一页;

else if (lasttextlen < pagewords) {

out.println(basicinfo.getbasictext().substring( (pages – 1) *

pagewords, textlen – 1) + "(第" + pages + "/" + pagecount +

"页)<br />");

}

//分页

int lastpage = pages – 1; //上一页

int nextpage = pages + 1; //下一页

//总页数大于一则显示分页

if (pagecount > 1) {

if (pages < pagecount) {

out.println("<a href=?articleid=" + articleid +

"&amp;pages=" + nextpage + ">下一页</a><br />");

}

if (pages != 1) {

out.println("<a href=?articleid=" + articleid +

"&amp;pages=" + lastpage + ">上一页</a><br />");

}

}

out.println("<a href=indexservlet>[返回首页]</a><br />");

out.println("<a href=http://wap.monternet.com>[梦网首页]</a><br />");

out.println("</p>");

out.println("</card>");

out.println("</wml>");

}

catch (exception ex) {

}

}

//clean up resources

public void destroy() {

}

}

——————————————————————————–

web.xml文件中新增:

<servlet>

<servlet-name>orderinfoservlet</servlet-name>

<servlet-class>wap_cctv_film.orderinfoservlet</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>orderinfoservlet</servlet-name>

<url-pattern>/orderinfoservlet</url-pattern>

</servlet-mapping>

——————————————————————————–

其他编译配置就不多说了,这里面有什么错误或者您有好的建议请mail:webmaster@aliang.org,谢谢!让我们共同学习!!

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » servlet与javabean实现长文本数据分页显示-JSP教程,数据库相关
分享到: 更多 (0)