EasyUi之书籍功能(CRUD)

前言:昨天与大家分享了EasyUi项目之登录、注册以及权限树形展示,而今天的内容是继而昨天的内容,进行书籍的增删改查。而今天也会讲解到一个关于easyui的之前没有分享的新的控件---combobox(下拉框)

一、明确目标:

        1、点击新增书籍时弹出新增书籍界面,而类型将会进行下拉框的显示。
        2、新增一本书后,该书就会显示到未上架的界面中。

        3、在未上架的界面中点击上架就会到显示到已上架中

        4、在未上架的界面中点击修改就会进行修改

        5、在已上架的界面中点击下架就会到显示到已下架中

二、明确功能:

                      1、用combobox控件进行类型的显示、增加

                      2、修改

                      3、编辑状态(上架、下架——因为上架和下架的功能是根据该书籍的状态进行区分的,1表示未上架,2表示已上架,3表示已下架)

三、代码已经效果展示:

        一、用combobox控件进行类型的显示

               1、思路:

                           1、先建好关于category表的实体类

                           2、之后创建categorydao层(写好查询全部的方法)

                           3、写好categoryaction包(这是连接前端的代码)

                           4、配置好mvc.xml文件

                           5、之后到对应该出现下拉框位置写好js代码

               2、代码展示:

                     2.1实体类:

package com.zking.entity;

public class Category {
	private long id;
	private String name;

	public long getId() {
		return id;
	}

	public void setId(long id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Category(long id, String name) {
		super();
		this.id = id;
		this.name = name;
	}

	@Override
	public String toString() {
		return "Category [id=" + id + ", name=" + name + "]";
	}

	public Category() {
		// TODO Auto-generated constructor stub
	}

}

                     2.2、categorydao(list方法):

package com.zking.dao;

import java.util.List;

import com.zking.entity.Category;
import com.zking.util.BaseDao;
import com.zking.util.PageBean;

public class CategoryDao extends BaseDao<Category> {
	public List<Category> list(Category category, PageBean pageBean) throws Exception {
		String sql="select * from t_easyui_category ";
		return super.executeQuery(sql, Category.class, pageBean);
	}

}

                     2.3、categoryaction:

public class CategoryAction  extends ActionSupport implements ModelDriver<Category>{
	private Category category=new Category();
	private CategoryDao cd=new CategoryDao();
	
	public Category getModel() {
		return category;
	}
	
	public String combobox(HttpServletRequest req, HttpServletResponse resp)  {
		try {
			List<Category> list = cd.list(category, null);
			ResponseUtil.writeJson(resp, list);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}

                     2.4、配置好mvc.xml文件:

<action path="/category" type="com.zking.web.CategoryAction">
	</action>

                     2.5、写好js代码:

下拉框html代码:
<div style="margin-bottom:20px">
            <input id="cid" name="cid" value="" label="类别" >
            <%--<select class="easyui-combobox" name="cid" label="类别" 
                 style="width:100%">--%>
                <%--<option value="1">文艺</option>--%>
                <%--<option value="2">小说</option>--%>
                <%--<option value="3">青春</option>--%>
            <%--</select>--%>
        </div>  

js方法:
$(function () {
    	$('#cid').combobox({    
    	    url:'${pageContext.request.contextPath}/category.action?methodName=combobox',    
    	    valueField:'id',    
    	    textField:'name'   
    	});  


    });

               3、效果展示:

         二、增加

                1、代码展示:

	public void add(Book t) throws Exception {
		t.setPinyin(PinYinUtil.getAllPingYin(t.getName()));
		t.setDeployTime(new Date());
		String sql="insert into t_easyui_book(name,pinyin,cid,author,price,image,publishing,description,state,deployTime,sales) values(?,?,?,?,?,?,?,?,?,?,?)";
		super.executeUpdate(sql, t, new String[] {"name","pinyin","cid","author","price","image","publishing","description","state","deployTime","sales"});
	}

              2.效果展示:

 在右下角可以得到,数据为28条,现在进行增加

现在可以看到已经是30条数据了,新增成功

 新增成功已将书籍添加到了未上架的界面中:

          三、修改

                1、代码展示:

public void edit(Book t) throws Exception {
		super.executeUpdate("update t_easyui_book set name=?,pinyin=?,cid=?,"
				+ "author=?,price=?,image=?,publishing=?,description=?,state=?,deployTime=?,sales=? where id=?", t, 
				new String[] {"name","pinyin","cid","author","price","image","publishing","description","state","deployTime","sales","id"});
	}

                1、效果展示:

修改前:

 ​​​​​​​修改中:

修改后:

           四、编辑状态

                  一、在未上架的界面中点击上架就会到显示到已上架中:

                       1、思路:

                            1、在bookdao中写好编辑状态的方法名为editstatus(根据id进行state状态的修改)

                            2、然后找到未上架界面,找到上架的超链接

                            3、之后写js代码(在跳转路径中固定写好要变成的状态)

                            4、最后写刷新代码

                       2、代码展示:

bookdao:

	public void editStatus(Book t) throws Exception {
		super.executeUpdate("update t_easyui_book set state=? where id=?", t, 
				new String[] {"state","id"});
	}

listbook1.jsp:

 js方法:

 function shangjia() {
        $.messager.confirm('确认','您确认想要上架此书籍吗?',function(r){
            if (r){
                var row = $('#dg').datagrid('getSelected');
                if (row){
                    $.ajax({
                        url:'${pageContext.request.contextPath}/book.action?methodName=editStatus&state=2&id=' + row.id,
                        success:function (data) {
                        	if(data=1){
                        		$('#dg').datagrid('reload'); 
                                  //刷新的代码  
                        	}
                        }
                    })
                } 
            }
        });

    }

在其中的url中定义好要改变的状态,上架的目的就是将状态为未上架改为已上架(将state=1变成state=2)同样的刷新代码也在其中。

                       3、效果展示:

将改书籍上架:

 上架成功:

 同时在未上架界面中要上架的图书已经消失:

                   二、在已上架的界面中点击下架就会到显示到已下架中

                       1、思路:

                             1、和点一是一样的,采用同样的方法:

                            2、然后找到已上架界面,找到下架的超链接

                            3、之后写js代码(在跳转路径中固定写好要变成的状态)

                            4、最后写刷新代码

                       2、代码展示:采用bookdao同样的方法

listbook2.jsp:

 js方法:

   function xiajia() {
        $.messager.confirm('确认','您确认想要下架此书籍吗?',function(r){
            if (r){
                var row = $('#dg').datagrid('getSelected');
                if (row){
                    $.ajax({
                        url:'${pageContext.request.contextPath}/book.action?methodName=editStatus&state=3&id=' + row.id,
                        success:function (data) {
                        	$('#dg').datagrid('reload');                         }
                    })
                }
            }
        });

    }

                       3、效果展示:将书籍名为阿发的书籍下架

 下架中:

 书籍名为阿发这本书已经消失:

 在已下架中可以看到阿发这本书:

 以上效果均已实现

总结:今天分享的知识就这些了,功能实现并不难,只要细心与认真都到位就可以了。分享知识就到这了,祝大家爱生活愉快!

 

                                

 

                  

               

             

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值