技术博客 JFinal增删改查实践

JFinal增删改查实践

经过一段时间的学习,对JFinal已有基本的认知。这还远远不够,学习的目的是为了实际的运用。所以这次我们直接实际去完成一个用JFinal实现的功能。
模块名称:简历管理
包含功能:添加、查询、修改与删除。
根据我个人的思路,我会先了解这个模块的基本信息,建立数据库与表。
接下来就是代码书写。我使用了现成的框架 去添加 简历管理模块。
先是在配置文件中添加路径

@Override
	public void config() {
		
		add("/sys/cmkj", ChuangmengController.class, "/WEB-INF/view/chuangmeng");
	}

我先是在model层书写了功能的实现方法。

public InvokeResult save(Chuangmeng chuangmeng){
		try {
			boolean flag = false;
			if (chuangmeng.getId() == null) {
				flag = chuangmeng.save();
			} else {
				flag = chuangmeng.update();
			}
			if (flag) {
				return InvokeResult.success();
			} else {
				return InvokeResult.failure("保存部门信息失败!");
			}
		} catch (Exception e) {
			e.printStackTrace();
			return InvokeResult.failure("保存用户信息失败!");
		}
	}

	public List getUsers() {
		try {
			return Db.find("select t.id, t.name as text from chuangmeng t where t.1 = 1");
		} catch (Exception e) {
			throw new RuntimeException("获取用户列表异常:"+e.getMessage());
		}
	}

	public InvokeResult delete(String ids) {
		String idarr[] = ids.split(",");
		for(String id : idarr){
			if (!Chuangmeng.dao.findById(id).delete()) {
				throw new RuntimeException(id+"批量删除失败");
			}
		}
		return InvokeResult.success();
	}

获取列表和保存与删除方法。
接下来就是Controller层的书写 有了方法就要去调用。

public class ChuangmengController extends BaseController {

	public void index() {
		render("chuangmeng.jsp");
	}

	public void form() {
		Integer id=this.getParaToInt("id");
		if(id != null){
			this.setAttr("chuangmeng", Chuangmeng.dao.findById(id));
		}
		render("chuangmengForm.jsp");
	}

	/**
	 * 获取用户列表
	 */
	public void getList() {
		String name=this.getPara("name");
		Page pageInfo=Chuangmeng.dao.getChuangmengPage(getPage(), getRows(), name, getOrderbyStr());
		this.renderJson(DataGridModelUtils.toDataGridView(pageInfo));
	}
	
	/**
	 * 保存/修改用户信息
	 */
	public void save(){
		try{
			InvokeResult result=Chuangmeng.dao.save(getModel(Chuangmeng.class));
			this.renderJson(result);
		}catch(Exception e){
			e.printStackTrace();
		}
	}

	/**
	 * 用户删除
	 */
	public void delete() {
		try {
			String ids = getPara("ids");
			InvokeResult result = Chuangmeng.dao.delete(ids);
			this.renderJson(result);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

接着就是view层的书写,Controller层的作用就是响应前端页面的请求,view就是模块的前端页面。
创建.jsp文件。在Controller的顶端写上关联代码。

我建立了两个jsp文件 一个是模块展示页面 另一个是保存页面要填写的信息。
模块展示里 都有删改查的请求代码,

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ include file="/common.jsp"%>



  
  
  职员管理
  

  
  	

这里应注意获取列表的方法,如果表信息有中文要用post方法 不然会出现传参乱码的情况,从而获取不到想要的信息。

保存页面的代码:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>



  
  
  用户表单
  
  
  
    

你可能感兴趣的:(技术博客 JFinal增删改查实践)