基于BS模式的自行车租赁系统毕业论文

发布时间 : 星期一 文章基于BS模式的自行车租赁系统毕业论文更新完毕开始阅读

}

public void setId(Long id) { this.id = id; }

......//省略 @Override

public int hashCode() { //覆写hashCode()方法 ......//省略 }

@Override

public boolean equals(Object obj) { //覆写equeals()方法 ......//省略 } }

服务站实体类:

服务站类拥有属性:服务站ID:id、服务站名:name、服务站地址:address、服务站电话:tel、拥有自行车:bikes。

public class Servicer { private Integer id; private String name; private String address; private String tel;

private Set bikes;

public Servicer(String name, String address, String tel) { super(); this.name = name; this.address = address; this.tel = tel; this.bikes=new HashSet(); }

public Servicer() { super(); }

public Integer getId() { return id; }

public void setId(Integer id) { this.id = id; }

......//省略 }

页面设置实体类:

PageBean中拥有属性:当前页:currentpage、总页数:totalpage、 每页显示元素个数:quantity、显示元素的种类:sort。

public class PageBean {

private int currentpage=1; private int totalpage=1;

private static int quantity=2; private int sort;

public int getCurrentpage() { return currentpage; }

public void setCurrentpage(int currentpage) { this.currentpage = currentpage; }

......//省略

共 40 页 第 23 页

public int page(int count){ BikeDao bd=new BikeDao(); int page; if(count%this.quantity==0){ page=count/this.quantity; }else{ page=count/this.quantity+1; } return page; } }

4.5.2 配置相应的xml文件

Bike.hbm.xml:

\

\>

Servicer.hbm.xml:

\

\>

4.5.3 编写自行车浏览的Dao类

BikeDao:

按当前页面和所属服务站检索获得的自行车的集合的方法:参数page为当前页, PageBean.getQuantity()为一页显示的自行车个数,当前页减一再乘以一页显示的个数即为当前要显示的第一种自行车。利于setFirstResult()和setMaxResults()方法就能得到当前页所需输出的自行车的集合。

共 40 页 第 24 页

public List listOfPageAndServicer(int page,int id){ Session s=HbmUtil.getSession(); try {

s.beginTransaction();

List list=s.createQuery(\) .setInteger(0, id).setFirstResult((page-1)*PageBean.getQuantity())

.setMaxResults(PageBean.getQuantity()).list(); return list; }finally{

s.getTransaction().commit(); s.close(); } }

获得某服务站中所有的自行车集合的方法:参数id为服务站id,通过sql语句找到所属服务站id为参数id的所有自行车的集合。

public List listOfServicer(int id){ Session s=HbmUtil.getSession(); try {

s.beginTransaction();

List list=s.createQuery(\b.servicer.id=?\).setInteger(0, id).list(); return list; }finally{

s.getTransaction().commit(); s.close(); } }

ServicerDao:

通过服务站名获得服务站的方法:

public Servicer findOfName(String name){ Session s=HbmUtil.getSession(); try {

s.beginTransaction();

String hql=\;

Servicer servicer=(Servicer)s.createQuery(hql).setString(0, name).uniqueResult(); return servicer; }finally{

s.getTransaction().commit(); s.close(); } }

4.5.4 自行车浏览模块的具体实现

先从请求页面获得一个PageBean,进而通过BikeDao中的方法获得需要在页面显示的Bike集合。

PageBean pb=(PageBean)session.getAttribute(\); int id=pb.getSort();

BikeDao bd=new BikeDao();

List list=bd.listOfPageAndServicer(pb.getCurrentpage(),id);

将这个集合显示在页面中。

自行车浏览模块运行的界面如图4.5所示:

共 40 页 第 25 页

图4.5 自行车浏览界面

4.6 前台购物车模块设计

会员登录后,在浏览到自己需要的自行车时,可以将该自行车放入购物车中,这与我们现实生活中在超市购物时使用的购物篮类似,我们购完物后会将购物篮拿到收银台结账,这里也一样,将自行车放入购物车后,可以去收银台结账,也可以修改自行车数量、删除某种自行车等等。框架图如图4.6所示:

共 40 页 第 26 页

联系合同范文客服:xxxxx#qq.com(#替换为@)