javaweb增删改查

来源:互联网 发布:日发期货 知乎 编辑:程序博客网 时间:2024/06/03 13:43
赠书 | AI专栏(AI圣经!《深度学习》中文版)    每周荐书:Kotlin、分布式、Keras(评论送书)    【获奖公布】征文 | 你会为 AI 转型么?

javaweb增删改查

3322人阅读 评论(0)收藏举报
分类:
作者同类文章X

    [html] view plain copy
    print?
    1. 大二下学期机考题目:基于javaweb对Address的增删改查  



    Address类

    [java] view plain copy
    print?
    1. package entity;  
    2.   
    3. public class Address{  
    4.     private int id;  
    5.     private String name;  
    6.     private String street;  
    7.     private String city;  
    8.     private String state;  
    9.     private String zip;  
    10.   
    11.     public int getId(){  
    12.         return id;  
    13.     }  
    14.     public void setId(int id){  
    15.         this.id = id;  
    16.     }  
    17.     public String getName(){  
    18.         return name;  
    19.     }  
    20.     public void setName(String name){  
    21.         this.name = name;  
    22.     }  
    23.     public String getStreet(){  
    24.         return street;  
    25.     }  
    26.     public void setStreet(String street){  
    27.         this.street = street;  
    28.     }  
    29.     public String getCity(){  
    30.         return city;  
    31.     }  
    32.     public void setCity(String city){  
    33.         this.city = city;  
    34.     }  
    35.     public String getState(){  
    36.         return state;  
    37.     }  
    38.     public void setState(String state){  
    39.         this.state = state;  
    40.     }  
    41.     public String getZip(){  
    42.         return zip;  
    43.     }  
    44.     public void setZip(String zip){  
    45.         this.zip = zip;  
    46.     }  
    47. }  

    工具类

    [java] view plain copy
    print?
    1. package util;  
    2.   
    3. import java.sql.*;  
    4.   
    5. public class JdbcUtil{  
    6.     static{  
    7.        try{  
    8.            //Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");  
    9.            Class.forName("com.mysql.jdbc.Driver");  
    10.        }catch(ClassNotFoundException e){  
    11.            e.printStackTrace();  
    12.        }  
    13.     }  
    14.   
    15.     public static Connection getConnection() throws SQLException{  
    16.         //return DriverManager.getConnection("jdbc:odbc:address");  
    17.         return DriverManager.getConnection("jdbc:mysql://localhost:3306/address?user=root&password=root&characterEncoding=utf-8");  
    18.     }  
    19.       
    20.     public static void close(Statement stmt,Connection conn)throws SQLException{  
    21.          stmt.close();  
    22.          conn.close();  
    23.     }  
    24.   
    25.     public static void close(ResultSet rs,Statement stmt,Connection conn)throws SQLException{  
    26.          rs.close();  
    27.          close(stmt,conn);  
    28.     }  
    29.       
    30. }  

    dao包

    [java] view plain copy
    print?
    1. //DAO:Data Access Object,Design Pattern设计模式  
    2. package dao;  
    3.   
    4. import java.sql.*;  
    5. import java.util.*;  
    6.   
    7. import entity.*;  
    8. import util.*;  
    9.   
    10. public class AddressDao{  
    11.     public void add(Address address){  
    12.         try{  
    13.             Connection conn = JdbcUtil.getConnection();  
    14.             PreparedStatement pstmt = conn.prepareStatement("insert into address (name,street,city,state,zip) values (?,?,?,?,?)");  
    15.             pstmt.setString(1,address.getName());  
    16.             pstmt.setString(2,address.getStreet());  
    17.             pstmt.setString(3,address.getCity());  
    18.             pstmt.setString(4,address.getState());  
    19.             pstmt.setString(5,address.getZip());  
    20.             pstmt.executeUpdate();  
    21.             JdbcUtil.close(pstmt,conn);  
    22.         }catch(SQLException e){  
    23.             e.printStackTrace();  
    24.             throw new RuntimeException(e);  
    25.         }  
    26.     }  
    27.     public void delete(int id){  
    28.         try{  
    29.             Connection conn = JdbcUtil.getConnection();  
    30.             PreparedStatement pstmt = conn.prepareStatement("delete from address where id =?");  
    31.             pstmt.setInt(1,id);  
    32.             pstmt.executeUpdate();  
    33.             JdbcUtil.close(pstmt,conn);  
    34.         }catch(SQLException e){  
    35.             e.printStackTrace();  
    36.             throw new RuntimeException(e);  
    37.         }  
    38.     }  
    39.     public void update(Address address){  
    40.         try{  
    41.             Connection conn = JdbcUtil.getConnection();  
    42.             PreparedStatement pstmt = conn.prepareStatement("update address set name=?,street=?,city=?,state=?,zip=? where id=?");  
    43.             pstmt.setString(1,address.getName());  
    44.             pstmt.setString(2,address.getStreet());  
    45.             pstmt.setString(3,address.getCity());  
    46.             pstmt.setString(4,address.getState());  
    47.             pstmt.setString(5,address.getZip());  
    48.             pstmt.setInt(6,address.getId());  
    49.             pstmt.executeUpdate();  
    50.             JdbcUtil.close(pstmt,conn);  
    51.         }catch(SQLException e){  
    52.             e.printStackTrace();  
    53.             throw new RuntimeException(e);  
    54.         }  
    55.     }  
    56.     public List<Address> findAll(){  
    57.         List<Address> list = new ArrayList<Address>();  
    58.         try{  
    59.             Connection conn = JdbcUtil.getConnection();  
    60.             PreparedStatement pstmt = conn.prepareStatement("select * from address");  
    61.             ResultSet rs = pstmt.executeQuery();  
    62.             while(rs.next()){  
    63.                Address address = new Address();  
    64.                address.setId(rs.getInt(1));  
    65.                address.setName(rs.getString(2));  
    66.                address.setStreet(rs.getString(3));  
    67.                address.setCity(rs.getString(4));  
    68.                address.setState(rs.getString(5));  
    69.                address.setZip(rs.getString(6));  
    70.                list.add(address);  
    71.             }  
    72.   
    73.             JdbcUtil.close(pstmt,conn);  
    74.         }catch(SQLException e){  
    75.             e.printStackTrace();  
    76.             throw new RuntimeException(e);  
    77.         }  
    78.   
    79.         return list;  
    80.     }  
    81.       
    82.     public Address findById(int id){  
    83.         Address address = new Address();  
    84.         try{  
    85.             Connection conn = JdbcUtil.getConnection();  
    86.             PreparedStatement pstmt = conn.prepareStatement("select * from address where id=?");  
    87.             pstmt.setInt(1,id);  
    88.             ResultSet rs = pstmt.executeQuery();  
    89.             if(rs.next()){  
    90.                address.setId(rs.getInt(1));  
    91.                address.setName(rs.getString(2));  
    92.                address.setStreet(rs.getString(3));  
    93.                address.setCity(rs.getString(4));  
    94.                address.setState(rs.getString(5));  
    95.                address.setZip(rs.getString(6));  
    96.             }  
    97.   
    98.             JdbcUtil.close(pstmt,conn);  
    99.         }catch(SQLException e){  
    100.             e.printStackTrace();  
    101.             throw new RuntimeException(e);  
    102.         }  
    103.   
    104.         return address;  
    105.     }     
    106. }  


    首先在首页index.jsp文件中定向到AddressServlet类中

    [html] view plain copy
    print?
    1. <html>  
    2.   <head>  
    3.   
    4.       
    5.     <title>My JSP 'index.jsp' starting page</title>  
    6.       
    7.   </head>  
    8.     
    9.   <body>  
    10.       <jsp:forward page="AddressServlet?method=list"/>  
    11.   </body>  
    12. </html>  

    AddressServlet类负责处理底层数据

    [html] view plain copy
    print?
    1. package servlet;  
    2.   
    3. import java.io.IOException;  
    4. import java.io.PrintWriter;  
    5. import java.util.List;  
    6.   
    7. import javax.servlet.ServletException;  
    8. import javax.servlet.http.HttpServlet;  
    9. import javax.servlet.http.HttpServletRequest;  
    10. import javax.servlet.http.HttpServletResponse;  
    11.   
    12. import dao.AddressDao;  
    13. import entity.Address;  
    14.   
    15. public class AddressServlet extends HttpServlet {  
    16.     private AddressDao addressDao = new AddressDao();     
    17.       
    18.     public void doGet(HttpServletRequest request, HttpServletResponse response)  
    19.             throws ServletException, IOException {  
    20.         String method = request.getParameter("method");  
    21.         String path="list.jsp";   
    22.           
    23.         if(method.equals("list")){  
    24.             List<Address> list = addressDao.findAll();  
    25.             request.setAttribute("list", list);  
    26.         }else if(method.equals("add")){  
    27.             String name = request.getParameter("name");  
    28.             String street = request.getParameter("street");  
    29.             String city = request.getParameter("city");  
    30.             String state = request.getParameter("state");  
    31.             String zip = request.getParameter("zip");  
    32.             Address address = new Address();  
    33.             address.setName(name);  
    34.             address.setStreet(street);  
    35.             address.setCity(city);  
    36.             address.setState(state);  
    37.             address.setZip(zip);  
    38.             addressDao.add(address);  
    39.               
    40.             path="AddressServlet?method=list";  
    41.         }else if(method.equals("delete")){  
    42.             int id = Integer.parseInt(request.getParameter("id"));  
    43.             addressDao.delete(id);  
    44.               
    45.             path="AddressServlet?method=list";  
    46.         }else if(method.equals("toedit")){  
    47.             int id = Integer.parseInt(request.getParameter("id"));  
    48.             Address address =  addressDao.findById(id);  
    49.               
    50.             request.setAttribute("address", address);  
    51.             path ="edit.jsp";  
    52.         }else if(method.equals("edit")){  
    53.             int id = Integer.parseInt(request.getParameter("id"));  
    54.             String name = request.getParameter("name");  
    55.             String street = request.getParameter("street");  
    56.             String city = request.getParameter("city");  
    57.             String state = request.getParameter("state");  
    58.             String zip = request.getParameter("zip");  
    59.             Address address = new Address();  
    60.             address.setId(id);  
    61.             address.setName(name);  
    62.             address.setStreet(street);  
    63.             address.setCity(city);  
    64.             address.setState(state);  
    65.             address.setZip(zip);  
    66.             addressDao.update(address);  
    67.               
    68.             path="AddressServlet?method=list";  
    69.         }  
    70.         request.getRequestDispatcher(path).forward(request, response);  
    71.           
    72.           
    73.     }  
    74.   
    75.       
    76.     public void doPost(HttpServletRequest request, HttpServletResponse response)  
    77.             throws ServletException, IOException {  
    78.         doGet(request, response);       
    79.           
    80.     }  
    81.   
    82. }  

    list文件显示所有信息

    [html] view plain copy
    print?
    1. <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>  
    2. <%@ page import="entity.Address;"%>  
    3.   
    4. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
    5. <html>  
    6.   <head>  
    7.       
    8.       
    9.     <title>list.jsp</title>  
    10.       
    11.   </head>  
    12.     
    13.   <body>  
    14.                  
    15.                <table border="1">  
    16.                  <tr><td>Id</td><td>Name</td><td>Street</td>  
    17.                        <td>City</td><td>State</td><td>Zip</td><td>Option</td></tr>   
    18.                <%    
    19.                    List<Address> list =(List<Address>)request.getAttribute("list");   
    20.                    for(Address addr : list){  
    21.                %>  
    22.                   <tr><td><%= addr.getId() %></td><td><%= addr.getName() %></td><td><%= addr.getStreet() %></td>  
    23.                        <td><%= addr.getCity() %></td><td><%= addr.getState() %></td><td><%= addr.getZip() %></td>  
    24.                        <td><a href="AddressServlet?method=delete&id=<%= addr.getId() %>">delete</a>    
    25.                              <a href="AddressServlet?method=toedit&id=<%= addr.getId() %>">edit</a></td>  
    26.                        </tr>   
    27.                <%   
    28.                    }  
    29.                %>  
    30.                </table>  
    31.                <a href="add.jsp">Add</a>  
    32.   </body>  
    33. </html>  


    add.jsp文件负责增加条目

    [html] view plain copy
    print?
    1. <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>  
    2.   
    3.   
    4. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
    5. <html>  
    6.   <head>  
    7.   
    8.       
    9.     <title>My JSP 'index.jsp' starting page</title>  
    10.       
    11.   </head>  
    12.     
    13.   <body>  
    14.       <form  action="AddressServlet?method=add" method="post">  
    15.          Name:<input type="text" name="name"><br>  
    16.          Street:<input type="text" name="street"><br>  
    17.          City:<input type="text" name="city"><br>  
    18.          State:<input type="text" name="state"><br>  
    19.          Zip:<input type="text" name="zip"><br>  
    20.          <input type="submit" value="Add"><br>  
    21.       </form>  
    22.   </body>  
    23. </html>  


    edit文件负责修改

    [html] view plain copy
    print?
    1. <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>  
    2. <%@ page import="entity.Address" %>  
    3.   
    4. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
    5. <html>  
    6.   <head>  
    7.   
    8.       
    9.     <title>edit.jsp</title>  
    10.       
    11.   </head>  
    12.     
    13.   <body>  
    14.      <%    
    15.        Address address =  (Address)request.getAttribute("address");   
    16.      %>  
    17.       <form  action="AddressServlet?method=edit&id=<%= address.getId() %>" method="post">  
    18.          Name:<input type="text" name="name" value="<%= address.getName() %>"><br>  
    19.          Street:<input type="text" name="street" value="<%= address.getStreet() %>"><br>  
    20.          City:<input type="text" name="city" value="<%= address.getCity() %>"><br>  
    21.          State:<input type="text" name="state" value="<%= address.getState() %>"><br>  
    22.          Zip:<input type="text" name="zip" value="<%= address.getZip() %>"><br>  
    23.          <input type="submit" value="Edit"><br>  
    24.       </form>  
    25.   </body>  
    26. </html>  


    1
    0
     
     

      相关文章推荐
    • Java Web 应用实例 servlet实现oracle 基本增删改查
    • 关于JSP页面中的pageEncoding和contentType两种属性的区别
    • ORA-01722:无效数字
    • Oracle ADF 异常:Caused By: java.sql.SQLSyntaxErrorException: ORA-01722: 无效数字
    • PreparedStatement批量向数据库插入数据报了这个异常:java.sql.SQLException:ORA-01722: 无效数字
    • javaweb后台的增删改查
    • ASP.NET MVC4(2)ASP.NET MVC4 Web应用之实现简单的增删改查
    • 实现web中报表类型的增删改查的步骤
    • 基于配置实现增删改查WEB应用开发基础框架
    • ASP.NET 使用类对数据库进行增删改查操作
    猜你在找
    【直播】机器学习&数据挖掘7周实训--韦玮
    【套餐】系统集成项目管理工程师顺利通关--徐朋
    【直播】3小时掌握Docker最佳实战-徐西宁
    【套餐】机器学习系列套餐(算法+实战)--唐宇迪
    【直播】计算机视觉原理及实战--屈教授
    【套餐】微信订阅号+服务号Java版 v2.0--翟东平
    【直播】机器学习之矩阵--黄博士
    【套餐】微信订阅号+服务号Java版 v2.0--翟东平
    【直播】机器学习之凸优化--马博士
    【套餐】Javascript 设计模式实战--曾亮
    查看评论

      暂无评论

    发表评论
    • 用 户 名:
    • qq_15237993
    • 评论内容:
    • 插入代码
      HTML/XMLobjective-cDelphiRubyPHPC#C++JavaScriptVisual BasicPythonJavaCSSSQL其它
        
    * 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    快速回复TOP
    原创粉丝点击