如何用Java实现网上商品信息查询,客户端通过servlet实现对数据库信息的查询显示。

Happyan66 2009-11-02 04:53:44
如何用Java实现网上商品信息查询,客户端通过servlet实现对数据库信息的查询显示。
哪位大侠帮帮忙,给个代码让小弟学习学习!
...全文
324 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
蝶恋花 2009-11-22
  • 打赏
  • 举报
回复
到网上查查,看看,自己动手!呵呵
Happyan66 2009-11-09
  • 打赏
  • 举报
回复
谢了 哥们~
baobaohehe 2009-11-04
  • 打赏
  • 举报
回复
Book.java
public class Book {
private int bid;
private String bname;
private String bauthor;
private String bpublisher;
private int cid;
private String binfo;
private float bprice;
public int getBid() {
return bid;
}
public void setBid(int bid) {
this.bid = bid;
}
public String getBname() {
return bname;
}
public void setBname(String bname) {
this.bname = bname;
}
public String getBauthor() {
return bauthor;
}
public void setBauthor(String bauthor) {
this.bauthor = bauthor;
}
public String getBpublisher() {
return bpublisher;
}
public void setBpublisher(String bpublisher) {
this.bpublisher = bpublisher;
}
public int getCid() {
return cid;
}
public void setCid(int cid) {
this.cid = cid;
}
public String getBinfo() {
return binfo;
}
public void setBinfo(String binfo) {
this.binfo = binfo;
}
public float getBprice() {
return bprice;
}
public void setBprice(float bprice) {
this.bprice = bprice;
}
public Book(int bid, String bname, String bauthor, String bpublisher,
int cid, String binfo, float bprice) {
super();
this.bid = bid;
this.bname = bname;
this.bauthor = bauthor;
this.bpublisher = bpublisher;
this.cid = cid;
this.binfo = binfo;
this.bprice = bprice;
}
public Book() {
super();
// TODO Auto-generated constructor stub
}
}


BookDao.java
public class BookDao {
//显示所有的书
public static Collection showBook(){
String sql="select * from tbl_book";
//连接数据库
Collection books=new ArrayList();
Connection conn=ConnDB.getConn();
Statement sta=null;
ResultSet rs=null;
try {
sta=conn.createStatement();
rs=sta.executeQuery(sql);
while(rs.next()){
int bid=rs.getInt(1);
String bname=rs.getString(2);
String bauthor=rs.getString(3);
String bpublisher=rs.getString(4);
int cid=rs.getInt(5);
String binfo=rs.getString(6);
float bprice=rs.getFloat(7);
Book book=new Book(bid,bname,bauthor,bpublisher,cid,binfo,bprice);
books.add(book);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
ConnDB.closeAll(rs, sta, conn);
return books;
}

}
}
分页实体
PageBean.java
public class PageBean {
//每一页显示的数据条数
int pageSize;
//页码
int pageNo;
//最大的页码
int maxPageNo;
//每一页显示的数据
ArrayList pageData=new ArrayList();
//总共的数据
ArrayList allData=new ArrayList();
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getPageNo() {
return pageNo;
}
public void setPageNo(int pageNo) {
this.pageNo = pageNo;
}
//得到分页的每一页的数据内容
public ArrayList getPageData() {
pageData.clear();
for(int i=(pageNo-1)*pageSize;
i<pageNo*pageSize&&i<allData.size();i++){

pageData.add(allData.get(i));
}
return pageData;
}
public void setPageData(ArrayList pageData) {
this.pageData = pageData;
}
public ArrayList getAllData() {
return allData;
}
public void setAllData(ArrayList allData) {
this.allData = allData;
}
public int getMaxPageNo() {
//总数据集合的长度就是总共的记录数
int maxRecords=allData.size();
if(maxRecords%pageSize==0){
maxPageNo=maxRecords/pageSize;
}else{
maxPageNo=maxRecords/pageSize+1;
}
return maxPageNo;
}
public void setMaxPageNo(int maxPageNo) {
this.maxPageNo = maxPageNo;
}


}


操作分页实体

PageDao.java

public class PageDao {
PageBean page=new PageBean();
public ArrayList getPageData(){
ArrayList allDatas=new ArrayList(BookDao.showBook());
page.setAllData(allDatas);
return page.getPageData();

}
public PageBean getPage() {
return page;
}
public void setPage(PageBean page) {
this.page = page;
}

}
BookServlet.java
public class BookServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PageDao pageDao=new PageDao();
PageBean pageBean=new PageBean();
pageBean.setPageSize(1);
if(request.getParameter("pageNo")!=null){
pageBean.setPageNo(Integer.parseInt(request.getParameter("pageNo")));

}else{
pageBean.setPageNo(1);
}
//将分页的实体存入到数据存中
pageDao.setPage(pageBean);
pageDao.getPageData();
//将分页实休Bean存放到会话中
HttpSession session=request.getSession();
session.setAttribute("books",pageBean);
response.sendRedirect("showBook01.jsp");

}


public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

doGet(request,response);
}

}
显示数据
ShowBook.jsp

欢迎<font color='red'>${sessionScope.user.uname}</font>
<%
User user=(User)session.getAttribute("user");
if(user==null){
out.println("<font color='red'>非法访问。<a href='index.jsp'>重新登陆</a></font>");
}else{

//out.print("欢迎<font color='red'>"+user.getUname()+"</font>");
PageBean pageBean=(PageBean)session.getAttribute("books");
int pageNo=pageBean.getPageNo();
int maxPageNo=pageBean.getMaxPageNo();
ArrayList books=pageBean.getPageData();

if(books!=null && books.size()>0){
out.println("<table border='2'>");
for (int i = 0; i < books.size(); i++) {
Book myBook = (Book) books.get(i);
out.println("<tr>");
out.println("<td>" + myBook.getBid()+ "</td>"
+ "<td>" +myBook.getBname() + "</td>" + "<td>"
+ myBook.getBprice()+ "</td>"+"<td>"
+ myBook.getBauthor()+ "</td>"+"<td>"
+ myBook.getBpublisher()+ "</td>"+"<td>"
+ myBook.getBinfo()+ "</td>");
out.println("</tr>");
}
out.println("</table");
}


%>

<a href="bookServlet?pageNo=1">首页</a>
<%if(pageBean.getPageNo()>1){%>
<a href="bookServlet?pageNo=<%=(pageBean.getPageNo()-1) %>">上一页</a>
<%} %>
<script type="text/javascript">
function gotoPage(who)
{
//通过键值来访问页面组件
var pageNo=document.all[who];
//判断一个字符串是不是不是一个数,并且不能大于最大页码
if(!isNaN(pageNo.value)&&pageNo.value<=<%=pageBean.getMaxPageNo()%>){
window.location.href="bookServlet?pageNo="+pageNo.value;
} else{

alert("请输入有效的数字!");
pageNo.value="";
pageNo.focus();
}

}
</script>
<input type="text" name="pageNO" size="2" value="<%=pageBean.getPageNo() %>">
<input type="button" value="go" onclick="gotoPage('pageNO')"/>
<%if(pageBean.getPageNo()<pageBean.getMaxPageNo()){ %>
<a href="bookServlet?pageNo=<%=(pageBean.getPageNo()+1) %>">下一页</a>
<a href="bookServlet?pageNo=<%=pageBean.getMaxPageNo() %>">最后一页</a>

<% }%>
<% for(int i=1;i<=pageBean.getMaxPageNo();i++)
out.println("<a href='bookServlet?pageNo="+i+"'>"+i+"</a>");
%>

<select name="pageNo" onchange="gotoPage('pageNo')">
<%
for(int i=1;i<=pageBean.getMaxPageNo();i++)
out.println("<option value="+i+">"+i+"</option>");
%>

</select>


<%} %>

chenyulong1 2009-11-04
  • 打赏
  • 举报
回复
楼上的很OK,感谢。
lwlmj840715 2009-11-03
  • 打赏
  • 举报
回复
查询操作是最上手的练习
不要错过了
还是自己写吧
amdgaming 2009-11-02
  • 打赏
  • 举报
回复
csdn 下载区 去 搜索 下,很多的。。。
kojava 2009-11-02
  • 打赏
  • 举报
回复
还是从网上下个例子吧 看看

67,516

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧