jfinal mysql增删改查_Jfinal简单实现增删改查
最近學習了jfinal框架。就我感覺而言,我用起來的感覺真是很爽,以前在學習其他的框架的時候,實現增刪改查的時候,你需要自己手動書寫你的sql語句來與數據庫進行數據交互,還要創建一個實例,然后實現它的set和get方法,而jfinal框架不需要那么麻煩,只需要把前端的參數傳回后臺,一個語句就能實現增刪改查,實在是很方便,大大減少了代碼量。
廢話不多說,現在就來實現增刪改查
前端頁面只是簡單的實現其功能,可能不太好看。。。。。
1.創建一個項目,然后導入Jfinal的相關包 鏈接: https://pan.baidu.com/s/1sluj1Ad 密碼: 3ivc
2.創建一個MainConfig.java繼承JFinalConfig
package demo;
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.core.JFinal;
import com.jfinal.ext.handler.ContextPathHandler;
import com.jfinal.kit.PropKit;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.jfinal.plugin.c3p0.C3p0Plugin;
import com.jfinal.render.ViewType;
import com.jfinal.template.Engine;
public class DemoConfig extends JFinalConfig {
/**
* 此方法用來配置 JFinal 常量值
*/
public void configConstant(Constants me)
{
//設置視圖類型
me.setViewType(ViewType.JSP);
//讀取外部文件
PropKit.use("config.properties");
}
/**
* 此方法用來配置 JFinal 訪問路由
*/
public void configRoute(Routes me) {
//更改路由
me.add("/user", UserController.class);
}
/**
* 此方法用來配置 JFinal 的 Plugin
*/
public void configPlugin(Plugins me) {
// TODO Auto-generated method stub
//輸入庫連接池
C3p0Plugin c3p0Plugin = new C3p0Plugin(PropKit.get("jdbcUrl"), PropKit.get("username"), PropKit.get("password"));
//ORM Activerecord
ActiveRecordPlugin arp = new ActiveRecordPlugin(c3p0Plugin);
arp.setShowSql(true);
arp.addMapping("user", User.class);
me.add(c3p0Plugin);
me.add(arp);
}
/**
* 此方法用來配置 JFinal 的全局攔截器
*/
public void configInterceptor(Interceptors me)
{
// TODO Auto-generated method stub
}
/**
* 此方法用來配置 JFinal 的 Handler
*/
public void configHandler(Handlers me)
{
}
public void configEngine(Engine me)
{
}
public static void main(String[] args) {
JFinal.start("WebRoot", 80, "/", 5);
}
}
3.創建一個實例user
package demo;
import com.jfinal.plugin.activerecord.Model;
public class User extends Model
{
public static final User dao=new User();
}
4.創建一個UserController
package demo;
import java.util.List;
import com.jfinal.core.Controller;
public class UserController extends Controller
{
/**
* 直接訪問user地址進入list.jsp
*/
public void index(){
//執行sql語句,得到數據庫的數據
List users=User.dao.find("select * from user");
//封裝發到前端
setAttr("users", users);
System.out.println("得到數據"+users.size()+"個");
//將數據在list頁面中渲染出來
render("list.jsp");
}
/**
* 訪問user/form 地址進入form.jsp
*/
public void form(){
//得到前端傳過來的id
Integer id=getParaToInt(0);
if(id!=null&&id>0){
setAttr("user", User.dao.findById(id));
}
render("form.jsp");
}
/**
* 數據提交
*/
public void submit(){
//得到前端傳來的user數值
User user=getModel(User.class,"user");
user.save();
//返回到user界面
redirect("/user");
}
public void update(){
User user=getModel(User.class,"user");
user.update();
redirect("/user");
}
public void edit(){
form();
}
public void del(){
//得到前端傳來的id,并執行sql語句
User.dao.deleteById(getPara(0));
redirect("/user");
}
}
5.前端的頁面list.jsp和form.jsp
list.jsp
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
新增用戶測試頁面
ID姓名年齡性別備注操作
${user.id}${user.name}${user.age}${user.sex}${user.remark}修改刪除form.jsp頁面
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
姓名
年齡
性別
checked="checked"value="男"> 男
checked="checked"value="女"> 女
備注
${user.remark}
提交
7.config.properties文件,填寫相關的數據庫驅動,表名,用戶名和密碼
driver=com.mysql.jdbc.Driver
jdbcUrl = jdbc:mysql://localhost:3306/test
username = root
password =root
搜狗截圖17年10月07日1853_2.png
成功實現功能!!
搜狗截圖17年10月07日1856_3.png
增刪改查這里就完成了。我這里沒有做數據的判斷,所以覺得代碼量有些少了。值的一提的是, 所有 sql 與業務邏輯寫在 Service 中,不要放在 Model 中,更不要放在 Controller 中,養成好習慣,有利于大型項目的開發與維護.
總結
以上是生活随笔為你收集整理的jfinal mysql增删改查_Jfinal简单实现增删改查的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java判断或_Java 条件判断
- 下一篇: mysql 删除多余帐号_安装完mysq