定制开发基于Java Web的酒店管理系统

目录


1.系统概述

定制开发此次系统功能较为简单。定制开发开发模式为:JSP++JavaBean,另外需要MyElicpe、MySQL、Tomact服务器等。

2.系统功能

定制开发本系统主要功能是管理定制开发员进行日常酒店管理操作,定制开发例如登记住房信息、定制开发查询客房信息、定制开发修改客房信息、定制开发删除客房信息、定制开发添加客房信息,定制开发另外是结算退房功能。

3.定制开发所用数据库表

1.user(员工表)

2.member(会员表)

3.house(房型表)

4.定制开发具体功能实现

4.1 登录功能

login.jsp

  1. <body background="image/3.jpg">
  2. <form name="form1" action="loginservlet?method=login" method="post">
  3. <p id=jerry>酒店管理系统</p>
  4. <table width="300" border="1" align="center" height="200">
  5. <tr id="tb">
  6. <td colspan="2" align="center">系统登录</td>
  7. </tr>
  8. <tr id="tb">
  9. <td>工号</td>
  10. <td><input type="text" name="username" size="20"></td>
  11. </tr>
  12. <tr id="tb">
  13. <td>密码</td>
  14. <td><input type="password" name="password" size="20"></td>
  15. </tr>
  16. <tr>
  17. </tr>
  18. <tr id="tb">
  19. <td colspan="2"><input type="submit" name="submit" value="登录">
  20. <a href="register.jsp">注册新用户</a></td>
  21. </tr>
  22. </table>
  23. </form>
  24. </body>

 register.jsp

  1. <body background="image/3.jpg">
  2. <form name="form1" action="loginservlet?method=register" method="post">
  3. <p id=jerry>酒店管理系统</p>
  4. <table width="300" border="1" align="center">
  5. <tr>
  6. <td colspan="2" align="center">注册窗口</td>
  7. </tr>
  8. <tr>
  9. <td>用户名</td>
  10. <td><input type="text" name="username"></td>
  11. </tr>
  12. <tr>
  13. <td>密码</td>
  14. <td><input type="password" name="password1"></td>
  15. </tr>
  16. <tr>
  17. <td>确认密码</td>
  18. <td><input type="password" name="password2"></td>
  19. </tr>
  20. <tr>
  21. <td>Email</td>
  22. <td><input type="text" name="email"></td>
  23. </tr>
  24. <tr>
  25. <td colspan="2"><input type="submit" name="submit" value="注册">
  26. <a href="login.jsp">返回</a></td>
  27. </tr>
  28. </table>
  29. </form>
  30. </body>

loginServlet

  1. @WebServlet(urlPatterns="/loginservlet")
  2. public class loginServlet extends HttpServlet{
  3. @Override
  4. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  5. // TODO 自动生成的方法存根
  6. String method=request.getParameter("method");
  7. if("login".equals(method)){
  8. doLogin(request,response);
  9. }
  10. else if("logout".equals(method)){
  11. doLogout(request,response);
  12. }
  13. else if("register".equals(method)){
  14. doAdd(request,response);
  15. }
  16. }
  17. //用户注册
  18. private void doAdd(HttpServletRequest request, HttpServletResponse response)throws ServletException,IOException {
  19. // TODO 自动生成的方法存根
  20. request.setCharacterEncoding("utf-8");
  21. response.setCharacterEncoding("utf-8");
  22. response.setContentType("text/html;charset=utf-8");
  23. String username=request.getParameter("username");
  24. String password1=request.getParameter("password1");
  25. String password2=request.getParameter("password2");
  26. String email=request.getParameter("email");
  27. if(!"".equals(username)&&password1.equals(password2)){
  28. UserBean user_bean=new UserBean();
  29. user_bean.add(username, password1, email);
  30. System.out.println("注册成功!");
  31. response.sendRedirect("login.jsp");
  32. }
  33. else {
  34. System.out.println("注册失败!");
  35. response.sendRedirect("login.jsp");
  36. }
  37. }
  38. //登录
  39. private void doLogin(HttpServletRequest request, HttpServletResponse response)throws ServletException,IOException {
  40. // TODO 自动生成的方法存根
  41. request.setCharacterEncoding("utf-8");
  42. response.setCharacterEncoding("utf-8");
  43. response.setContentType("text/html;charset=utf-8");
  44. String username=request.getParameter("username");
  45. String password=request.getParameter("password");
  46. UserBean user_bean=new UserBean();
  47. if(user_bean.isExist(username)){
  48. if(user_bean.valid(username, password)){
  49. HttpSession session=request.getSession();
  50. session.setAttribute("username",username);
  51. System.out.println("登录成功");
  52. response.sendRedirect("welcome.jsp");
  53. }
  54. else {//密码错误
  55. System.out.println("登录失败1");
  56. response.sendRedirect("login.jsp");
  57. }
  58. }
  59. else {
  60. System.out.println("登录失败2");
  61. response.sendRedirect("login.jsp");
  62. }
  63. }
  64. //退出登录
  65. protected void doLogout(HttpServletRequest request,
  66. HttpServletResponse response) throws ServletException, IOException {
  67. HttpSession session = request.getSession();
  68. session.removeAttribute("username");
  69. System.out.println("退出成功");
  70. response.sendRedirect("login.jsp");
  71. }
  72. @Override
  73. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  74. // TODO 自动生成的方法存根
  75. request.setCharacterEncoding("utf-8");
  76. doGet(request, response);
  77. }
  78. }

4.2 欢迎页面

 welcome.jsp

  1. <body background="image/3.jpg">
  2. <table width="100%">
  3. <p id="ss" class="text">酒店管理系统</p>
  4. <%
  5. Calendar cal = Calendar.getInstance();
  6. SimpleDateFormat format = new SimpleDateFormat("dd日-MM月-yyyy年 HH:mm:ss");
  7. %>
  8. <tr>
  9. <td colspan="2" align="right">登陆成功!欢迎你,<%=(String) session.getAttribute("username")%>
  10. </td>
  11. <td align="right">
  12. <%
  13. out.println(format.format(cal.getTime()));
  14. %>
  15. </td>
  16. </tr>
  17. <tr>
  18. <td colspan="3">
  19. <hr>
  20. </td>
  21. </tr>
  22. <tr>
  23. <td><br> <br> <br> <br> <br> <br>
  24. </td>
  25. </tr>
  26. <tr>
  27. <td colspan="3">
  28. <form name="form1" action="loginservlet?method=logout" method="post">
  29. <table width="450" height="300" border="1" align="center" id="tom">
  30. <tr>
  31. <th colspan="3" align="center">选择功能</th>
  32. </tr>
  33. <tr>
  34. <td><a class="a" href="pageservlet?method=showHouse">客房列表</a></td>
  35. <td><a class="a" href="addhouse.jsp">添加客房</a></td>
  36. </tr>
  37. <tr>
  38. <td><a class="a" href="inhouse.jsp">住房登记</a></td>
  39. <td><a class="a" href="pageservlet?method=showMember">退房登记</a></td>
  40. </tr>
  41. <tr>
  42. <td colspan="3" align="center"><input type="submit"
  43. name="submit" value="退出"></td>
  44. </tr>
  45. </table>
  46. </form>
  47. </td>
  48. </tr>
  49. </div>
  50. </body>

4.3 客房列表功能

 hotelBean.java

  1. public class hotel {
  2. private String name;//房间名称
  3. private int price;//房间价格
  4. private int amount;//房间价格
  5. private String square;//房间面积
  6. private int people;//房间可住人数
  7. public final static int maxpage=4;
  8. public String getName() {
  9. return name;
  10. }
  11. public void setName(String name) {
  12. this.name = name;
  13. }
  14. public int getPrice() {
  15. return price;
  16. }
  17. public void setPrice(int price) {
  18. this.price = price;
  19. }
  20. public int getAmount() {
  21. return amount;
  22. }
  23. public void setAmount(int amount) {
  24. this.amount = amount;
  25. }
  26. public String getSquare() {
  27. return square;
  28. }
  29. public void setSquare(String square) {
  30. this.square = square;
  31. }
  32. public int getPeople() {
  33. return people;
  34. }
  35. public void setPeople(int people) {
  36. this.people = people;
  37. }
  38. }

houseDao

  1. public class houseDao {
  2. DBAccess db=new DBAccess();
  3. public ArrayList<hotel>allhotel(){//显示全部房间
  4. ArrayList<hotel>list=new ArrayList<hotel>();
  5. if(db.createConn()){
  6. String sql="select * from house";
  7. try {
  8. db.query(sql);
  9. while(db.next()){
  10. hotel ho=new hotel();
  11. ho.setName(db.getRs().getString("name"));
  12. ho.setPrice(db.getRs().getInt("price"));
  13. ho.setAmount(db.getRs().getInt("amount"));
  14. ho.setSquare(db.getRs().getString("square"));
  15. ho.setPeople(db.getRs().getInt("people"));
  16. list.add(ho);
  17. }
  18. } catch (SQLException e) {
  19. // TODO 自动生成的 catch 块
  20. e.printStackTrace();
  21. }
  22. finally {
  23. db.closeRs();
  24. db.closeStm();
  25. db.closeConn();
  26. }
  27. }
  28. return list;
  29. }
  30. public hotel show(String name){//显示房间信息
  31. hotel ho=new hotel();
  32. if(db.createConn()){
  33. String sql="select * from house where name=?";
  34. try {
  35. db.pre=db.getConn().prepareStatement(sql);
  36. db.pre.setString(1, name);
  37. db.setRs(db.pre.executeQuery());
  38. if(db.getRs().next()){
  39. ho.setName(db.getRs().getString("name"));
  40. ho.setPrice(db.getRs().getInt("price"));
  41. ho.setAmount(db.getRs().getInt("amount"));
  42. ho.setSquare(db.getRs().getString("square"));
  43. ho.setPeople(db.getRs().getInt("people"));
  44. }
  45. } catch (SQLException e) {
  46. // TODO 自动生成的 catch 块
  47. e.printStackTrace();
  48. }
  49. finally {
  50. db.closeRs();
  51. if(db.pre!=null){
  52. try {
  53. db.pre.close();
  54. } catch (SQLException e) {
  55. // TODO 自动生成的 catch 块
  56. e.printStackTrace();
  57. }
  58. db.closeConn();
  59. }
  60. }
  61. }
  62. return ho;
  63. }
  64. public boolean updatehotel(hotel ho) throws Exception{//修改房间
  65. boolean flag = false;
  66. DBAccess db=new DBAccess();
  67. if(db.createConn()){
  68. String sql="UPDATE house SET name=?,price=?,amount=?,square=?,people=? where name=?";
  69. db.pre=db.getConn().prepareStatement(sql);
  70. db.pre.setString(1, ho.getName());
  71. db.pre.setInt(2, ho.getPrice());
  72. db.pre.setInt(3, ho.getAmount());
  73. db.pre.setString(4, ho.getSquare());
  74. db.pre.setInt(5, ho.getPeople());
  75. db.pre.setString(6, ho.getName());
  76. if(db.pre.executeUpdate() > 0) flag = true;
  77. }
  78. db.closeRs();
  79. db.closeStm();
  80. db.pre.close();
  81. db.closeConn();
  82. return flag;
  83. }
  84. public boolean updateamount(hotel ho){//更新房间数量
  85. boolean flag = false;
  86. DBAccess db=new DBAccess();
  87. if(db.createConn()){
  88. String sql="update house set amount=? where name=?";
  89. try {
  90. db.pre=db.getConn().prepareStatement(sql);
  91. db.pre.setInt(1,ho.getAmount() );
  92. db.pre.setString(2, ho.getName());
  93. if(db.pre.executeUpdate()>0) flag=true;
  94. } catch (SQLException e) {
  95. // TODO 自动生成的 catch 块
  96. e.printStackTrace();
  97. }finally {
  98. try {
  99. db.pre.close();
  100. } catch (SQLException e) {
  101. // TODO 自动生成的 catch 块
  102. e.printStackTrace();
  103. }
  104. db.closeConn();
  105. }
  106. }
  107. return flag;
  108. }
  109. public boolean add(hotel ho) throws Exception{//添加房间
  110. boolean flag = false;
  111. DBAccess db=new DBAccess();
  112. if(db.createConn()){
  113. String sql = "INSERT INTO house(name,price,amount,square,people) VALUES(?,?,?,?,?)";
  114. db.pre=db.getConn().prepareStatement(sql);
  115. db.pre.setString(1, ho.getName());
  116. db.pre.setInt(2, ho.getPrice());
  117. db.pre.setInt(3, ho.getAmount());
  118. db.pre.setString(4, ho.getSquare());
  119. db.pre.setInt(5, ho.getPeople());
  120. if(db.pre.executeUpdate() > 0) flag = true;
  121. }
  122. db.closeRs();
  123. db.closeStm();
  124. db.pre.close();
  125. db.closeConn();
  126. return flag;
  127. }
  128. public boolean delHouse(String name) throws Exception{//删除房间
  129. DBAccess db=new DBAccess();
  130. boolean flag = false;
  131. String sql="DELETE FROM house WHERE name = ?";
  132. if(db.createConn()){
  133. db.pre=db.getConn().prepareStatement(sql);
  134. db.pre.setString(1, name);
  135. if(db.pre.executeUpdate()>0)flag=true;
  136. }
  137. db.closeConn();
  138. db.closeStm();
  139. db.pre.close();
  140. db.closeRs();
  141. return flag;
  142. }
  143. public ArrayList<hotel> findAll(Integer page){//分页查询信息
  144. DBAccess db=new DBAccess();
  145. ArrayList<hotel> list=new ArrayList<hotel>();
  146. try {
  147. if(db.createConn()){
  148. String sql="select * from house limit ?,? ";
  149. db.pre=db.getConn().prepareStatement(sql);
  150. db.pre.setInt(1, (page-1)*hotel.maxpage);
  151. db.pre.setInt(2, hotel.maxpage);
  152. db.setRs(db.pre.executeQuery());
  153. while(db.getRs().next()){
  154. hotel ho=new hotel();
  155. ho.setName(db.getRs().getString("name"));
  156. ho.setPrice(db.getRs().getInt("price"));
  157. ho.setAmount(db.getRs().getInt("amount"));
  158. ho.setSquare(db.getRs().getString("square"));
  159. ho.setPeople(db.getRs().getInt("people"));
  160. list.add(ho);
  161. }
  162. db.closeRs();
  163. db.pre.close();
  164. db.closeConn();
  165. }
  166. } catch( SQLException e) {
  167. e.printStackTrace();
  168. }
  169. return list;
  170. }
  171. public int countPage(){//查询记录总数
  172. DBAccess db=new DBAccess();
  173. int count=0;
  174. try {
  175. if(db.createConn()){
  176. String sql="select count(*) from house ";
  177. db.pre=db.getConn().prepareStatement(sql);
  178. db.setRs(db.pre.executeQuery());
  179. if(db.getRs().next()){
  180. count=db.getRs().getInt(1);
  181. }
  182. }
  183. } catch( SQLException e) {
  184. e.printStackTrace();
  185. }
  186. finally {
  187. db.closeRs();
  188. try {
  189. if(db.pre!=null){
  190. db.pre.close();
  191. }
  192. } catch (Exception e2) {
  193. // TODO: handle exception
  194. }
  195. db.closeConn();
  196. }
  197. return count;
  198. }
  199. }

housemanageServlet

  1. @WebServlet(urlPatterns="/houseServlet")
  2. public class housemanageServlet extends HttpServlet{
  3. @Override
  4. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  5. // TODO 自动生成的方法存根
  6. request.setCharacterEncoding("utf-8");
  7. String method=request.getParameter("method");
  8. if("show".equals(method)){
  9. doShow(request,response);
  10. }
  11. else if("add".equals(method)){
  12. doAdd(request,response);
  13. }
  14. else if("show2".equals(method)){
  15. doShow2(request,response);
  16. }
  17. else if("update".equals(method)){
  18. doUpdate(request,response);
  19. }
  20. else if("update2".equals(method)){
  21. doUpdate2(request,response);
  22. }
  23. else if("delete".equals(method)){
  24. doDel(request,response);
  25. }
  26. }
  27. //删除客房
  28. private void doDel(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
  29. // TODO 自动生成的方法存根
  30. request.setCharacterEncoding("utf-8");
  31. String name=request.getParameter("category");
  32. houseDao house=new houseDao();
  33. try {
  34. if(house.delHouse(name)){
  35. System.out.println("删除成功!");
  36. response.sendRedirect("showhouse.jsp");//删除之后无法立马更新数据
  37. return;
  38. }
  39. else {
  40. System.out.println("删除失败!");
  41. response.sendRedirect("showhouse.jsp");
  42. }
  43. } catch (Exception e) {
  44. // TODO 自动生成的 catch 块
  45. e.printStackTrace();
  46. }
  47. }
  48. //修改客房信息
  49. private void doUpdate2(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
  50. // TODO 自动生成的方法存根
  51. request.setCharacterEncoding("utf-8");
  52. String name=request.getParameter("name");
  53. int price=Integer.parseInt(request.getParameter("price"));
  54. int amount=Integer.parseInt(request.getParameter("amount"));
  55. String square=request.getParameter("square");
  56. int people=Integer.parseInt(request.getParameter("people"));
  57. houseDao house=new houseDao();
  58. hotel ho=new hotel();
  59. ho.setName(name);
  60. ho.setPrice(price);
  61. ho.setAmount(amount);
  62. ho.setSquare(square);
  63. ho.setPeople(people);
  64. try {
  65. if(house.updatehotel(ho)){
  66. System.out.println("修改成功!");
  67. response.sendRedirect("showhouse.jsp");
  68. return;
  69. }
  70. else {
  71. System.out.println("修改失败!");
  72. response.sendRedirect("showhouse.jsp");
  73. }
  74. } catch (Exception e) {
  75. // TODO 自动生成的 catch 块
  76. e.printStackTrace();
  77. }
  78. }
  79. //用来重定向到修改页面
  80. private void doUpdate(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//重定向到 update.jsp
  81. // TODO 自动生成的方法存根
  82. request.setCharacterEncoding("utf-8");
  83. String name=request.getParameter("category");
  84. houseDao house=new houseDao();
  85. hotel ho=house.show(name);
  86. request.setAttribute("ho", ho);
  87. request.getRequestDispatcher("update.jsp").forward(request, response);
  88. }
  89. //显示客房具体信息
  90. private void doShow2(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
  91. // TODO 自动生成的方法存根
  92. request.setCharacterEncoding("utf-8");
  93. String name=request.getParameter("category");
  94. houseDao house=new houseDao();
  95. hotel ho=house.show(name);
  96. HttpSession session=request.getSession();
  97. session.setAttribute("ho", ho);
  98. response.sendRedirect("showhouse2.jsp");
  99. }
  100. //添加客房
  101. private void doAdd(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
  102. // TODO 自动生成的方法存根
  103. request.setCharacterEncoding("utf-8");
  104. String name=request.getParameter("name");
  105. int price=Integer.parseInt(request.getParameter("price"));
  106. int amount=Integer.parseInt(request.getParameter("amount"));
  107. String square=request.getParameter("square");
  108. int people=Integer.parseInt(request.getParameter("people"));
  109. houseDao house=new houseDao();
  110. hotel ho=new hotel();
  111. if(!"".equals(name)&&!"".equals(square)&&0!=price&&0!=amount&&people!=0){
  112. ho.setName(name);
  113. ho.setPrice(price);
  114. ho.setAmount(amount);
  115. ho.setSquare(square);
  116. ho.setPeople(people);
  117. }
  118. else {
  119. System.out.println("添加失败,信息不全");
  120. response.sendRedirect("addhouse.jsp");
  121. }
  122. try {
  123. if(house.add(ho)){
  124. System.out.println("添加成功!");
  125. response.sendRedirect("addhouse.jsp");
  126. }
  127. } catch (Exception e) {
  128. // TODO 自动生成的 catch 块
  129. e.printStackTrace();
  130. }
  131. }
  132. //显示所有客房信息
  133. private void doShow(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
  134. // TODO 自动生成的方法存根
  135. houseDao house_dao=new houseDao();
  136. ArrayList<hotel> house=house_dao.allhotel();
  137. HttpSession session=request.getSession();
  138. session.setAttribute("house", house);
  139. response.sendRedirect("showhouse.jsp");
  140. }
  141. @Override
  142. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  143. // TODO 自动生成的方法存根
  144. doGet(request, response);
  145. }
  146. }

showhouse.jsp(全部)

  1. <body background="image/3.jpg">
  2. <table width="100%">
  3. <p id="ss">酒店管理系统</p>
  4. <%
  5. Calendar cal = Calendar.getInstance();
  6. SimpleDateFormat format = new SimpleDateFormat("dd日-MM月-yyyy年 HH:mm:ss");
  7. %>
  8. <tr>
  9. <td colspan="2" align="right">登陆成功!欢迎你,<%=(String) session.getAttribute("username")%>
  10. </td>
  11. <td align="right">
  12. <%
  13. out.println(format.format(cal.getTime()));
  14. %>
  15. </td>
  16. </tr>
  17. <tr>
  18. <td colspan="3">
  19. <hr>
  20. </td>
  21. </tr>
  22. <tr>
  23. <td><a href="welcome.jsp">返回</a></td>
  24. </tr>
  25. <tr>
  26. <td><br> <br> <br> <br> <br> <br>
  27. </td>
  28. </tr>
  29. </table>
  30. <h2 align="center">所有客房信息</h2>
  31. <table width="400" height="200" border="1" align="center">
  32. <tr>
  33. <td align="center">房间类型</td>
  34. <td align="center">房型价格</td>
  35. <td align="center">可预定数量</td>
  36. <td align="center">操作</td>
  37. </tr>
  38. <%
  39. for (hotel ho : hotels) {
  40. %>
  41. <tr>
  42. <td align="center"><%=ho.getName()%></td>
  43. <td align="center"><%=ho.getPrice()%>¥</td>
  44. <td align="center"><%=ho.getAmount()%></td>
  45. <td><a
  46. href="houseServlet?method=show2&category=<%=ho.getName()%>">查看</a>
  47. <a href="houseServlet?method=update&category=<%=ho.getName()%>">修改</a>
  48. <a href="houseServlet?method=delete&category=<%=ho.getName()%>">删除</a>
  49. </td>
  50. </tr>
  51. <%
  52. }
  53. %>
  54. <tr>
  55. <td align="center" colspan="6" bgcolor="gray">
  56. <%--<%=request.getAttribute("bar") /页 --%> ${bar}/页
  57. </td>
  58. </tr>
  59. </table>
  60. </body>

4.4 查看房型详细信息

4.5 修改客房信息

 4.6 添加客房信息

4.7 住房登记

 memberBean.java

  1. public class member {
  2. private String name;//会员名
  3. private String tel;//手机号
  4. private String category;//房间类型
  5. private String hotelnumber;//房间号
  6. private int people;//入住人数
  7. private String money;//消费
  8. public String getName() {
  9. return name;
  10. }
  11. public void setName(String name) {
  12. this.name = name;
  13. }
  14. public String getTel() {
  15. return tel;
  16. }
  17. public void setTel(String tel) {
  18. this.tel = tel;
  19. }
  20. public String getCategory() {
  21. return category;
  22. }
  23. public void setCategory(String category) {
  24. this.category = category;
  25. }
  26. public String getHotelnumber() {
  27. return hotelnumber;
  28. }
  29. public void setHotelnumber(String hotelnumber) {
  30. this.hotelnumber = hotelnumber;
  31. }
  32. public int getPeople() {
  33. return people;
  34. }
  35. public void setPeople(int people) {
  36. this.people = people;
  37. }
  38. public String getMoney() {
  39. return money;
  40. }
  41. public void setMoney(String money) {
  42. this.money = money;
  43. }
  44. }

 memberDao

  1. public class memberDao {
  2. DBAccess db=new DBAccess();
  3. public boolean add(member me) throws Exception{//添加会员
  4. boolean flag = false;
  5. if(db.createConn()){
  6. String sql = "INSERT INTO member(name,tel,category,hotelnumber,people,money) VALUES(?,?,?,?,?,?)";
  7. db.pre=db.getConn().prepareStatement(sql);
  8. db.pre.setString(1, me.getName());
  9. db.pre.setString(2, me.getTel());
  10. db.pre.setString(3, me.getCategory());
  11. db.pre.setString(4, me.getHotelnumber());
  12. db.pre.setInt(5, me.getPeople());
  13. db.pre.setString(6, me.getMoney());
  14. if(db.pre.executeUpdate() > 0) flag = true;
  15. }
  16. db.closeRs();
  17. db.closeStm();
  18. db.pre.close();
  19. db.closeConn();
  20. return flag;
  21. }
  22. public ArrayList<member> allmember(){//显示所有会员
  23. ArrayList<member>list=new ArrayList<member>();
  24. if(db.createConn()){
  25. String sql="select * from member";
  26. try {
  27. db.query(sql);
  28. while(db.next()){
  29. member me=new member();
  30. me.setName(db.getRs().getString("name"));
  31. me.setTel(db.getRs().getString("tel"));
  32. me.setCategory(db.getRs().getString("category"));
  33. me.setHotelnumber(db.getRs().getString("hotelnumber"));
  34. me.setPeople(db.getRs().getInt("people"));
  35. me.setMoney(db.getRs().getString("money"));
  36. list.add(me);
  37. }
  38. } catch (SQLException e) {
  39. // TODO 自动生成的 catch 块
  40. e.printStackTrace();
  41. }
  42. finally {
  43. db.closeRs();
  44. db.closeStm();
  45. db.closeConn();
  46. }
  47. }
  48. return list;
  49. }
  50. public member showpersonal(String name){//显示会员详细信息
  51. member me=new member();
  52. if(db.createConn()){
  53. String sql="select * from member where name=?";
  54. try {
  55. db.pre=db.getConn().prepareStatement(sql);
  56. db.pre.setString(1, name);
  57. db.setRs(db.pre.executeQuery());
  58. if(db.getRs().next()){
  59. me.setName(db.getRs().getString("name"));
  60. me.setTel(db.getRs().getString("tel"));
  61. me.setCategory(db.getRs().getString("category"));
  62. me.setHotelnumber(db.getRs().getString("hotelnumber"));
  63. me.setPeople(db.getRs().getInt("people"));
  64. me.setMoney(db.getRs().getString("money"));
  65. }
  66. } catch (SQLException e) {
  67. // TODO 自动生成的 catch 块
  68. e.printStackTrace();
  69. }
  70. finally {
  71. db.closeRs();
  72. if(db.pre!=null){
  73. try {
  74. db.pre.close();
  75. } catch (SQLException e) {
  76. // TODO 自动生成的 catch 块
  77. e.printStackTrace();
  78. }
  79. db.closeConn();
  80. }
  81. }
  82. }
  83. return me;
  84. }
  85. public boolean delMember(String tel) throws Exception{//删除会员信息
  86. DBAccess db=new DBAccess();
  87. boolean flag = false;
  88. String sql="DELETE FROM member WHERE tel = ?";
  89. if(db.createConn()){
  90. db.pre=db.getConn().prepareStatement(sql);
  91. db.pre.setString(1, tel);
  92. if(db.pre.executeUpdate()>0)flag=true;
  93. }
  94. db.closeConn();
  95. db.closeStm();
  96. db.pre.close();
  97. db.closeRs();
  98. return flag;
  99. }
  100. public ArrayList<member> findAll(Integer page){//分页查询信息
  101. DBAccess db=new DBAccess();
  102. ArrayList<member> list=new ArrayList<member>();
  103. try {
  104. if(db.createConn()){
  105. String sql="select * from member limit ?,? ";
  106. db.pre=db.getConn().prepareStatement(sql);
  107. db.pre.setInt(1, (page-1)*hotel.maxpage);
  108. db.pre.setInt(2, hotel.maxpage);
  109. db.setRs(db.pre.executeQuery());
  110. while(db.getRs().next()){
  111. member me=new member();
  112. me.setName(db.getRs().getString("name"));
  113. me.setTel(db.getRs().getString("tel"));
  114. me.setCategory(db.getRs().getString("category"));
  115. me.setHotelnumber(db.getRs().getString("hotelnumber"));
  116. me.setPeople(db.getRs().getInt("people"));
  117. me.setMoney(db.getRs().getString("money"));
  118. list.add(me);
  119. }
  120. db.closeRs();
  121. db.pre.close();
  122. db.closeConn();
  123. }
  124. } catch( SQLException e) {
  125. e.printStackTrace();
  126. }
  127. return list;
  128. }
  129. public int countPage(){//查询记录总数
  130. DBAccess db=new DBAccess();
  131. int count=0;
  132. try {
  133. if(db.createConn()){
  134. String sql="select count(*) from member ";
  135. db.pre=db.getConn().prepareStatement(sql);
  136. db.setRs(db.pre.executeQuery());
  137. if(db.getRs().next()){
  138. count=db.getRs().getInt(1);
  139. }
  140. }
  141. } catch( SQLException e) {
  142. e.printStackTrace();
  143. }
  144. finally {
  145. db.closeRs();
  146. try {
  147. if(db.pre!=null){
  148. db.pre.close();
  149. }
  150. } catch (Exception e2) {
  151. // TODO: handle exception
  152. }
  153. db.closeConn();
  154. }
  155. return count;
  156. }
  157. }

membermanageServlet

  1. @WebServlet(urlPatterns="/membermanage")
  2. public class membermanageServlet extends HttpServlet{
  3. @Override
  4. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  5. // TODO 自动生成的方法存根
  6. request.setCharacterEncoding("utf-8");
  7. String method=request.getParameter("method");
  8. if("inroom".equals(method)){
  9. doInroom(request,response);
  10. }
  11. else if ("outroom".equals(method)) {
  12. doOutroom(request,response);
  13. }
  14. else if("personalmessage".equals(method)){
  15. doShowPerMessage(request,response);
  16. }
  17. else if("delmember".equals(method)){
  18. doDelMember(request,response);
  19. }
  20. }
  21. //退房操作
  22. private void doDelMember(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
  23. // TODO 自动生成的方法存根
  24. request.setCharacterEncoding("utf-8");
  25. String tel=request.getParameter("tel");
  26. String category=request.getParameter("category");
  27. houseDao house=new houseDao();
  28. memberDao member=new memberDao();
  29. hotel ho=null;
  30. try {
  31. if(member.delMember(tel)){
  32. ho=house.show(category);
  33. ho.setAmount(ho.getAmount()+1);//获取房型相关信息
  34. house.updateamount(ho);
  35. System.out.println("退房成功!");
  36. response.sendRedirect("welcome.jsp");
  37. return;
  38. }
  39. } catch (Exception e) {
  40. // TODO 自动生成的 catch 块
  41. e.printStackTrace();
  42. }
  43. }
  44. //显示会员信息
  45. private void doShowPerMessage(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
  46. // TODO 自动生成的方法存根
  47. request.setCharacterEncoding("utf-8");
  48. String name=request.getParameter("name");
  49. memberDao member=new memberDao();
  50. member mb=member.showpersonal(name);
  51. HttpSession session=request.getSession();
  52. session.setAttribute("mb", mb);
  53. //request.setAttribute("mb", mb);
  54. response.sendRedirect("showmemberMassage.jsp");
  55. //request.getRequestDispatcher("showmemberMassage.jsp").forward(request, response);
  56. }
  57. //住房登记
  58. private void doInroom(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
  59. // TODO 自动生成的方法存根
  60. request.setCharacterEncoding("utf-8");
  61. String name=request.getParameter("name");
  62. String tel=request.getParameter("tel");
  63. String category=request.getParameter("category");
  64. String housenumber=request.getParameter("housenumber");
  65. int people=Integer.parseInt(request.getParameter("people"));
  66. String money=request.getParameter("money");
  67. memberDao member =new memberDao();
  68. houseDao house=new houseDao();
  69. hotel ho=null;
  70. if(name!=null&&tel!=null&&category!=null&&housenumber!=null&&people!=0&&money!=null){
  71. member me=new member();
  72. me.setName(name);
  73. me.setTel(tel);
  74. me.setCategory(category);
  75. me.setHotelnumber(housenumber);
  76. me.setPeople(people);
  77. me.setMoney(money);
  78. try {
  79. ho=house.show(category);//根据房间类型获取房间
  80. if(member.add(me)&&ho.getAmount()>0){
  81. //System.out.println("添加会员成功!");
  82. ho.setAmount(ho.getAmount()-1);
  83. house.updateamount(ho);//更改房间数量
  84. System.out.println("添加会员成功!");
  85. response.sendRedirect("welcome.jsp");
  86. }
  87. else {
  88. System.out.println("添加会员失败,没有可用的房间!");
  89. response.sendRedirect("inhouse.jsp");
  90. }
  91. } catch (Exception e) {
  92. // TODO 自动生成的 catch 块
  93. e.printStackTrace();
  94. }
  95. }
  96. else {
  97. System.out.println("添加会员失败,信息不全!");
  98. response.sendRedirect("inhouse.jsp");
  99. }
  100. }
  101. //退房登记
  102. private void doOutroom(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
  103. // TODO 自动生成的方法存根
  104. memberDao member=new memberDao();
  105. ArrayList<member> me=member.allmember();
  106. HttpSession session=request.getSession();
  107. session.setAttribute("me", me);
  108. response.sendRedirect("outhouse.jsp");
  109. }
  110. @Override
  111. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  112. // TODO 自动生成的方法存根
  113. request.setCharacterEncoding("utf-8");
  114. doGet(request, response);
  115. }
  116. }

4.8 退房登记

4.9 会员信息详情

 

 初入java web很多知识还没有深入,对本系统有很多不足的地方,功能也比较单一,在后面会陆续对本系统功能进一步完善,如有不妥的地方,欢迎大家交流!


网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发