当前位置: 首页 > news >正文

NCC基础开发技能培训

YonBuilder for NCC 是一个带插件的eclipse工具,跟eclipse没什么区别

NC Cloud2021.11版本开发环境搭建改动

https://nccdev.yonyou.com/article/detail/495

不管是NC Cloud 新手还是老NC开发,在开发NC Cloud时开发环境搭建必看!!!

yuhttps://nccdev.yonyou.com/article/detail/202

在NC Cloud时期在client端我们使用ServiceLocator进行远程调用,在非client端如果有远程调用,仍然只使用NCLocator。

NC Cloud的基础Action接口是ICommonAction,client的所有Action都基于ICommonAction实现。

NC Cloud 后端简单讲解 

https://nccdev.yonyou.com/article/detail/449

前端环境搭建进阶

https://nccdev.yonyou.com/article/detail/984

很多时候home是从测试环境拷贝出来的,有时服务器名称不是server 而是ncServer或者其他的名字,这里要改成server。

npm run dev 启动前端服务 

npm run build 编译buildEntryPath中的代码             

npm run patch 出patch配置中的代码补丁(直接可以打在home中的补丁)

基于idea的YonBuilder Premium开发者工具(原NCC开发插件)使用说明

https://nccdev.yonyou.com/article/detail/658

MAC M1使用idea进行ncc开发

https://nccdev.yonyou.com/article/detail/963

idea客开NCC及假勤开发环境搭建

https://note.youdao.com/ynoteshare/index.html?id=228c1700c079d976448fa06091fb5808&type=note

后端代码结构:

  • public(公共端)目录存放:vo对象(继承自SuperVO、ValueObject)、接口类(以I开头)
  • action目录存放:前端请求动作、鉴权配置
  • private(后端)目录存放:后端与数据库交互代码、后台业务逻辑、接口实现类
  • test目录存放:辅助调试代码,不参与打补丁
  • resources目录存放:资源文件
  • .upm文件配置接口与接口实现类的关联关系
  • 后端private和公共端public的代码放在ncchome/modules目录里。
  • 工程的模块对应modules的模块,例如课程里的train。

hotwebs存放前端,modules存放后端。

modules下:

  • 打过补丁的模块下有classes目录且classes目录下有内容。
  • 标准模块的lib目录对应public的内容。META-INF/lib目录对应private的内容。
  • classes和lib是一对

hotwebs下:

  • resources目录存放前端资源文件,包括js和html等
  • WEB-INF存放请求的代码
  • WEB-INF/lib下的jar文件被剪切到xxx/external/lib

导出补丁,默认放在modules目录下,如果是前端代码必须手动修改为hotwebs目录

前端调试:

  • VSCode作用不是用来调试,前端代码调试在浏览器。

怎么找到前端代码:

  • mainframe —— localhost:3306 —— 模块/组件/节点(与应用注册一模一样)
  • [name] —— . —— src —— 模块/组件/节点

前端所有源码都存放在src下。

node_modules脚手架。

前端三级:开发模块 —— 组件 —— 具体节点

前端代码:应用注册 —— 具体某个页面 —— 页面地址

遇到问题不要慌

技术问题不要第一时间问他人,他人也要通过调试来定位问题。

NCC项目、NCC业务组件

列表浏览态、卡片浏览态、卡片编辑态

取值怎么写、赋值怎么写

在“应用注册”给页面增加按钮

在代码中实现新增按钮的点击事件ncc的ajax请求url是4级,例如"/nccloud/train/bill/saveQuoVO.do"

获取接口:在web层(hotwebs里的代码)用的是ServiceLocator,在其他层用的是NCLocator。

EV录屏

跟数据库交互一定要写在后台private的接口实现类里,例如QueryServiceImpl

查数据库的接口:nc.itf.uap.IUAPQueryBS

在private中,通过NCLocator.getInstance().lookup(IUAPQueryBS.class)获取接口实现对象

ColumnProcessor是单列返回值类型,这里的返回类型还可以是其他类型,例如:

MapProcessor、MapListProcessor、BeanProcessor、BeanListProcessor

导入的包是nc.jdbc.framework.processor.MapProcessor

bs.executeQuery方法的第2个参数决定了该方法的返回值类型。

更新类路径:右击工程——UAP Tools —— update classpath

清理工程:Project菜单 —— Clean

自动构建:Project菜单 —— Build Automatically

Agg:聚合的缩写

NCC访问数据库一定要在后台private内实现。

相关文章:

NCC基础开发技能培训

YonBuilder for NCC 是一个带插件的eclipse工具,跟eclipse没什么区别 NC Cloud2021.11版本开发环境搭建改动 https://nccdev.yonyou.com/article/detail/495 不管是NC Cloud 新手还是老NC开发,在开发NC Cloud时开发环境搭建必看!&#xff…...

Flink中的状态管理

一.Flink中的状态 1.1 概述 在Flink中,算子任务可以分为有状态和无状态两种状态。 无状态的算子任务只需要观察每个独立事件,根据当前输入的数据直接转换输出结果。例如Map、Filter、FlatMap都是属于无状态算子。 而有状态的算子任务,就…...

【linux】线程互斥

线程互斥 1.线程互斥2.可重入VS线程安全3.常见锁的概念 喜欢的点赞,收藏,关注一下把! 1.线程互斥 到目前为止我们学了线程概念,线程控制接下来我们进行下一个话题,线程互斥。 有没有考虑过这样的一个问题&#xff0c…...

机器学习原理到Python代码实现之LinearRegression

Linear Regression 线性回归模型 该文章作为机器学习的第一篇文章,主要介绍线性回归模型的原理和实现方法。 更多相关工作请参考:Github 算法介绍 线性回归模型是一种常见的机器学习模型,用于预测一个连续的目标变量(也称为响应变…...

Hive SQL / SQL

1. 建表 & 拉取表2. 插入数据 insert select3. 查询3.1 查询语句语法/顺序3.2 关系操作符3.3 聚合函数3.4 where3.5 分组聚合3.6 having 筛选分组后结果3.7 显式类型转换 & select产生指定值的列 4. join 横向拼接4.1 等值连接 & 不等值连接4.2 两表连接4.2.1 内连…...

程序媛的mac修炼手册--MacOS系统更新升级史

啊,我这个口罩三年从未感染过新冠的天选免疫王,却被支原体击倒😷大意了,前几天去医院体检,刚检查完出医院就摘口罩了🤦大伙儿还是要注意戴口罩,保重身体啊!身体欠恙,就闲…...

【数据库原理】(9)SQL简介

一.SQL 的发展历史 起源:SQL 起源于 1970 年代,由 IBM 的研究员 Edgar F. Codd 提出的关系模型概念演化而来。初期:Boyce 和 Chamberlin 在 IBM 开发了 SQUARE 语言的原型,后发展成为 SQL。这是为了更好地利用和管理关系数据库。…...

第二百五十二回

文章目录 概念介绍实现方法示例代码 我们在上一章回中介绍了如何在页面中添加图片相关的内容,本章回中将介绍如何给组件添加阴影.闲话休提,让我们一起Talk Flutter吧。 概念介绍 我们在本章回中介绍的阴影类似影子,只是它不像影子那么明显&a…...

Leetcode 3701 · Find Nearest Right Node in Binary Tree (遍历和BFS好题)

3701 Find Nearest Right Node in Binary TreePRE Algorithms This topic is a pre-release topic. If you encounter any problems, please contact us via “Problem Correction”, and we will upgrade your account to VIP as a thank you. Description Given a binary t…...

网站被攻击了,接入CDN对比直接使用高防服务器有哪些优势

网站是互联网行业中经常被攻击的目标之一。攻击是许多站长最害怕遇到的情况。当用户访问一个网站,页面半天打不开,响应缓慢,或者直接打不开,多半是会直接走开,而不是等待继续等待相应。针对网站攻击的防护,…...

location常用属性和方法

目录 Location 对象 Location 对象属性 Location 对象方法 location.assign() location.replace() location.reload() Location 对象 Location 对象包含有关当前 URL 的信息。Location 对象是 Window 对象的一个部分,可通过 window.location 属性来访问。 L…...

二分图

目录 二分图 染色法判定二分图 匈牙利算法 二分图 二分图,又叫二部图,将所有点分成两个集合,使得所有边只出现在集合之间的点之间,而集合内部的点之间没有边。二分图当且仅当图中没有奇数环。只要图中环的边数没奇数个数的&am…...

[VUE]3-路由

目录 路由 Vue-Router1、Vue-Router 介绍2、路由配置3、嵌套路由3.1、简介3.2、实现步骤3.3、⭐注意事项 4、⭐router-view标签详解 ​🍃作者介绍:双非本科大三网络工程专业在读,阿里云专家博主,专注于Java领域学习,擅…...

Kafka(六)消费者

目录 Kafka消费者1 配置消费者bootstrap.serversgroup.idkey.deserializervalue.deserializergroup.instance.idfetch.min.bytes1fetch.max.wait.msfetch.max.bytes57671680 (55 mebibytes)max.poll.record500max.partition.fetch.bytessession.timeout.ms45000 (45 seconds)he…...

RK3399平台入门到精通系列讲解(实验篇)共享工作队列的使用

🚀返回总目录 文章目录 一、工作队列相关接口函数1.1、初始化函数1.2、调度/取消调度工作队列函数二、信号驱动 IO 实验源码2.1、Makefile2.2、驱动部分代码工作队列是实现中断下半部分的机制之一,是一种用于管理任务的数据结构或机制。它通常用于多线程,多进程或分布式系统…...

STM32 基于 MPU6050 的飞行器姿态控制设计与实现

基于STM32的MPU6050姿态控制设计是无人机、飞行器等飞行器件开发中的核心技术之一。在本文中,我们将介绍如何利用STM32和MPU6050实现飞行器的姿态控制,并提供相应的代码示例。 1. 硬件连接及库配置 首先,我们需要将MPU6050连接到STM32微控制…...

大数据平台Bug Bash大扫除最佳实践

一、背景 随着越来越多的"新人"在日常工作以及大促备战中担当大任,我们发现仅了解自身系统业务已不能满足日常系统开发运维需求。为此,大数据平台部门组织了一次Bug Bash活动,既能提升自己对兄弟产品的理解和使用,又能…...

JavaScript 中的数组过滤

在构建动态和交互式程序时,您可能需要添加一些交互式功能。例如,用户单击按钮以筛选一长串项目。 您可能还需要处理大量数据,以仅返回与指定条件匹配的项目。 在本文中,您将学习如何使用两种主要方法在 JavaScript 中过滤数组。…...

随机森林(Random Forest)

随机森林(Random Forest)是一种集成学习方法,通过组合多个决策树来提高模型的性能和鲁棒性。随机森林在每个决策树的训练过程中引入了随机性,包括对样本和特征的随机选择,以提高模型的泛化能力。以下是随机森林的基本原…...

本地引入Element UI后导致图标显示异常

引入方式 npm 安装 推荐使用 npm 的方式安装&#xff0c;它能更好地和 webpack 打包工具配合使用。 npm i element-ui -SCDN 目前可以通过 unpkg.com/element-ui 获取到最新版本的资源&#xff0c;在页面上引入 js 和 css 文件即可开始使用。 <!-- 引入样式 --> <…...

UE5.1_UMG序列帧动画制作

UE5.1_UMG序列帧动画制作 UMG序列帧动画制作相对比较简单&#xff0c;不像视频帧需要创建媒体播放器那么复杂&#xff0c;以下简要说明&#xff1a; 1. 事件函数 2. 准备序列帧装入数组 3. 构造调用事件函数 4. 预览 序列帧UMG0105 5. 完成&#xff01;按需配置即可。...

总结HarmonyOS的技术特点

HarmonyOS是华为自主研发的面向全场景的分布式操作系统。它的技术特点主要体现在以下几个方面&#xff1a; 分布式架构&#xff1a;HarmonyOS采用了分布式架构设计&#xff0c;通过组件化和小型化等方法&#xff0c;支持多种终端设备按需弹性部署&#xff0c;能够适配不同类别的…...

从0到1入门C++编程——04 类和对象之封装、构造函数、析构函数、this指针、友元

文章目录 一、封装二、项目文件拆分三、构造函数和析构函数1.构造函数的分类及调用2.拷贝函数调用时机3.构造函数调用规则4.深拷贝与浅拷贝5.初始化列表6.类对象作为类成员7.静态成员 四、C对象模型和this指针1.类的对象大小计算2.this指针3.空指针访问成员函数4.const修饰成员…...

Robot Operating System 2: Design, Architecture, and Uses In The Wild

Robot Operating System 2: Design, Architecture, and Uses In The Wild (机器人操作系统 2&#xff1a;设计、架构和实际应用) 摘要&#xff1a;随着机器人在广泛的商业用例中的部署&#xff0c;机器人革命的下一章正在顺利进行。即使在无数的应用程序和环境中&#xff0c;也…...

TinyEngine 服务端正式开源啦!!!

背景介绍 TinyEngine 低代码引擎介绍 随着企业对于低代码开发平台的需求日益增长&#xff0c;急需一个通用的解决方案来满足各种低代码平台的开发需求。正是在这种情况下&#xff0c;低代码引擎应运而生。它是一种通用的开发框架&#xff0c;通过对低代码平台系统常用的功能进…...

网页设计与制作web前端设计html+css+js成品。电脑网站制作代开发。vscodeDrea 【企业公司宣传网站(HTML静态网页项目实战)附源码】

网页设计与制作web前端设计htmlcssjs成品。电脑网站制作代开发。vscodeDrea 【企业公司宣传网站&#xff08;HTML静态网页项目实战&#xff09;附源码】 https://www.bilibili.com/video/BV1Hp4y1o7RY/?share_sourcecopy_web&vd_sourced43766e8ddfffd1f1a1165a3e72d7605...

Avalonia学习(二十)-登录界面演示

今天开始继续Avalonia练习。 本节&#xff1a;演示实现登录界面 在网上看见一个博客&#xff0c;展示Avalonia实现&#xff0c;仿照GGTalk&#xff0c;我实现了一下&#xff0c;感觉是可以的。将测试的数据代码效果写下来。主要是样式使用&#xff0c;图片加载方式。 只有前…...

Spring依赖注入的魔法:深入DI的实现原理【beans 五】

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 Spring依赖注入的魔法&#xff1a;深入DI的实现原理【beans 五】 前言DI的基本概念基本概念&#xff1a;为什么使用依赖注入&#xff1a; 构造器注入构造器注入的基本概念&#xff1a;示例&#xff1a…...

【学习笔记】1、数字逻辑概论

1.1 数字信号 数字信号&#xff0c;在时间和数值上均是离散的。数字信号的表达方式&#xff1a;二值数字逻辑和逻辑电平描述的数字波形。 &#xff08;1&#xff09; 数字波形的两种类型 数值信号又称为“二值信号”。数字波形又称为“二值位形图”。 什么是一拍 一定的时…...

设置代理IP地址对网络有什么影响?爬虫代理IP主要有哪些作用?

在互联网的广泛应用下&#xff0c;代理IP地址成为了一种常见的网络技术。代理IP地址可以改变用户的上网行为&#xff0c;进而影响网络访问的速度和安全性。本篇文章将探讨设置代理IP地址对网络的影响&#xff0c;以及爬虫代理IP的主要作用。 首先&#xff0c;让我们来了解一下代…...

设计做网站哪家公司好/seo关键词推广渠道

一&#xff0c;问题的来源 在使用stl的时候&#xff0c;经常要遍历容器。遍历容器有几种方法&#xff0c;一种就是使用下标遍历。 在使用下标遍历的时候&#xff0c;经常要用到一个遍历的循环变量&#xff0c;往往这个变量一顺手就写成了: 1: int i 0; 这个i在一般的情况下是没…...

网站建设客服话术/想开个网站怎样开

本文章是❤️力扣 (LeetCode)❤️的内容&#xff0c;该专栏还有多篇优质内容在等待你观看&#xff0c;现在点击右上角点击这个————&#x1f680;订阅专栏&#x1f680; &#x1f506;坚持刷算法 &#x1f48e;每天进步一点点 &#x1f680;冲冲冲冲冲冲冲冲冲冲 &#x1f4…...

旅游网站设计方案怎么做/外贸营销型网站设计

何为抽象类&#xff1f; 众所周知&#xff0c;类是对象的抽象。那么&#xff0c;抽象类就是类的抽象。 类名变量属性方法形状名字&#xff0c;位置&#xff0c;颜色&#xff0c;线条粗细名字&#xff0c;位置&#xff0c;颜色&#xff0c;线条粗细&#xff0c;面积画一个形状…...

阿里巴巴1688官网登录/杭州网站优化公司哪家好

vue运行为v-on在监听键盘事件时&#xff0c;添加了特殊的键盘修饰符&#xff1a;<input v-on:keyup.13"submit">vue还非常贴心地给出了常用按键的别名&#xff0c;这样就不必去记keyCode ~ ~上面代码&#xff0c;还可以在这样写&#xff1a;<input v-on:key…...

专业建设 验收 网站/千锋教育官方网

行内元素(inline element)&#xff0c;又叫内联元素&#xff0c;内联元素只能容纳文本或者其他内联元素&#xff0c;常见的行内元素<span>,<a>. 块元素(block element),块元素一般都是从新行开始&#xff0c;可以容纳文本&#xff0c;其他内联元素和其它块元素&…...

网站建设中中文模板/网站备案查询工信部官网

答案CL.的答案就是诀窍&#xff01;我最终使用了一个Python脚本(可以在下一节中查看,名为“更新&#xff1a;正在解决问题”),并且一旦我正确设置了数据库,以便将ID列设置为整数键(或者,如果是是不可能的,数字)和名称列被设置为文本然后它工作&#xff01;更新&#xff1a;努力…...