J2EE——自定义MVC框架的CRUD操作

1.简单说说MVC是什么?(需要详细的看上一章的J2EE——自定义mvc有详细介绍)

 

MVC全名:Model View Controller,其中Model(模型层)、View(视图层)、Controller(控制层)
它是一种软件设计典范,用于业务逻辑处理、数据、界面显示分离。

2. 使用自定义mvc框架完成CRUD操作

这里所说的CRUD就是增删改查。

其中自定义mvc框架工作原理如图所示:


3. 自定义MVC框架的CRUD操作步骤

 

 其中jar包如图所示:

 

 代码不多(重要的是自己做的mvc.jar包)但是也给一些代码参考一下(细心很重要!!!)——BookDao

package com.zking.mvcplus.dao;


import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;

import com.zking.mvcplus.entity.Book;
import com.zking.mvcplus.util.CommonUtils;
import com.zking.mvcplus.util.PageBean;
import com.zking.mvcplus.util.PinYinUtil;
import com.zking.mvcplus.util.StringUtils;

public class BookDao extends BaseDao<Book> {

	/**
	 * 1.书本新增
	 * @param book
	 */
	public void addBook(Book book) {
		String sql="insert into t_book(book_name,book_name_pinyin,"
				+ " book_price,book_type) values(?,?,?,?)";
		super.executeUpdate(sql, new Object[] {
				book.getBook_name(),
				PinYinUtil.toPinyin(book.getBook_name()).toLowerCase(),
				book.getBook_price(),
				book.getBook_type()
				
		});
	}
	/**
	 * 2.书本删除
	 * @param book
	 */
	public void delBook(Book book) {
		String sql="delete from t_book where book_id=?";
		super.executeUpdate(sql, new Object[] {
				book.getBook_id()
				
		});
	}
	/**
	 * 3.书本编辑
	 * @param book
	 */
	public void editBook(Book book) {
		String sql="update t_book set book_name=?,book_name_pinyin=?,"
				+ "book_price=?,book_type=? where book_id=?";
		super.executeUpdate(sql, new Object[] {
				book.getBook_name(),
				PinYinUtil.toPinyin(book.getBook_name()).toLowerCase(),
				book.getBook_price(),
				book.getBook_type(),
				book.getBook_id()
				
		});
	}
	/**
	 * 4.书本分页查询
	 * @param book
	 * @param pageBean
	 * @return
	 */
	public List<Book> queryBookPager(Book book,PageBean pageBean ){
		String sql="select * from t_book where 1=1";
		//按照书本名称模糊查询
		if(StringUtils.isNotBlank(book.getBook_name()))
			sql+=" and book_name like '%"+book.getBook_name()+"%'";
		//按照书本编号降序排序
		sql+=" order by book_id desc";
		System.out.println(sql);
		return super.excuteQuery(sql, pageBean,new CallBack<Book>(){

			@Override
			public List<Book> foreachRs(ResultSet rs) throws SQLException, Exception {
				return CommonUtils.toList(rs, Book.class);
			}
			
			
		});
		
	}
	/**
	 * 5.根据书本编号ID查询单个书本信息
	 * @param book
	 * @return
	 */
	public Book queryBookById(Book book){
		String sql="select * from t_book where book_id="+book.getBook_id();
		System.out.println(sql);
		List<Book> lst=super.excuteQuery(sql, null,new CallBack<Book>(){

			@Override
			public List<Book> foreachRs(ResultSet rs) throws SQLException, Exception{
				return CommonUtils.toList(rs, Book.class);
			}
			
			
		});
		if(null!=lst&&lst.size()!=0)
			return lst.get(0);
		else
			return null;
		
		
	}
}

 通过反射机制调用以上方法即可。

效果图如下:

 

注意:增删改用重定向  查询用转发

3.1 自定义MVC框架的CRUD操作

3.2.配置config.xml文件

3.3.导入PageTag自定义分页标签类

3.4.导入自定义分页标签的描述文件z.tld
  注:导入到WEB-INF目录下

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值