JCF3.1.X 用户开发指南

Posted on By qianym

1 入门

1.1 背景 ====== 基于JAVA的可用于后端服务开发框架众多,如springMvc,struts2等传统的MVC架构框架;分布式架构框架包括:dubbo,springCloud等,这些框架都是侧重某个领域,但实际应用开发中需要的是众多功能或多个框架的集合,这些往往需要开发者自己集成,在开发效率、升级、维护等存在痛点。如何让开发真正的只关注业务,就需要解决这些问题。

image

1.2 定义

JCF(J2EE Component Framework,J2EE构件框架)服务层开发框架。基于模块化、标准API快速服务开发(协调一切组件,功能开箱即用、简单配置或无配置)、多协议发布(支持HTTP,SOAP,DUBBO协议,一次编写多种协议发布,架构切换业务代码复用)、内置各种监控指标。

image

微服务开发框架:协调微服务各组件

image

1.3 环境要求

软 件 | 要 求 —|— jdk 版本 | 1.8+ Servlet 版本 | 3.0+

1.4 开发你的第一个 JCF3 应用程序

以下使用 intellij idea 作为ide 开发环境

1.4.1 开发环境配置
  • 配置maven 插件 image
  • 配置私服地址

1.4.2 新建maven工程

image

image

image

image

1.4.3 修改pom.xml

打开idea自动生成的pom.xml文件,把下面的pom.xml内容拷贝到至ideapom.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>
    <parent>
        <groupId>com.sitech.ijcf</groupId>
        <artifactId>ijcf-boot-parent</artifactId>
        <version>3.1.6.RELEASE</version>
    </parent>
    <groupId>com.sitech.jcf3</groupId>
    <artifactId>demo-helloword</artifactId>
    <version>1.0-SNAPSHOT</version>

    <name>demo-helloword</name>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.sitech.ijcf</groupId>
            <artifactId>ijcf-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.sitech.ijcf</groupId>
                <artifactId>ijcf-boot-dependencies</artifactId>
                <version>3.1.6.RELEASE</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
</project>

1.4.4 编写服务代码

package com.sitech.jcf3.demo.service;

import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * @author qianym
 * @create 2019/1/31
 * @since 3.0
 */
@Service("helloWordService")
public class HelloWordService {

    @RequestMapping("/sayhi")
    public String sayHi()
    {
        return  "hello jcf3!";
    }
}

1.4.4 编写启动类

package com.sitech.jcf3;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class App 
{
    public static void main(String[] args) throws Exception {
        SpringApplication.run(App.class, args);
    }
}

1.4.5 编写配置文件

在resources目录下创建 application.properties,添加如下内容:

server.port=8090

1.4.5 运行示例 ============ 可以使用开发工具直接运行App类中的main方法。 就会启动一个内置的tomcat容器。 打开浏览器输入地址:http://localhost:8090/sayhi 以上就是使用jcf3开发一个最简单的web应用。

1.4.5 创建一个可执行的Jar

运行maven package后,此时会生成一个 demo-helloword-1.0-SNAPSHOT.jar, 这个jar包只是一个普通的jar包,不是fat jar,不能通过java -jar方式运行。 需要在maven 中添加插件,将应用打成一个独立的fat jar后,可以 java -jar demo_3-5-1-snapshot-1.0-SNAPSHOT.jar 方式直接运行

添加插件步骤如下,打开==pom.xml== 添加如下内容

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <layout>ZIP</layout>
    </configuration>
    <executions>
        <execution>
            <goals>
                <goal>repackage</goal>
            </goals>
        </execution>
    </executions>
</plugin>
(完)
上一篇:云计算的前世今生 下一篇:资源分享 图灵程序设计丛书