javaweb增删改查

大二下学期机考题目:基于javaweb对Address的增删改查



Address类

package entity;

public class Address{
	private int id;
	private String name;
	private String street;
	private String city;
	private String state;
	private String zip;

	public int getId(){
		return id;
	}
	public void setId(int id){
	    this.id = id;
	}
	public String getName(){
		return name;
	}
	public void setName(String name){
	    this.name = name;
	}
	public String getStreet(){
		return street;
	}
	public void setStreet(String street){
	    this.street = street;
	}
	public String getCity(){
		return city;
	}
	public void setCity(String city){
	    this.city = city;
	}
	public String getState(){
		return state;
	}
	public void setState(String state){
	    this.state = state;
	}
	public String getZip(){
		return zip;
	}
	public void setZip(String zip){
	    this.zip = zip;
	}
}

工具类

package util;

import java.sql.*;

public class JdbcUtil{
	static{
	   try{
	       //Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
		   Class.forName("com.mysql.jdbc.Driver");
	   }catch(ClassNotFoundException e){
		   e.printStackTrace();
	   }
	}

	public static Connection getConnection() throws SQLException{
		//return DriverManager.getConnection("jdbc:odbc:address");
		return DriverManager.getConnection("jdbc:mysql://localhost:3306/address?user=root&password=root&characterEncoding=utf-8");
	}
	
	public static void close(Statement stmt,Connection conn)throws SQLException{
	     stmt.close();
		 conn.close();
	}

	public static void close(ResultSet rs,Statement stmt,Connection conn)throws SQLException{
	     rs.close();
		 close(stmt,conn);
	}
    
}

dao包

//DAO:Data Access Object,Design Pattern设计模式
package dao;

import java.sql.*;
import java.util.*;

import entity.*;
import util.*;

public class AddressDao{
	public void add(Address address){
		try{
			Connection conn = JdbcUtil.getConnection();
			PreparedStatement pstmt = conn.prepareStatement("insert into address (name,street,city,state,zip) values (?,?,?,?,?)");
			pstmt.setString(1,address.getName());
			pstmt.setString(2,address.getStreet());
			pstmt.setString(3,address.getCity());
			pstmt.setString(4,address.getState());
			pstmt.setString(5,address.getZip());
			pstmt.executeUpdate();
			JdbcUtil.close(pstmt,conn);
		}catch(SQLException e){
		    e.printStackTrace();
			throw new RuntimeException(e);
		}
	}
	public void delete(int id){
		try{
			Connection conn = JdbcUtil.getConnection();
			PreparedStatement pstmt = conn.prepareStatement("delete from address where id =?");
			pstmt.setInt(1,id);
			pstmt.executeUpdate();
			JdbcUtil.close(pstmt,conn);
		}catch(SQLException e){
		    e.printStackTrace();
			throw new RuntimeException(e);
		}
	}
	public void update(Address address){
		try{
			Connection conn = JdbcUtil.getConnection();
			PreparedStatement pstmt = conn.prepareStatement("update address set name=?,street=?,city=?,state=?,zip=? where id=?");
			pstmt.setString(1,address.getName());
			pstmt.setString(2,address.getStreet());
			pstmt.setString(3,address.getCity());
			pstmt.setString(4,address.getState());
			pstmt.setString(5,address.getZip());
			pstmt.setInt(6,address.getId());
			pstmt.executeUpdate();
			JdbcUtil.close(pstmt,conn);
		}catch(SQLException e){
		    e.printStackTrace();
			throw new RuntimeException(e);
		}
	}
    public List<Address> findAll(){
		List<Address> list = new ArrayList<Address>();
		try{
			Connection conn = JdbcUtil.getConnection();
			PreparedStatement pstmt = conn.prepareStatement("select * from address");
			ResultSet rs = pstmt.executeQuery();
			while(rs.next()){
			   Address address = new Address();
			   address.setId(rs.getInt(1));
			   address.setName(rs.getString(2));
			   address.setStreet(rs.getString(3));
			   address.setCity(rs.getString(4));
			   address.setState(rs.getString(5));
			   address.setZip(rs.getString(6));
			   list.add(address);
			}

			JdbcUtil.close(pstmt,conn);
		}catch(SQLException e){
		    e.printStackTrace();
			throw new RuntimeException(e);
		}

		return list;
	}
    
    public Address findById(int id){
		Address address = new Address();
		try{
			Connection conn = JdbcUtil.getConnection();
			PreparedStatement pstmt = conn.prepareStatement("select * from address where id=?");
			pstmt.setInt(1,id);
			ResultSet rs = pstmt.executeQuery();
			if(rs.next()){
			   address.setId(rs.getInt(1));
			   address.setName(rs.getString(2));
			   address.setStreet(rs.getString(3));
			   address.setCity(rs.getString(4));
			   address.setState(rs.getString(5));
			   address.setZip(rs.getString(6));
			}

			JdbcUtil.close(pstmt,conn);
		}catch(SQLException e){
		    e.printStackTrace();
			throw new RuntimeException(e);
		}

		return address;
	}	
}


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

<html>
  <head>

    
    <title>My JSP 'index.jsp' starting page</title>
	
  </head>
  
  <body>
      <jsp:forward page="AddressServlet?method=list"/>
  </body>
</html>

AddressServlet类负责处理底层数据

package servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import dao.AddressDao;
import entity.Address;

public class AddressServlet extends HttpServlet {
    private AddressDao addressDao = new AddressDao();   
    
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
        String method = request.getParameter("method");
	    String path="list.jsp"; 
		
	    if(method.equals("list")){
		    List<Address> list = addressDao.findAll();
		    request.setAttribute("list", list);
		}else if(method.equals("add")){
			String name = request.getParameter("name");
			String street = request.getParameter("street");
			String city = request.getParameter("city");
			String state = request.getParameter("state");
			String zip = request.getParameter("zip");
			Address address = new Address();
			address.setName(name);
			address.setStreet(street);
			address.setCity(city);
			address.setState(state);
			address.setZip(zip);
			addressDao.add(address);
			
			path="AddressServlet?method=list";
		}else if(method.equals("delete")){
			int id = Integer.parseInt(request.getParameter("id"));
			addressDao.delete(id);
			
			path="AddressServlet?method=list";
		}else if(method.equals("toedit")){
			int id = Integer.parseInt(request.getParameter("id"));
			Address address =  addressDao.findById(id);
			
			request.setAttribute("address", address);
			path ="edit.jsp";
		}else if(method.equals("edit")){
			int id = Integer.parseInt(request.getParameter("id"));
			String name = request.getParameter("name");
			String street = request.getParameter("street");
			String city = request.getParameter("city");
			String state = request.getParameter("state");
			String zip = request.getParameter("zip");
			Address address = new Address();
			address.setId(id);
			address.setName(name);
			address.setStreet(street);
			address.setCity(city);
			address.setState(state);
			address.setZip(zip);
			addressDao.update(address);
			
			path="AddressServlet?method=list";
		}
		request.getRequestDispatcher(path).forward(request, response);
		
		
	}

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

}

list文件显示所有信息

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%@ page import="entity.Address;"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    
    <title>list.jsp</title>
	
  </head>
  
  <body>
               
               <table border="1">
                 <tr><td>Id</td><td>Name</td><td>Street</td>
                       <td>City</td><td>State</td><td>Zip</td><td>Option</td></tr> 
               <%  
                   List<Address> list =(List<Address>)request.getAttribute("list"); 
                   for(Address addr : list){
               %>
                  <tr><td><%= addr.getId() %></td><td><%= addr.getName() %></td><td><%= addr.getStreet() %></td>
                       <td><%= addr.getCity() %></td><td><%= addr.getState() %></td><td><%= addr.getZip() %></td>
                       <td><a href="AddressServlet?method=delete&id=<%= addr.getId() %>">delete</a>  
                             <a href="AddressServlet?method=toedit&id=<%= addr.getId() %>">edit</a></td>
                       </tr> 
               <% 
                   }
               %>
               </table>
               <a href="add.jsp">Add</a>
  </body>
</html>


add.jsp文件负责增加条目

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>

    
    <title>My JSP 'index.jsp' starting page</title>
	
  </head>
  
  <body>
      <form  action="AddressServlet?method=add" method="post">
         Name:<input type="text" name="name"><br>
         Street:<input type="text" name="street"><br>
         City:<input type="text" name="city"><br>
         State:<input type="text" name="state"><br>
         Zip:<input type="text" name="zip"><br>
         <input type="submit" value="Add"><br>
      </form>
  </body>
</html>


edit文件负责修改

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%@ page import="entity.Address" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>

    
    <title>edit.jsp</title>
	
  </head>
  
  <body>
     <%  
       Address address =  (Address)request.getAttribute("address"); 
     %>
      <form  action="AddressServlet?method=edit&id=<%= address.getId() %>" method="post">
         Name:<input type="text" name="name" value="<%= address.getName() %>"><br>
         Street:<input type="text" name="street" value="<%= address.getStreet() %>"><br>
         City:<input type="text" name="city" value="<%= address.getCity() %>"><br>
         State:<input type="text" name="state" value="<%= address.getState() %>"><br>
         Zip:<input type="text" name="zip" value="<%= address.getZip() %>"><br>
         <input type="submit" value="Edit"><br>
      </form>
  </body>
</html>


  • 6
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值