参考了@弦歌的系列教程https://my.oschina.net/chixn/...
遗憾的是作者只是更新到了增加数据
参考了http://blog.csdn.net/u0146826...的内容
以下是在弦歌Jfinal+idea增删改查(二)基础上实现
以下是项目结构
更改BlogController中的代码
package com.xblog.controller;
import com.jfinal.core.Controller;
import com.xblog.model.Blog;
import java.util.List;
/**
* Created by Administrator on 2017/2/26.
*/
public class BlogController extends Controller{
public void index(){
List<Blog> blogs = Blog.blogDao.find("select * from blog");
setAttr("blogs",blogs);
System.out.print("得到的数据是"+blogs.size()+"条");
render("list.jsp");
}
/**查询代码**/
public void result(){
String sql ="select * from blog where title="+getPara("title");
List<Blog> blogs = Blog.blogDao.find(sql);
setAttr("blogs",blogs);
System.out.print("查询到的数据有"+blogs.size()+"条");
}
public void form(){
Integer id = getParaToInt(0);
if(id!=null&&id>0){
setAttr("blog",Blog.blogDao.findById(id));
}
render("form.jsp");
}
/**
* 提交方法
*/
public void submit(){
Blog blog = getModel(Blog.class,"blog");
blog.save();
//redirect("/blog");
index();
}
/**
* 编辑方法
*/
public void edit(){
form();
}
/**
* 删除方法
*/
public void del(){
Blog.blogDao.deleteById(getPara(0));
redirect("/blog");
}
/**
* 更新方法
*/
public void update(){
Blog blog = getModel(Blog.class,"blog");
blog.update();
redirect("/blog");
}
blog中增加一行代码 第二行的其实可以删掉了
CommonConfig中的代码
package com.xblog;
import com.jfinal.config.*;
import com.jfinal.kit.PropKit;
import com.jfinal.plugin.activerecord.ActiveRecordException;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.jfinal.plugin.c3p0.C3p0Plugin;
import com.jfinal.render.ViewType;
import com.xblog.controller.BlogController;
import com.xblog.controller.Indexcontroller;
import com.xblog.model.Blog;
import java.awt.image.IndexColorModel;
/**
* Created by Administrator on 2017/2/26.
*/
public class CommonConfig extends JFinalConfig{
@Override
public void configConstant(Constants me) {
PropKit.use("config.properties"); //加载配置文件
me.setViewType(ViewType.JSP); //设置视图模板类型
me.setBaseViewPath("/view"); //设置视图模板的基本路径
me.setDevMode(true);
}
@Override
public void configRoute(Routes me) {
me.add("/", Indexcontroller.class,"/index");
me.add("/blog", BlogController.class); //建立两个访问路由
}
@Override
public void configPlugin(Plugins me) {
//配置C3p0数据库连续插件
C3p0Plugin c3p0Plugin=new C3p0Plugin(PropKit.get("jdbcUrl"),PropKit.get("mysql.user"),PropKit.get("mysql.password").trim());
me.add(c3p0Plugin);
//配置ActiveRecord插件
ActiveRecordPlugin arp=new ActiveRecordPlugin(c3p0Plugin);
me.add(arp);
//arp.setShowSql(true);
arp.addMapping("blog",Blog.class);
}
@Override
public void configInterceptor(Interceptors me) {
}
@Override
public void configHandler(Handlers me) {
}
}
form页面的主要代码
<form action="${blog==null?'/blog/submit':'/blog/update'}" method="post"><%--/blog/addblog--%>
<input type="hidden" name="blog.id" value="${blog.id}">
<P><label>标题:</label><input type="text" name="blog.title"></P>
<p><label>内容:</label>
<textarea style="width: 600px;height: 200px;" name="blog.content"></textarea>
</p>
<input type="submit" value="提交">
</form>
list页面主要代码
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %><%-- 这句很重要 不能漏--%>
<html>
<head>
<title>list</title>
</head>
<body>
<div>
<a href="/blog/form">新增用户</a>
</div>
<form action="/blog/result" method="post">
<input type="text" name="title">
<input type="submit" value="搜索">
</form>
<table class="table">
<thead>
<tr>
<th colspan="5" align="center">用户信息表</th>
</tr>
<tr>
<th>ID</th> <th>标题</th><th>内容</th><th>操作</th>
</tr>
</thead>
<tbody>
<c:forEach items="${blogs}" var="blog">
<tr>
<td>${blog.id}</td> <td>${blog.title}</td> <td>${blog.content}</td>
<td><a href="/blog/edit/${blog.id}">修改</a>
<a href="/blog/del/${blog.id}">删除</a></td>
</tr>
</c:forEach>
</tbody>
</table>
</body>
</html>
本例是Jfinal2.0+Tomcat+idea+win8.1下运行 本人新手欢迎指教
最后生成项目运行 输入http://localhost/blog/form 既可提交表单
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。