无/低代码的应用搭建平台 JNPF 3.4.7全新版本上线

 JNPF是一款优秀的无代码工具,可以通过拖拉,1周快速搭建个性化业务系统。可以方便的实现组织内业务流程的审批,可以通过拖拉配置,快速做好各图表数据分析,像excel一样管理数据,团队协作共享表格,打破信息孤岛。

JNPF可以让不懂代码的业务人员快速搭建出满足企业个性化需求的数字应用。

业务人员不需要懂代码,只需要通过拖拉方式,就能快速搭建好诸如人事、CRM、OA、进销存、MES生产管理等常见管理应用。

JNPF提供了流程引擎,用户可以方便的配置流程,如请假、报销审批等;雀书的流程图编辑器,如下所示。

JNPF还提供了高级流程编辑器,让用户可以实现端到端的业务全流程和复杂的公文流转流程。

[Benchmark(OperationsPerInvoke = 1_000_000)]
public void CreateManyRegisterDispose()
{
    using (var cts = new CancellationTokenSource())
    {
        CancellationToken ct = cts.Token;
        for (int i = 0; i < 1_000_000; i++)
            ct.Register(s => { }, null).Dispose();
    }
}

using System.Text.Json;

namespace SerializeBasic
{
    public class WeatherForecast
    {
        public DateTimeOffset Date { get; set; }
        public int TemperatureCelsius { get; set; }
        public string? Summary { get; set; }
    }

    public class Program
    {
        public static void Main()
        {
            var weatherForecast = new WeatherForecast
            {
                Date = DateTime.Parse("2019-08-01"),
                TemperatureCelsius = 25,
                Summary = "Hot"
            };

            string jsonString = JsonSerializer.Serialize(weatherForecast);

            Console.WriteLine(jsonString);
        }
    }
}
// output:
//{"Date":"2019-08-01T00:00:00-07:00","TemperatureCelsius":25,"Summary":"Hot"}

JNPF

jnpf-java-boot采用J2EE技术体系,基于Spring Boot框架封装的快速开发平台,包含多种开箱即用功能,具备RBAC功能、Xss防跨站攻击、自动生成前后端代码、多种存储系统、多租户等等多个功能和模块,支持多业务系统并行开发, 支持多服务并行开发,平台设计灵活可扩展、可移植,可应用高并发需求,同时兼顾本地化、私有云、公有云部署,支持SaaS模式应用。核心技术采用Spring BootMybatis-PlusMinIO等主要框架和中间件,前端基于vue-element-admin框架定制开发。为企业服务化中台整合、数字化中台转型提供强力支撑。http://www.jnpfsoft.com/?from=CSDNm

[Benchmark(OperationsPerInvoke = 1_000_000)]
public void CreateManyRegisterMultipleDispose()
{
    using (var cts = new CancellationTokenSource())
    {
        CancellationToken ct = cts.Token;
        for (int i = 0; i < 1_000_000; i++)
        {
            var ctr1 = ct.Register(s => { }, null);
            var ctr2 = ct.Register(s => { }, null);
            var ctr3 = ct.Register(s => { }, null);
            var ctr4 = ct.Register(s => { }, null);
            var ctr5 = ct.Register(s => { }, null);
            ctr5.Dispose();
            ctr4.Dispose();
            ctr3.Dispose();
            ctr2.Dispose();
            ctr1.Dispose();
        }
    }
}

猜你喜欢

转载自blog.csdn.net/ohpppp/article/details/130852114