1 Star 0 Fork 0

zoom-framework / zoom-v1

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
helloworld.md 4.27 KB
一键复制 编辑 原始数据 按行查看 历史
xmecard 提交于 2023-05-06 15:18 . proxyobject增加参数class

使用zoom从零开始构建一个web

创建war打包类型的web应用程序

idea选择"File"=>"Project"

img.png

构建类型选择 webapp

img.png

新增依赖

<dependency>
  <groupId>org.zoomdev.zoom</groupId>
  <artifactId>zoom-web</artifactId>
  <version>0.4.0-SNAPSHOT</version>
</dependency>

新增build选项


  <build>
    <finalName>demowarweb</finalName>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.0</version>
        <configuration>
          <compilerArgs>
            <arg>-parameters</arg>
          </compilerArgs>
        </configuration>
      </plugin>
    </plugins>
  </build>

其中: -parameters参数选项为可选,只有需要controller方法参数名称直接与调用参数名称一致的情况下需要使用。

修改下web.xml


<?xml version="1.0" encoding="UTF-8"?>
<web-app>
  <display-name>web</display-name>

  <filter>
    <filter-name>filter2</filter-name>
    <filter-class>org.zoomdev.zoom.web.impl.WebService</filter-class>
    <init-param>
      <param-name>displayName</param-name>
      <param-value>zoom</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>filter2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

增加一个controller

package org.zoomdev.zoom.demojarweb.controllers;

import org.zoomdev.zoom.web.annotations.Controller;

@Controller(key = "test")
public class TestController {

    public String index(){
        return "hello world!";
    }
}

使用maven package打包

cd demojarweb
mvn clean package

正常应该可以看到输出

img.png

demo在这里 demowarweb.zip

创建jar打包类型的web应用程序

idea选择"File"=>"Project"

img.png

选择quickstart类型的maven构建

img.png

pom.xml增加依赖


<dependency>
  <groupId>org.zoomdev.zoom</groupId>
  <artifactId>zoom-web</artifactId>
  <version>0.4.0-SNAPSHOT</version>
</dependency>


<dependency>
  <groupId>org.zoomdev.zoom</groupId>
  <artifactId>zoom-server</artifactId>
  <version>0.4.0-SNAPSHOT</version>
</dependency>

<dependency>
  <groupId>org.zoomdev.zoom</groupId>
  <artifactId>zoom-application</artifactId>
  <version>0.4.0-SNAPSHOT</version>
</dependency>

增加build选项

 <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
            <configuration>
              <archive>
                <manifest>
                  <mainClass>org.zoomdev.zoom.Application</mainClass>
                </manifest>
              </archive>
              <descriptorRefs>
                <descriptorRef>jar-with-dependencies</descriptorRef>
              </descriptorRefs>
            </configuration>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.0</version>
        <configuration>
          <compilerArgs>
            <arg>-parameters</arg>
          </compilerArgs>
        </configuration>
      </plugin>


    </plugins>
  </build>

其中: -parameters参数选项为可选,只有需要controller方法参数名称直接与调用参数名称一致的情况下需要使用。

增加测试controller


package org.zoomdev.zoom.demojarweb.controllers;

import org.zoomdev.zoom.web.annotations.Controller;

@Controller(key = "test")
public class TestController {

    public String index(){
        return "hello world!";
    }
}

使用maven package打包

cd demojarweb
mvn clean package

若成功在target目录下会有一个 xx-jar-with-dependencies.jar

img.png

运行之:

java -jar demojarweb-1.0-SNAPSHOT-jar-with-dependencies.jar

正常的话会看到控制台:

img.png

demo在这里 demojarweb.zip

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/zoom-framework/zoom-v1.git
git@gitee.com:zoom-framework/zoom-v1.git
zoom-framework
zoom-v1
zoom-v1
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891