jfinal 快速入门

0000

package cn.jbolt.starter;

import cn.jbolt.config.AppConfig; // 导入应用配置类
import com.jfinal.server.undertow.UndertowServer; // 导入Undertow服务器类

// 主应用类
public class App {

    // 主函数,程序的入口点
    public static void main(String[] args) {
        // 创建Undertow服务器实例,并传入应用配置类
        UndertowServer.create(AppConfig.class)
        
        // 设置开发模式为true,这样可以在开发过程中获得更多的调试信息
        .setDevMode(true)
        
        // 设置服务器绑定的IP地址,默认为本地地址
        .setHost("127.0.0.1")
        
        // 设置服务器监听的端口号
        .setPort(8081)
        
        // 设置应用的上下文路径,即访问应用时的基础URL路径
        .setContextPath("/jbolt")
        
        // 启动服务器
        .start();
    }
}

 也可以下面方式配参数风继续吹如端口 

 上面图片,下面是示例

// 导入需要的类
import cn.jbolt.config.JBoltConfig; // 假设JBoltConfig是您的应用配置类
import com.jfinal.server.undertow.UndertowServer; // Undertow服务器类

// 主应用类
public class JFinalStarter {

    // 主函数,程序的入口点
    public static void main(String[] args) {
        // 创建Undertow服务器实例,并传入应用配置类
        UndertowServer server = UndertowServer.create(JBoltConfig.class);
        
        // 设置开发模式为true,这样可以在开发过程中获得更多的调试信息
        server.setDevMode(true);
        
        // 启动服务器
        server.start();
    }
}

  编写第一个程序:”

import com.jfinal.core.Controller; // JFinal的Controller基类
import javax.inject.Inject; // Java依赖注入注解
import java.util.List; // Java集合框架中的List接口

// 学校控制器类,继承自JFinal的Controller
public class SchoolController extends Controller {

    // 使用@Inject注解进行依赖注入,自动注入SchoolService实例
    @Inject
    private SchoolService service;

    // index方法,处理GET请求并渲染index.html页面
    public void index() {
        // 调用service的getAdminList方法获取学校列表
        List<School> schools = service.getAdminList();
        
        // 将学校列表设置到视图中,以便在index.html中使用
        setAttr("schools", schools);
        
        // 渲染index.html页面
        render("index.html");
    }
}

  先来讲一下mvc  的示例

import cn.jbolt.model.School; // 假设School是您的模型类
import com.jfinal.plugin.activerecord.Db; // JFinal的数据库操作类
import com.jfinal.plugin.activerecord.IAtom; // JFinal的事务处理接口
import com.jfinal.kit.Ret; // JFinal的工具类,用于返回结果

public class SchoolService {

    // 私有静态School模型的DAO实例
    private static School dao = new School().dao();

    // 获取所有学校列表的方法
    public List<School> getAdminList() {
        return dao.findAll(); // 使用DAO的findAll方法查询所有学校记录
    }

    // 根据ID删除学校的方法
    public Ret deleteSchoolById(Integer id) {
        // 检查ID参数是否有效
        if (id == null || id <= 0) {
            return Ret.fail("ID参数有误"); // 如果ID无效,返回失败结果
        }

        // 根据ID查找学校记录
        School school = dao.findById(id);
        if (school == null) {
            return Ret.fail("ID对应数据不存在删除失败"); // 如果找不到学校记录,返回失败结果
        }

        // 执行删除操作
        boolean success = school.delete();
        // 根据删除操作的结果返回成功或失败的信息
        return success ? Ret.ok("删除成功") : Ret.fail("删除失败");
    }
}

  sevlet 服务层:

import cn.jbolt.service.SchoolService; // 假设SchoolService是您的服务类
import com.jfinal.core.Controller; // JFinal的Controller基类

public class SchoolController extends Controller {

    private SchoolService service = new SchoolService(); // 创建SchoolService实例

    // 处理GET请求并渲染index.html页面的方法
    public void index() {
        // 调用service的getAdminList方法获取学校列表
        List<School> schools = service.getAdminList();
        
        // 将学校列表设置到视图中,以便在index.html中使用
        setAttr("schools", schools);
        
        // 渲染index.html页面
        render("index.html");
    }

    /** 
     * 删除学校记录的方法
     */
    public void del() {
        // 获取请求参数中的ID,并转换为整数
        Integer id = getInt(0);
        if (id == null) {
            renderText("ID参数有误"); // 如果ID无效,返回错误信息
            return;
        }

        // 调用service的deleteSchoolById方法删除学校记录
        boolean success = service.deleteSchoolById(id);
        if (success) {
            renderText("删除成功"); // 如果删除成功,返回成功信息
        } else {
            renderText("删除失败"); // 如果删除失败,返回失败信息
        }
    }
}

  

 

posted @ 2024-12-03 21:33  谢双元小号  阅读(102)  评论(0)    收藏  举报