yu0312chao的gravatar头像
yu0312chao 2014-10-13 15:38:55

JFinal入门学习初级代码demo教程下载

 下面这些介绍都是JFinal官网所写,确实如此呀!!

JFinal 极速开发

   JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。 在拥有Java语言所有优势的同时再拥有ruby、python、php等动态语言的开发效率!为您节约更多时间,去陪恋人、家人和朋友 :) 

JFinal有如下主要特点:

  • MVC架构,设计精巧,使用简单
  • 遵循COC原则,零配置,无xml
  • 独创Db + Record模式,灵活便利
  • ActiveRecord支持,使数据库开发极致快速
  • 自动加载修改后的java文件,开发过程中无需重启web server
  • AOP支持,拦截器配置灵活,功能强大
  • Plugin体系结构,扩展性强
  • 多视图支持,支持FreeMarker、JSP、Velocity
  • 强大的Validator后端校验功能
  • 功能齐全,拥有struts2的绝大部分功能
  • 体积小仅248K,且无第三方依赖

    其他的也不多说啥了!说实话吧,经过这么多天的学习让我明白有些框架的使用会简化代码的复杂性的运用!对于JFinal我本人也才刚刚学习,不知道会学成啥样子!希望有朋友可以跟我一起学习。有的兄弟已经学习好多东西,希望可以共享一下,让我们一起进步!

   首先就是项目中所用到的jar包:

JFinal入门学习初级代码demo教程下载

项目的框架图:

JFinal入门学习初级代码demo教程下载

运行结果展示图:

JFinal入门学习初级代码demo教程下载 JFinal入门学习初级代码demo教程下载

参考的文档我会放到项目中,其实官方网站也有:

JFinal入门学习初级代码demo教程下载

    这是最基础的代码编写,有想和我一起正式学习 JFinal 的友友们可以跟我说一下,学习就是相互督促,相互进步的过程!!希望未来的道路更加的宽广!!!

 

和mysql数据库操作的几个页面代码在下面写出来:不明白的直接问我:

net.nyist.jfinaldemo.yuchao.controller.UserController类的代码:

package net.nyist.jfinaldemo.yuchao.controller;

import net.nyist.jfinaldemo.yuchao.model.User;

import com.jfinal.core.Controller;

/**
 * @author yuchao
 *
 * @school 南阳理工软件学院移动设备应用与开发移动四班
 *
 * @email yu0312chao@163.com
 *
 * @time  2014年10月13日 下午8:43:52
 */

public class UserController extends Controller{
	
	/**显示所有用户*/
   public void index(){
	
	     
	     // String sql ="select * from t_user order by id desc";
	     // setAttr("objectlist", User.dao.find(sql));
	      
	      String sql ="from t_user order by id desc";
	      int pageSize =1;//每一页的大小
	      int pageNumber =1;//当前是第几页
	      setAttr("pageNumber",pageNumber);
	      setAttr("objectlist",  User.dao.paginate(pageNumber, pageSize, "select * ", sql));	     
	      renderFreeMarker("index.html");
   }
   
   public void addUser(){
	   
	   renderFreeMarker("adduser.html");
   }
   
   public void doAddUser(){
	   
	    User user = getModel(User.class,"u");//getModel在字段特别多的情况下使用是比较好的一种方式
        user.set("userpass", "root");
        boolean flag =user.save();
        if (flag) {
			  redirect("/user/");
		}else {
			  renderText("sorry,有些异常,插入异常");
		}
   }
   
   public void queryUserById(){
	   
	   int id = getParaToInt(0);
	   String sql ="select * from t_user where id=? limit 1";
	   User user =User.dao.findFirst(sql, id);
	   setAttr("user", user);
	   renderFreeMarker("edituser.html");
   }
   
   public void deleteUserById(){
	   
	  int id = getParaToInt(0);
	  boolean flag = User.dao.deleteById(id);
	  if (flag) {
		  redirect("/user/");
	     }else {
		  renderText("sorry,有些异常,删除异常");
	  }
   }
   
   public void updateUser(){
	    
	   User user = getModel(User.class,"u");
	   boolean flag = user.update();
	   if (flag) {
			  redirect("/user/");
		     }else {
			  renderText("sorry,有些异常,更新异常");
		  }
   }
}

   

net.nyist.jfinaldemo.yuchao.config.JfianlConfig代码:

package net.nyist.jfinaldemo.yuchao.config;

import net.nyist.jfinaldemo.yuchao.controller.GetParamController;
import net.nyist.jfinaldemo.yuchao.controller.HelloWorldController;
import net.nyist.jfinaldemo.yuchao.controller.UserController;
import net.nyist.jfinaldemo.yuchao.model.User;

import com.jfinal.config.Constants;
import com.jfinal.config.Handlers;
import com.jfinal.config.Interceptors;
import com.jfinal.config.JFinalConfig;
import com.jfinal.config.Plugins;
import com.jfinal.config.Routes;
import com.jfinal.ext.handler.ContextPathHandler;
import com.jfinal.ext.interceptor.SessionInViewInterceptor;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.jfinal.plugin.druid.DruidPlugin;
import com.jfinal.render.ViewType;

/**
 * @author yuchao
 *
 * @school 南阳理工软件学院移动设备应用与开发移动四班
 *
 * @email yu0312chao@163.com
 *
 * @time  2014年10月13日 下午2:10:11
 */

public class JfianlConfig extends JFinalConfig{

	@Override
	public void configConstant(Constants me) {
		/**加载数据库的配置信息*/
		loadPropertyFile("config.txt");
		me.setDevMode(getPropertyToBoolean("devMode",true));
		me.setViewType(ViewType.FREE_MARKER);
	}

	@Override
	public void configHandler(Handlers me) {
	     /**设置上下文路径*/
		me.add(new ContextPathHandler("contextPath"));
	}
	
	/**配置路由*/
	@Override
	public void configRoute(Routes me) {
		
		me.add("/", HelloWorldController.class);
		me.add("/param",GetParamController.class);
		me.add("/user", UserController.class);
	}

	@Override
	public void configPlugin(Plugins me) {
		
		String decPassWord =getProperty("password");
		String decUser =getProperty("user");
		DruidPlugin druid = new DruidPlugin(getProperty("url"),decUser,decPassWord);
		me.add(druid);//添加连接池
		ActiveRecordPlugin arp =new ActiveRecordPlugin(druid);
		me.add(arp);//接入ActiveRecordPlugin插件
		arp.addMapping("t_user",User.class);//实体与表的映射
		
	}

	@Override
	public void configInterceptor(Interceptors me) {
		 
		me.add(new SessionInViewInterceptor());
		//me.add(new FreeMarkerI)
	}
}

 新增页面:

JFinal入门学习初级代码demo教程下载

看看我的效果图吧:

JFinal入门学习初级代码demo教程下载

这些我会共享到百度云盘中供下载:

 链接:http://pan.baidu.com/s/1pJkGfBd

 密码:8h96

地址2 https://pan.baidu.com/s/1cLGxsy


打赏

文件名:jfinaldemo.rar,文件大小:5572.831K 下载
  • /
      • /jfinaldemo
        • /jfinaldemo/.classpath
        • /jfinaldemo/.project
          • /jfinaldemo/.settings
            • /jfinaldemo/.settings/.jsdtscope
            • /jfinaldemo/.settings/org.eclipse.jdt.core.prefs
            • /jfinaldemo/.settings/org.eclipse.wst.common.component
            • /jfinaldemo/.settings/org.eclipse.wst.common.project.facet.core.xml
            • /jfinaldemo/.settings/org.eclipse.wst.jsdt.ui.superType.container
            • /jfinaldemo/.settings/org.eclipse.wst.jsdt.ui.superType.name
          • /jfinaldemo/build
              • /jfinaldemo/build/classes
                  • /jfinaldemo/build/classes/net
                      • /jfinaldemo/build/classes/net/nyist
                          • /jfinaldemo/build/classes/net/nyist/jfinaldemo
                              • /jfinaldemo/build/classes/net/nyist/jfinaldemo/yuchao
                                  • /jfinaldemo/build/classes/net/nyist/jfinaldemo/yuchao/config
                                    • /jfinaldemo/build/classes/net/nyist/jfinaldemo/yuchao/config/JfianlConfig.class
                                  • /jfinaldemo/build/classes/net/nyist/jfinaldemo/yuchao/controller
                                    • /jfinaldemo/build/classes/net/nyist/jfinaldemo/yuchao/controller/HelloWorldController.class
最代码最近下载分享源代码列表最近下载
wodezui6  LV9 2019年7月17日
wyx123456  LV19 2018年11月28日
wbbhappy  LV13 2018年9月11日
看这个看这个  LV3 2018年6月3日
wulihaha  LV1 2018年5月29日
onemee  LV36 2018年5月16日
You Xml  LV7 2018年4月16日
loiyil  LV13 2018年3月29日
执笔写下青春  LV12 2017年10月16日
danyunzhao  LV8 2017年8月31日
最代码最近浏览分享源代码列表最近浏览
lhlhlhlh55 2023年6月12日
暂无贡献等级
crazy11crazy  LV30 2023年6月5日
czx5450  LV16 2022年1月5日
刘亦菲9527  LV15 2021年12月14日
歪歪歪  LV8 2021年3月19日
s30336008  LV2 2021年3月19日
atlanta677  LV3 2020年12月28日
lsc860911  LV11 2020年12月8日
1578753145  LV5 2020年7月24日
shuilianbing  LV6 2020年6月8日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友