简述MVC 书本数据库增删查改操作

黄瑞生117333440127

1.简述MVC

  • M:model (模型):一个功能,用JavaBean实现
  • V:View(视图):用于展示,以及用户交互,使用html等前端技术实现
  • C:Controller(控制器):接受请求,将请求跳转到模型进行处理,模型处理完毕后,再将处理的结果返回给请求处,一般用Servlet实现控制器

2.掌握JDBC的基本操作

首先在Dos窗口使用命令创建一个book表

1

然后在eclipse创建一个实体类Book类

package com.hrs.entity;

public class Book {
	private int id;
	private String bookName;
	private int price;
	private String description;
	public String  toString() {
		return "id="+id+"bookName="+bookName+"price="+price+"description="+description;
		
	}
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getBookName() {
		return bookName;
	}
	public void setBookName(String bookName) {
		this.bookName = bookName;
	}
	public int getPrice() {
		return price;
	}
	public void setPrice(int price) {
		this.price = price;
	}
	public String getDescription() {
		return description;
	}
	public void setDescription(String description) {
		this.description = description;
	}
	public Book(int id, String bookName, int price,String description) {
		super();
		this.id = id;
		this.bookName = bookName;
		this.price = price;
		this.description=description;
	}

	public Book() {
		super();
	}


}

创建方法类

方法类中增加方法

package book.ff;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.hrs.entity.*;
import com.mysql.jdbc.Connection;
public class Add {
			public void login(Book book) {
				
				try {
					Class.forName("com.mysql.jdbc.Driver");
				} catch (ClassNotFoundException e) {
					
					e.printStackTrace();
				}
				try {
					java.sql.Connection connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","123456");
					String sql="INSERT INTO book VALUES (?,? ,?,?)";
					PreparedStatement pstmt=connection.prepareStatement(sql);
					pstmt.setInt(1, book.getId());
					pstmt.setString(2, book.getBookName());
					pstmt.setInt(3, book.getPrice());
					pstmt.setString(4, book.getDescription());
					ResultSet rs=pstmt.executeQuery();
					rs.close();
					connection.close();
					pstmt.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
				
			}
}

方法类中删方法

package book.ff;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.hrs.entity.*;
import com.mysql.jdbc.Connection;
public class Delete {
			public void login(Book book) {
			
				try {
					Class.forName("com.mysql.jdbc.Driver");
				} catch (ClassNotFoundException e) {
					
					e.printStackTrace();
				}
				try {
					java.sql.Connection connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","123456");
					String sql="DELETE FROM book WHERE id = ?";
					PreparedStatement pstmt=connection.prepareStatement(sql);
					pstmt.setInt(1, book.getId());
					ResultSet rs=pstmt.executeQuery();
					rs.close();
					connection.close();
					pstmt.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
				
			}
}

方法中查方法

package book.ff;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.hrs.entity.*;
import com.mysql.jdbc.Connection;
public class Find {
			public void login(Book book) {
				
				try {
					Class.forName("com.mysql.jdbc.Driver");
				} catch (ClassNotFoundException e) {
					
					e.printStackTrace();
				}
				try {
					java.sql.Connection connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","123456");
					String sql="select * from book where bookNmae=?";
					PreparedStatement pstmt=connection.prepareStatement(sql);
					pstmt.setString(1, book.getBookName());
					ResultSet rs=pstmt.executeQuery();
					rs.close();
					connection.close();
					pstmt.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
				
			}
}

方法类中改方法

package book.ff;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.hrs.entity.*;
import com.mysql.jdbc.Connection;
public class Change {
			public void login(Book book) {
				
				try {
					Class.forName("com.mysql.jdbc.Driver");
				} catch (ClassNotFoundException e) {
					
					e.printStackTrace();
				}
				try {
					java.sql.Connection connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","123456");
					String sql="UPDATE book SET id = ? and  bookName=? and price=? and description=?";
					PreparedStatement pstmt=connection.prepareStatement(sql);
					pstmt.setInt(1, book.getId());
					pstmt.setString(2, book.getBookName());
					pstmt.setInt(3, book.getPrice());
					pstmt.setString(4, book.getDescription());
					ResultSet rs=pstmt.executeQuery();
					rs.close();
					connection.close();
					pstmt.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
				
			}
}

测试类
package com.hrs.TestBook;

import com.hrs.entity.Book;

public class Books {
	Book book=new Book(1, "《你好》", 30,"好书");
	
}

MVC模式的实现对数据库增删改查 部分代码: package dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; import common.DBConnection; import bean.Contact; public class ContactDAO { public List getAllContact() throws Exception{ Connection conn=DBConnection.getConntion(); PreparedStatement ps=conn.prepareStatement("select * from Contact"); ResultSet rs=ps.executeQuery(); List list = new ArrayList(); while(rs.next()){ int id = rs.getInt("id"); String name = rs.getString("name"); String phone = rs.getString("phone"); String address = rs.getString("address"); Contact c = new Contact(); c.setId(id); c.setName(name); c.setPhone(phone); c.setAddress(address); list.add(c); } rs.close(); ps.close(); conn.close(); return list; } public void addContact(String name,String phone,String address) throws Exception{ String sql = "insert into contact(id,name,phone,address) values(seq_contact.nextval,?,?,?)"; Connection con = DBConnection.getConntion(); PreparedStatement pstmt = con.prepareStatement(sql); pstmt.setString(1, name); pstmt.setString(2, phone); pstmt.setString(3, address); pstmt.executeUpdate(); } public void delContact(int id) throws Exception{ String sql = "delete from contact where id=?"; Connection con = DBConnection.getConntion(); PreparedStatement pstmt = con.prepareStatement(sql); pstmt.setInt(1, id); pstmt.executeUpdate(); } public Contact getContactById(int id) throws Exception{ String sql = "select * from Contact where id=?"; Connection con = DBConnection.getConntion(); PreparedStatement pstmt = con.prepareStatement(sql); pstmt.setInt(1, id); ResultSet rs = pstmt.executeQuery(); Contact c = null; while(rs.next()){ // int id = rs.getInt("id"); String name=rs.getString("name"); String p
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值