永发信息网

java网上预约功能怎么实现啊。。

答案:2  悬赏:20  手机版
解决时间 2021-01-28 08:20
java网上预约功能怎么实现啊。。
最佳答案
物车的逻辑业务的实现(MyCartBO.java),能够满足用户的添加,删除,修改,清空,查看购物车的信息!
ConnDB.java(这只是一个得到数据库连接和类)
01 //连接数据库
02 package cn.fqfx.model;
03
04 import java.sql.*;
05
06 public class ConnDB
07 {
08 //定义一个连接
09 private Connection ct = null;
10
11 //得到连接
12 public Connection getConn()
13 {
14 try {
15 //加载驱动
16 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
17 //得到连接
18 ct = DriverManager.getConnection
19 ("jdbc:microsoft:sqlserver://localhost:1433;databaseName=whdb2","sa","sa");
20 } catch (Exception e) {
21 e.printStackTrace();
22 // TODO: handle exception
23 }
24 return ct;
25 }
26 }

GoodsBean.java(这个文件主要用来保存从数据库的goods表中取得的信息)
01 //这是一个与Goods表对应的java bean
02 //表的信息可以保存在这里面
03 package cn.fqfx.model;
04
05 public class GoodsBean
06 {
07 //分别与goods表的各个字段相对应
08 private int goodsId = 0;
09 private String goodsName = "";
10 private String goodsInfo = "";
11 private String goodsPlace = "";
12
13
14 public int getGoodsId() {
15 return goodsId;
16 }
17 public void setGoodsId(int goodsId) {
18 this.goodsId = goodsId;
19 }
20
21
22 public String getGoodsName() {
23 return goodsName;
24 }
25 public void setGoodsName(String goodsName) {
26 this.goodsName = goodsName;
27 }
28
29
30 public String getGoodsInfo() {
31 return goodsInfo;
32 }
33 public void setGoodsInfo(String goodsInfo) {
34 this.goodsInfo = goodsInfo;
35 }
36
37
38 public String getGoodsPlace() {
39 return goodsPlace;
40 }
41 public void setGoodsPlace(String goodsPlace) {
42 this.goodsPlace = goodsPlace;
43 }
44 }

MyCartBO.java(这个就是购物车,主要以HashMap实现存放用户想买的商品id,商品数量.然后,通过方法的调用把购物车中的信息返回到界面让用户看)
001 //这是一个业务对象,相当于一个购物车!!
002 //-->使用说明:这个购物车最好是在session中使用,因为一个用户一辆购物车,这样东西才不会一直丢
003 package cn.fqfx.model;
004
005 import java.sql.*;
006 import java.util.*;
007
008 public class MyCartBO
009 {
010 //定义几个数据库的连接
011 private Connection ct = null;
012 private PreparedStatement ps = null;
013 private ResultSet rs = null;
014
015 //定义一个HashMap充当购物车,第一个用来存放goodsId,值就是goods的数量
016 HashMap hm = new HashMap();
017
018 //当用户想购买的时候,就加入 购物车里面
019 public void addGoods(String goodsId, String goodsNumber)
020 {
021 hm.put(goodsId, goodsNumber);
022 }
023
024 //当用户不想要东西的时候,就把它删除
025 public void delGoods(String goodsId)
026 {
027 hm.remove(goodsId);
028 }
029
030 //当用户什么也不想要的时候,就清空它
031 public void clearGoods()
032 {
033 hm.clear();
034 }
035
036 //当用户想更换物品的数量的时候,就更新一下
037 public void upGoods(String goodsId, String newNumber)
038 {
039 //还是用加入物品的方法,因为会自动替换掉它,如果货物名字想换,那说明用户想删除了
040 hm.put(goodsId, newNumber);
041 }
042
043 //得到单个物品的数量,要用的话把它转成int型再使用
044 public String getGoodsNumberByGoodsId(String goodsId)
045 {
046 return hm.get(goodsId);
047 }
048
049 //把购物车的东西全部取出来,放入ArrayList里面
050 public ArrayList getAllGoods()
051 {
052 //要知道这个ArrayList是用来放GoodsBean,因为GoodsBean与表相对应,所以可以保存物品的信息
053 ArrayList al = new ArrayList();
054 try {
055 //得到连接
056 ct = new ConnDB().getConn();
057
058 //想一个sql语句,主要是取得goodsId,就可以全部取出来给外面的使用
059 String sql = "select * from goods where goodsId in (";
060 Iterator it = hm.keySet().iterator();
061 while(it.hasNext())
062 {
063 //把goodsId取出来
064 String goodsId = it.next();
065 if(it.hasNext()){
066 sql += goodsId+",";
067 }else{
068 sql += goodsId+")";
069 }
070 }
071
072 //创建ps,上面把sql语句组织好
073 ps = ct.prepareStatement(sql);
074
075 //执行
076 rs = ps.executeQuery();
077
078 //取出来,放在GoodsBean,再把GoodsBean一个个放入ArrayList中,显示的页面就可以调用了
079 while(rs.next())
080 {
081 GoodsBean gb = new GoodsBean();
082 gb.setGoodsId(rs.getInt(1));
083 gb.setGoodsName(rs.getString(2));
084 gb.setGoodsInfo(rs.getString(3));
085 gb.setGoodsPlace(rs.getString(4));
086
087 //把gb放入al,相当于保存了从数据库中获得的数据
088 al.add(gb);
089 }
090 } catch (Exception e) {
091 e.printStackTrace();
092 // TODO: handle exception
093 }finally{
094 this.closeDBResource();
095 }
096 return al;
097 }
098
099 //关闭数据库资源
100 public void closeDBResource()
101 {
102 try {
103 if(rs != null){
104 rs.close();
105 rs = null;
106 }
107 } catch (Exception e2) {
108 e2.printStackTrace();
109 // TODO: handle exception
110 }
111 try {
112 if(ps != null){
113 ps.close();
114 ps = null;
115 }
116 } catch (Exception e2) {
117 e2.printStackTrace();
118 // TODO: handle exception
119 }
120 try {
121 if(ct != null){
122 ct.close();
123 ct= null;
124 }
125 } catch (Exception e2) {
126 e2.printStackTrace();
127 // TODO: handle exception
128 }
129 }
130 }
全部回答
这个东西嘛。
数据库中增加UPDATeD_AT字段,当一个人更新了之后,另一个人打算更新时,查看这个字段,
如果和加载时不一致,则不允许预约。
查看的时候SELECT就可以了。
数据库简单结构
人员表,ID,NAME
器材表ID, NAME
预约表ID, TOOL_ID,RESERVED_FROM, RESERVED_TO, RESERVED_PERSON,PURPOSE,UPDATED_AT
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
没有有信任的爱情叫做什么?
如何培养孩子的创意?
昨天在淘宝拍卖上拍到一个商品,一直联系卖家
河南新乡2017年,坏保局怎么规划养鸡场。
红骐驎的意思是什么啊?知道的请说下!
我的电脑记忆功能失效了。怎么回事?登陆百度
在手机贷上借钱逾期利息是多少
z茄是什么品牌的香烟
魔兽世界人类死骑91级催眠花任务怎么做
在400米的环形跑道上AB两点相距100米,甲乙两
订酒店返还的红包等于返现吗?
笔簪的意思是什么啊?知道的请说下!
大众polo探险者导航均衡器怎么调音质最好
手一直抽筋是怎么回事
阅读下面城镇周围农业区位安排图,请你根据影
推荐资讯
诛仙天劫任务用国力可以免做吗
【一氧化碳燃烧】一氧化碳、氢气、甲烷在氧气
语族的意思是什么啊?知道的请说下!
沃尔沃是哪个国家的品牌
晚上不睡觉的人叫夜猫子哪晚上早睡早起的叫什
为什么企鹅属于鸟类???
阙略的意思是什么啊?知道的请说下!
我的空调坏了我去维修只是接了一下线他收取我
参校的意思是什么啊?知道的请说下!
新一轮的新能补贴政策在9月17日正式公布。新
斯鞅的意思是什么啊?知道的请说下!
在日本留学后回中国容易就业吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?