jifinal-增删改查及上传图片的实现
来源:互联网 发布:消防大数据平台 编辑:程序博客网 时间:2024/06/05 18:21
之前写了一段时间PHP,现在写java有一些不适应的地方,好在我现在已经实现了增删改查,以及上传图片,其中删除是假删除就是update了删除标志,实现删除在练习时实现过,到说到删除的时候会分开说。
这次公司项目使用的是jifinal+freemarker+mysql,前端就不说了,除了mysql,jifinal和freemarker对我来说都是全新的东西,还有java语言基础也基本没有,所以是边写程序边学习。
1、java的数据走向
freemarker给我的感觉是与smarty的作用一毛一样,有了freemarker实现了java与前端代码的分离,所以使用的时候还是十分亲切的。具体语法看的是前辈的博客:
http://http://blog.csdn.net/fhx007/article/details/7902040/
感兴趣的可以看看,基本够用。
可能懂java的觉得这是常识,对我来说还是晕了一会儿时间的,controller/service/xml那些php可以写在一个文件里,事实上java也可以都写在controller里,但是没有这样做,我觉得这是java的一个特点。
xml:写sql语句,
service:对数据库的操作、接收controller传过来的数据、传数据给controller,
controller:调用service的方法,传数据给service,渲染页面等等。
2、准备工作
- 首先在数据库里建这个表
运行一下自动生成model的文件,会自动生成model和basemodel这个需要自己写,可以多次使用,很方便 ,不过这个不是我写的,我也不会写,用起来很方便。
package com.mult.model;import javax.sql.DataSource;import com.jfinal.kit.PathKit;import com.jfinal.kit.PropKit;import com.jfinal.plugin.activerecord.generator.Generator;import com.jfinal.plugin.c3p0.C3p0Plugin;import com.mult.tools.ToolDataBase;//在数据库表有任何变动时,运行一下 main 方法,极速响应变化进行代码重构public class _JMultGenerator {public static DataSource getDataSource() { C3p0Plugin c3p0Plugin = createC3p0Plugin(); c3p0Plugin.start(); return c3p0Plugin.getDataSource();}public static C3p0Plugin createC3p0Plugin() { //return new C3p0Plugin(PropKit.get("jdbcUrl"), PropKit.get("user"), PropKit.get("password").trim()); PropKit.use("config.properties"); return new C3p0Plugin(ToolDataBase.getDBInfo().jdbcUrl, ToolDataBase.getDBInfo().userName, ToolDataBase.getDBInfo().passWord);}public static void main(String[] args) {// base model 所使用的包名String baseModelPackageName = "com.mult.model.base";// base model 文件保存路径String baseModelOutputDir = PathKit.getWebRootPath() + "/../src/com/mult/model/base";// model 所使用的包名 (MappingKit 默认使用的包名)String modelPackageName = "com.mult.model";// model 文件保存路径 (MappingKit 与 DataDictionary 文件默认保存路径)String modelOutputDir = baseModelOutputDir + "/..";// 创建生成器Generator gernerator = new Generator(getDataSource(), baseModelPackageName, baseModelOutputDir, modelPackageName, modelOutputDir);// 添加不需要生成的表名gernerator.addExcludedTable("adv");// 设置是否在 Model 中生成 dao 对象gernerator.setGenerateDaoInModel(true);// 设置是否生成字典文件gernerator.setGenerateDataDictionary(true);// 设置需要被移除的表名前缀用于生成modelName。例如表名 "osc_user",移除前缀 "osc_"后生成的model名为 User// 而非 OscUsergernerator.setRemovedTableNamePrefixes("sys_");// 生成gernerator.generate();}}
3.创建一个xml文件存放sql语句,一般一个功能一个controller一个service一个sql.xml,我是这样分的
<?xml version="1.0" encoding="UTF-8"?> <!--练习表操作 --> <sql-statement namespace="System"> <!--查询练习表内容 --> <sql id="PracticeQuery"> <![CDATA[ SELECT * FROM sys_practice ORDER BY practice_id ]]> </sql> <sql id="selectbyid"> <![CDATA[ SELECT * FROM sys_attach WHERE attach_deletetag = 0 And attach_expertid=? ]]> </sql> </sql-statement>
如代码段所示,上面是随便写的,意思是可以写多个语句,需要传的参数写成?,id值要不一样,在service里是根据id值来调用sql语句的
3.实现查找功能
未完待续。。
- jifinal-增删改查及上传图片的实现
- 顺序表的实现及增删查改
- 员工管理-登陆及增删改查功能的实现
- 数据库的增删改查及创建
- String的增删查改的实现
- SSH实现的增删改查实例
- strut2+hibernate实现的增删改查
- S1SH实现的增删改查实例
- smarty实现的增删改查
- SSH实现的增删改查实例
- csharp实现MongoDB的增删改查
- 自行实现元素的增删改查
- mongodb实现简单的增删改查
- js实现的增删改查
- mybatis ---- 实现数据的增删改查
- 实现hibernate的增删查改。
- java实现cassandra的增删改查
- Hibernate实现简单的增删改查
- Unity脚本——单例模式(转)
- 手把手教你给一个iOS app配置多个环境变量
- 原创]unity3D学习【功能实现】之一:坐标的转换以及物体的移动
- [原创]unity3D学习【功能实现】之二:图片的旋转/2d物体的旋转
- hdu5833 Zhu and 772002 【高斯消元解异或方程组】
- jifinal-增删改查及上传图片的实现
- unity3D学习【功能实现】之四:滚动文字显示,类似公告面板
- 产生N个不重复的随机数的快速算法
- [原创]unity3D学习【功能实现】之五:在图片上显示文字或名字,可更改text mesh
- [原创]unity3D学习【功能实现】之六:延续功能五,血条,点击减血等ugui
- 记一次Linux系统被入侵的排查过程(一)
- iOS平台下cookie的使用
- [原创]unity教程之2048游戏01。
- [原创]unity教程之2048游戏02。