【JFinal】IDEA+maven上手JFinal之Hello World!

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013451157/article/details/79956505

一、New Project

1、在 IDEA 环境下新建 Project 项目

2、选择创建 Maven 项目,并且不使用模板
这里写图片描述
3、输入 Maven 的 GroupId 和 ArtifactId
这里写图片描述
4、输入项目名称
这里写图片描述

二、将当前 Project 改为 POM 工程

将项目的 jfinal-web-demo 作为项目的 parent 工程,用于定义 maven 依赖包的版本信息、编码方式等

1、删除 src 目录
这里写图片描述
2、将项目打包格式设置为 pom
这里写图片描述
3、修改(父工程的) pom.xml 文件如下

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>jfinal-web-demo</groupId>
    <artifactId>jfinal-demo</artifactId>
    <packaging>pom</packaging>
    <version>1.0-SNAPSHOT</version>

    <!-- 指定将要引入的jar的版本号 -->
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <jfinal.version>3.1</jfinal.version>
        <junit.version>4.12</junit.version>
    </properties>

    <!--集中声明依赖-->
    <dependencyManagement>
        <dependencies>
            <!--jfinal依赖-->
            <dependency>
                <groupId>com.jfinal</groupId>
                <artifactId>jfinal</artifactId>
                <version>${jfinal.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

</project>

三、New Module

1、创建 Module
这里写图片描述
2、根据 IDEA 提供的 webapp 模板创建 module
这里写图片描述
3、输入 Module 的 ArtifactId
这里写图片描述
4、、继续 next 到这里指定 Module 的名称
这里写图片描述
5、点击 Finish 后需要等待一段时间,IDEA 根据 webapp 模板创建项目完成后目录如下
这里写图片描述

四、编写测试用代码

1、在 main 目录下新建 java 目录
这里写图片描述
2、将新建的 java 目录标记为 Sources Root,这样 IDEA 才会把该目录下的 .java 文件当作 java 源文件来处理
这里写图片描述
3、修改 Module 的 pom.xml 文件如下
这里写图片描述

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <parent>
        <artifactId>jfinal-demo</artifactId>
        <groupId>jfinal-web-demo</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
    <artifactId>jfinal-web-demo-provider</artifactId>
    <packaging>war</packaging>
    <name>jfinal-web-demo-provider Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <dependencies>
        <dependency>
            <groupId>com.jfinal</groupId>
            <artifactId>jfinal</artifactId>
        </dependency>
    </dependencies>

    <build>
        <finalName>jfinal-web-demo-provider</finalName>
        <plugins>
            <plugin>
               <!--maven对应的tomcat插件,启动tomcat的时候使用-->
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <port>8081</port>
                    <path>/</path>
                    <uriEncoding>utf-8</uriEncoding>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

4、通过 New Java Class
这里写图片描述
创建 com.demo.config.DemoConfig(注意这里我创建时错把com.demo.config.DemoConfig写成com.demo.config.Democonfig了,后面的都得相应改正
这里写图片描述
创建 com.demo.controller.HelloController
这里写图片描述
至此,生成如下目录
这里写图片描述
5、编辑 HelloController.java 文件如下
这里写图片描述
出现这样的错误是因为我们配置了 jfinal 但是还没有引入,直接点击右下角的 Enable-Auto-import 自动下载导入即可。

6、编辑 Democonfig.java 文件如下

首先 extends JFinalConfig 并自动 import com.jfinal.config.JFinalConfig;

此时出现如图错误提示
这里写图片描述
该类要继承 com.jfinal.config.JFinalConfi 类,并重写五个方法:
这里写图片描述
这里写图片描述
这里写图片描述
继承并重写五个方法后结果如下:
这里写图片描述
最后再导入 HelloController 并进行路由配置即可
这里写图片描述

五、配置运行环境

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

六、配置web.xml的过滤器

保证所有访问均能被 JFinal 拦截
这里写图片描述

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>

  <filter>
    <filter-name>jfinal</filter-name>
    <filter-class>com.jfinal.core.JFinalFilter</filter-class>
    <init-param>
      <param-name>configClass</param-name>
      <!--注意此处的路径配置,必须正确!->
      <param-value>com.demo.config.DemoConfig</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>jfinal</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

</web-app>

七、收工,打开浏览器浏览一下

这里写图片描述


后来我已将这里的改正了,注意名字
这里写图片描述

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页