【小练习】交互式网格自定义增删改错误记录及解决(进行中)

经过之前的学习,已经能创建简单的交互式网格并设置自定义增删改按钮,但是实现上还是存在一些问题,来完善优化一下。

首先是修改,正常修改都会弹出修改框,里面是之前存储的信息,根据实际需要对其进行修改,如何获取对应id的数据就成了问题

获取修改数据

我设想通过列表动态获取

页共享组件→值列表→列表→创建列表→类型 动态

 在数据库查询一下

 但是出错了

begin
   select ID,
       NAME,
       GENDER,
       AGE,
       ADDRESS,
       SKILL
from ROLE_INTRODUCTION2 where ID =:P6_ROW_ID;
end;

给了一个SQL查询

 SQL 查询

输入返回 SQL 查询以生成动态列表的列表 SQL 查询列表或函数。单击示例可查看示例 SQL 查询。

SQL 查询语法:

select level, labelValue label, [targetValue]            target, [is_current]             is_current_list_entry,[imageValue]             image, [imageAttributeValue]    image_attribute,[imageAltValue]          image_alt_attribute,[attribute1]             attribute1,[attribute2]             attribute2,[attribute3]             attribute3,[attribute4]             attribute4,[attribute5]             attribute5,[attribute6]             attribute6,[attribute7]             attribute7,[attribute8]             attribute8,[attribute9]             attribute9,[attribute10]            attribute10
from ...
where ...
order by ...

返回 SQL 查询的函数的语法:

RETURN
'select level, labelValue label,'||
'       [targetValue]         target,'|| 
'       [is_current]          is_current_list_entry,'||
'       [imageValue]          image,'||
'       [imageAttributeValue] image_attribute, '||
'       [imageAltValue]       image_alt_attribute,'||
'       [attribute1]          attribute1,'||
'       [attribute2]          attribute2,'||
'       [attribute3]          attribute3,'||
'       [attribute4]          attribute4,'||
'       [attribute5]          attribute5,'||
'       [attribute6]          attribute6,'||
'       [attribute7]          attribute7,'||
'       [attribute8]          attribute8,'||
'       [attribute9]          attribute9,'||
'       [attribute10]         attribute10'||
'from ...'||
'where ...'||
'order by ...';

注: is_current 列可以设置为以下三个值之一: 'YES''NO' 或 NULL。如果设置为 NULL, 则列表条目的货币将基于列表条目的目标页。

重新写一个

RETURN 'select level, labelValue label,' ||
'       [targetValue]         target,'|| 
'       [is_current]          is_current_list_entry,'||
'       [imageValue]          image,'||
'       [imageAttributeValue] image_attribute, '||
'       [imageAltValue]       image_alt_attribute,'||
'       [name]          name,'||
'       [gender]          gender,'||
'       [age]          age,'||
'       [address]          address,'||
'       [skill]          skill,'||
'from ROLE_INTRODUCTION2'||
'where id =: P6_ROW_ID';

【错误记录】ORA-20001: Query must begin with SELECT or WITH

出现报错

  • ORA-20001: Query must begin with SELECT or WITH

 对于源类型“返回SQL查询的函数体”,当区域保存在构建器中时,顶点引擎将验证pl/sql块,并检查是否返回有效的查询。因此,如果pl/sql块中有绑定变量(如:P1_DATE),这些变量将无法正确绑定(因为这是在构建器中而不是运行时),并且该块将无法编译。要解决这个问题,请确保所有绑定变量在函数体中都有默认值。

再来一次

select name,
gender,
age,
address,
skill
from ROLE_INTRODUCTION2
where id =: P6_ROW_ID;
验证成功! 

选择区域模板

 创建动态列表成功!设置模板选项

配置 功能:主题样式选择

 应用上去直接给我寄了

呈现区域 "test1" 时出错。

请与您的应用程序管理员联系。

技术信息(仅提供给开发人员使用)

  • is_internal_error: true
  • apex_error_code: APEX.REGION.UNHANDLED_ERROR
  • ora_sqlcode: -1008
  • ora_sqlerrm: ORA-01008: 并非所有变量都已绑定 ORA-06512: 在 "APEX_220200.WWV_FLOW_PAGE", line 1932 ORA-06512: 在 "APEX_220200.WWV_FLOW_DISP_PAGE_PLUGS", line 1655 ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_LIST", line 901 ORA-06512: 在 "APEX_220200.WWV_FLOW_DYNAMIC_EXEC", line 1337 ORA-06512: 在 "SYS.DBMS_SYS_SQL", line 2120 ORA-06512: 在 "SYS.WWV_DBMS_SQL_APEX_220200", line 837 ORA-06512: 在 "APEX_220200.WWV_FLOW_DYNAMIC_EXEC", line 1332 ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_LIST", line 849 ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_LIST", line 1049 ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_LIST", line 1124 ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_LIST", line 1286 ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_NATIVE", line 2404 ORA-06512: 在 "APEX_220200.WWV_FLOW_PLUGIN", line 2766 ORA-06512: 在 "APEX_220200.WWV_FLOW_DISP_PAGE_PLUGS", line 1023 ORA-06512: 在 "APEX_220200.WWV_FLOW_DISP_PAGE_PLUGS", line 1584 ORA-06512: 在 "APEX_220200.WWV_FLOW_PAGE", line 1880
  • component.type: APEX_APPLICATION_PAGES
  • component.id: 273000000006
  • component.name: test1
  • error_backtrace:
    ORA-06512: 在 "APEX_220200.WWV_FLOW_PAGE", line 1932
    ORA-06512: 在 "APEX_220200.WWV_FLOW_DISP_PAGE_PLUGS", line 1655
    ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_LIST", line 901
    ORA-06512: 在 "APEX_220200.WWV_FLOW_DYNAMIC_EXEC", line 1337
    ORA-06512: 在 "SYS.DBMS_SYS_SQL", line 2120
    ORA-06512: 在 "SYS.WWV_DBMS_SQL_APEX_220200", line 837
    ORA-06512: 在 "APEX_220200.WWV_FLOW_DYNAMIC_EXEC", line 1332
    ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_LIST", line 849
    ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_LIST", line 1049
    ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_LIST", line 1124
    ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_LIST", line 1286
    ORA-06512: 在 "APEX_220200.WWV_FLOW_REGION_NATIVE", line 2404
    ORA-06512: 在 "APEX_220200.WWV_FLOW_PLUGIN", line 2766
    ORA-06512: 在 "APEX_220200.WWV_FLOW_DISP_PAGE_PLUGS", line 1023
    ORA-06512: 在 "APEX_220200.WWV_FLOW_DISP_PAGE_PLUGS", line 1584
    ORA-06512: 在 "APEX_220200.WWV_FLOW_PAGE", line 1880

啊???

删掉刚刚创建的列表就好了,好家伙ORZ

下午在边做边学习的过程中有了一些灵感:

修改按钮点击后会获取原先数据,数据是从哪里来的?

是在test1的修改按钮→点击修改→执行服务器端的代码   中来的

beginapex_util.set_session_state('P3_ROW_ID', :P6_ROW_ID);
end;

【错误记录】ORA-20987- 意外错误, 在应用程序级别或页级别上未找到项名。

改写之后运行报错:

Ajax 调用为Execute Server-Side Code返回了服务器错误ORA-20987: APEX - ERR-1002 在应用程序 "273" 中未找到项 "P3_ROW_ID" 的项 ID。 - 意外错误, 在应用程序级别或页级别上未找到项名。

解决方法:

 破案了

p3的字段是P3_ID,不是P3_ROW_ID

 改过来

 还是有错,查了修改缺少返回值

 P6test1修改行为操作未定义

修改按钮→行为 操作 由动态操作定义→执行验证

【错误记录】ORA-01008: 并非所有变量都已绑定

好像可以获取原值了,但是有新的错误

Ajax 调用为Execute Server-Side Code返回了服务器错误ORA-01008: 并非所有变量都已绑定。

解决方法:

输入项和返回项要和pl/sql代码上的数据一一对应

创建部门用户权限应用表

1.创建数据表

1.1部门表DEPT_TEST_WXX

1.2创建用户表USER_TEST_WXX

 1.3创建DEPT_USER_TEST_WXX

中间表DEPT_USER_TEST_WXX

 为中间表添加外键(至于删除时是级联还是设为空值看实际需要)

创建结果

 2.创建交互式网格

2.1部门信息表P26(带表单p27)  P30(单网格 表单p32)

2.2 用户信息表P2​​​​​​8(带表单p29)  P33(单网格 表单p3)

 

初始界面

3,相关操作

3.1设置部门名 标识→类型 链接→链接 目标32(部门表单)

 和主菜单设置跳转链接

3.2 创建项(后续数据用得到,行选中、查看是否成功新增删除……)

 动态操作,新建 行选中,执行JavaScript语句

var map = new Map();map.set('P30_DEPT_ID', 'DEPT_ID');
utils.set(this.data, map);console.log($v('P30_DEPT_ID'));

提示为完成无法保存

 原来是这里没选择

3.3 还有依次设置部门对应表单修改动态操作

3.3.1执行JavaScript代码(验证必填项都填了)

 3.3.2执行服务器端代码 

declarev_row_count number(10) := 0;beginupdate DEPT_TEST_WXX set NAME = :P32_NAME, DESCRIBE =: P32_DESCRIBE,UPDATE_DATE = sysdate where DEPT_ID = :P32_DEPT_ID;v_row_count := SQL%ROWCOUNT;apex_util.set_session_state('P32_ROW_COUNT',v_row_count);
end;

没有的项需要手动创建

【错误记录】提示ORA_01008:并非所有变量都已绑定

 原因及解决方法:

创建时间和更新时间是隐藏项

3.3.3执行JavaScript代码(返回修改成功/失败提示)

if ($v('P32_ROW_COUNT') > 0) {alert('修改成功');return true;
} else {alert('修改失败');return false;
}

3.3.4关闭对话框

部门表单新增同理

服务器端代码

declarev_row_count number(10) := 0;
beginINSERT INTO DEPT_TEST_WXX(NAME,DESCRIBE,CREATE_DATE,UPDATE_DATE)VALUES(:P32_NAME,:P32_DESCRIBE,sysdate,sysdate);v_row_count := SQL%ROWCOUNT;apex_util.set_session_state('P32_ROW_COUNT',v_row_count);
end;

 设置完记得保存,转回部门信息表P30

记得设置删改要有ID传入

△修改要先选中内容,所以涉及一个判断,判断选中的id不为空,判断一次只能选中一个id进行修改,返回真假两种情况,对应情况进行不同操作或提示

 客户端条件→类型 JavaScript表达式

!utils.checkNull($v('P30_DEPT_ID')) && $v('P30_DEPT_ID').split(',').length == 1

假操作

if (utils.checkNull($v('P30_DEPT_ID'))) {alert('请选择修改的数据');return false;
}$v('P30_DEPT_ID').split(',');if ($v('P30_DEPT_ID').split(',').length > 1) {alert('只能修改单条数据');return false;
}

删除前应该有确认提示

删除前验证

if (utils.checkNull($v('P30_DEPT_ID'))) {alert('请选择要删除的数据');return false;
} else {if (confirm('确定要删除选中的数据吗?')) {return true;} else {return false;}
}

删除请求后台

DECLAREV_COUNT NUMBER(18):=0;
BEGIN-- 删除关联的部门用户数据DELETE DEPT_USER_TEST_WXX WHERE DEPT_ID IN(SELECT * FROM TABLE(SPLITSTR(:P30_DEPT_ID,',')));--删除部门数据DELETE DEPT_TEST_WXX WHERE DEPT_ID IN(SELECT * FROM TABLE(SPLITSTR(:P30_DEPT_ID,',')));V_COUNT:= SQL%ROWCOUNT;APEX_UTIL.SET_SESSION_STATE('P30_ROW_COUNT',V_COUNT);
END;

 删除后验证

if($v('P30_ROW_COUNT')>0){alert('删除成功');
}else{alert('删除失败');    return false;
}

刷新

受影响的元素→  类型 区域    →区域 部门信息表

往里面添加数据受阻

原来是处理没有添加,添加处理(点击新增转到表单页)

【错误记录】ORA-01400: 无法将 NULL 插入

 点击新增,报错

Ajax 调用为Execute Server-Side Code返回了服务器错误ORA-01400: 无法将 NULL 插入 ("YWJA"."DEPT_TEST_WXX"."NAME")。

 问题分析:

1、数据库中字段值为"非空"类型,而传入的参数为null。

解决办法:

"非空"类型的字段,参数必须传值。

看一眼SQL

CREATE TABLE  "DEPT_TEST_WXX" (	"DEPT_ID" NUMBER NOT NULL ENABLE, "NAME" NVARCHAR2(64) NOT NULL ENABLE, "DESCRIBE" NVARCHAR2(256), "CREATE_DATE" DATE, "UPDATE_DATE" DATE, CONSTRAINT "DEPT_TEST_WXX_PK" PRIMARY KEY ("DEPT_ID")USING INDEX  ENABLE)
/CREATE OR REPLACE EDITIONABLE TRIGGER  "BI_DEPT_TEST_WXX" before insert on "DEPT_TEST_WXX"               for each row  
begin   if :NEW."DEPT_ID" is null then select "DEPT_TEST_WXX_SEQ1".nextval into :NEW."DEPT_ID" from sys.dual; end if; 
end; /
ALTER TRIGGER  "BI_DEPT_TEST_WXX" ENABLE
/

可以看到新建的触发器假设NEW.DEPT_ID为空则从已有数据库中获取.nextval

 删除触发器试试

 还是不行

 再试试方案二

在sql语句上加条件

原先的sql语句

CREATE TABLE  "DEPT_TEST_WXX" (	"DEPT_ID" NUMBER NOT NULL ENABLE, "NAME" NVARCHAR2(64) NOT NULL ENABLE, "DESCRIBE" NVARCHAR2(256), "CREATE_DATE" DATE, "UPDATE_DATE" DATE, CONSTRAINT "DEPT_TEST_WXX_PK" PRIMARY KEY ("DEPT_ID")USING INDEX  ENABLE)
/

后来的

在ID后加标红部分

CREATE TABLE "APEX_TEST_DEPT" ( "DEPT_ID" NUMBER GENERATED BY DEFAULT AS IDENTITY MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE, "NAME" NVARCHAR2(64) NOT NULL ENABLE,

"CREATED_BY" NUMBER(20,0) DEFAULT 1,

"CREATION_DATE" DATE DEFAULT sysdate,

"UPDATED_BY" NUMBER(20,0) DEFAULT 1,

"UPDATE_DATE" DATE DEFAULT sysdate,

"REMARK" NVARCHAR2(512),

"PARENT_ID" NUMBER, PRIMARY KEY ("DEPT_ID") USING INDEX ENABLE )

/

改不了一点,受不了辣,重新写一个P37

 

 

 创建交互式网格

 测试一下新增

 可以新增,那可以着手自定义增删改了。

先对列进行一些简单的设置

创建按钮和隐藏项

设置动态操作

 处理(页面从交互式网格跳转到表单)

!!!要设置项

 还有P32的表单,修改这里一定要记得设提交项和返回项啊啊啊!!!!

 表单修改完数据之后也要记得设置返回项

 新增也一样

 【错误记录】

测试出了新的问题

因为一直出错Ajax 调用为Execute Server-Side Code返回了服务器错误ORA-01400: 无法将 NULL 插入 ("YWJA"."DEPT_TEST_WXX"."DEPT_ID")。ora-01400 无法将NULL插入 ID 解决方法https://www.cnblogs.com/newlooker/p/3631177.html为了解决

ORA-01400: 无法将 NULL 插入 

这个问题很多时候是没有为该表建立触发器导致的,或者是序列没建立。于是建了个触发器

-- 建立触发器
CREATE OR REPLACE TRIGGER "TEST_TRI" BEFOREINSERT ON DEPT_TEST_WXXFOR EACH ROW
BEGINSELECT test_seq.NEXTVAL INTO :NEW.ID FROM DUAL;
END;

结果新的问题出现了

ORA-04098: 触发器

Ajax 调用为Execute Server-Side Code返回了服务器错误ORA-04098: 触发器 'YWJA.TEST_TRI' 无效且未通过重新验证。

 自定义sql

select DEPT_ID,NAME,DESCRIBE,CREATE_DATE,UPDATE_DATE
from DEPT_TEST_WXX

 运行还是无法将null插入数据表中

主打一个乱七八糟

创建用户信息表

需要手动创建项——所属部门,设置源→类型 数据库列→数据库列 DEPT_NAME→数据类型 varchar2

 

【问题记录】选中修改后不会自动刷新返回用户界面,需要手动关闭

【问题记录】每次关闭表单后回到首页而网格不是对应交互式网格

解决方法:

表单关闭后跳转的页码,这里对应其交互式网格

 

【错误记录】会话状态保护违规: 这可能是因为手动变更了受保护的页项 P37_ROW_COUNT。如果您不确定导致此错误的原因, 请与应用程序管理员联系, 以获取帮助。

 满头问号???

部门信息表

将部门 源 类型从“表/视图”改成“SQL查询”

 自动生成

select DEPT_ID,NAME,DESCRIBE,CREATE_DATE,UPDATE_DATEfrom DEPT_TEST_WXX2

选中部门要进行修改,跳转到警告页面

ORA-01403: 未找到任何数据

与您的应用程序管理员联系。 通过调试 ID "2128080" 提供有关此意外事件的详细信息。

技术信息(仅提供给开发人员使用)

  • is_internal_error: false
  • ora_sqlcode: 100
  • ora_sqlerrm: ORA-01403: 未找到任何数据 ORA-06512: 在 "APEX_220200.WWV_FLOW_FORM_REGION", line 2299 ORA-06512: 在 "APEX_220200.WWV_FLOW_FORM_REGION", line 2260 ORA-06512: 在 "APEX_220200.WWV_FLOW_FORM_REGION", line 2341 ORA-06512: 在 "APEX_220200.WWV_FLOW_PROCESS_NATIVE", line 1332 ORA-06512: 在 "APEX_220200.WWV_FLOW_PLUGIN", line 3163
  • component.type: APEX_APPLICATION_PAGE_PROCESS
  • component.id: 201420217511504299
  • component.name: 初始化表单 部门信息表_表单
  • association_type: REGION
  • region_id: 201414172851504304
  • error_backtrace:
    ORA-06512: 在 "APEX_220200.WWV_FLOW_FORM_REGION", line 2299
    ORA-06512: 在 "APEX_220200.WWV_FLOW_FORM_REGION", line 2260
    ORA-06512: 在 "APEX_220200.WWV_FLOW_FORM_REGION", line 2341
    ORA-06512: 在 "APEX_220200.WWV_FLOW_PROCESS_NATIVE", line 1332
    ORA-06512: 在 "APEX_220200.WWV_FLOW_PLUGIN", line 3163
    ORA-06512: 在 "APEX_220200.WWV_FLOW_PROCESS", line 170

 

 报错

Exception in "begin declarev_row_count number(10) := 0;
beginINSERT INTO DEPT_TEST_WXX2(NAME,DESCRIBE,CREATE_DATE,UPDATE_DATE)VALUES(:P32_NAME,:P32_DESCRIBE,sysdate,sysdate);v_row_count := SQL%ROWCOUNT;apex_util.set_session_state('P32_ROW_COUNT',v_row_count);
end;
end;":
Error Stack: ORA-01400: 无法将 NULL 插入 ("YWJA"."DEPT_TEST_WXX2"."DEPT_ID")
ORA-06512: 在 line 4
ORA-06512: 在 "SYS.DBMS_SYS_SQL", line 2120
ORA-06512: 在 "SYS.WWV_DBMS_SQL_APEX_220200", line 837
Backtrace: ORA-06512: 在 line 4
ORA-06512: 在 "SYS.DBMS_SYS_SQL", line 2120
ORA-06512: 在 "SYS.WWV_DBMS_SQL_APEX_220200", line 837
ORA-06512: 在 "APEX_220200.WWV_FLOW_DYNAMIC_EXEC", line 2614
ORA-06512: 在 line 4
ORA-06512: 在 "SYS.DBMS_SYS_SQL", line 2120
ORA-06512: 在 "SYS.WWV_DBMS_SQL_APEX_220200", line 837
ORA-06512: 在 "APEX_220200.WWV_FLOW_DYNAMIC_EXEC", line 2614
2

4%

Error: Ajax 调用为Execute Server-Side Code返回了服务器错误ORA-01400: 无法将 NULL 插入 ("YWJA"."DEPT_TEST_WXX2"."DEPT_ID")。
0.00011
Error: Ajax 调用为Execute Server-Side Code返回了服务器错误ORA-01400: 无法将 NULL 插入 ("YWJA"."DEPT_TEST_WXX2"."DEPT_ID")。

将P37设置的 处理→目标类型→PL/SQL Code改为Region Source

begincase :APEX$ROW_STATUSwhen 'C' theninsert into DEPT_TEST_WXX2 ( name,describe,create_date,update_date )values ( :NAME, :DESCRIBE, sysdate, sysdate )returning dept_id into :P37_DEPT_ID;when 'U' thenupdate DEPT_TEST_WXX2set name  = :NAME,describe = :DESCRIBE,create_date = sysdate,              update_date = sysdate where dept_id  = :P37_DEPT_ID;when 'D' thendelete DEPT_TEST_WXX2where dept_id = :P37_DEPT_ID;end case;-- WRITE_LOG( 'P6', 'debug' , 'APEX$ROW_STATUS' || :APEX$ROW_STATUS , -1 , 1 );
end;

【错误记录】ORA-01400: 无法将 NULL 插入 ("YWJA"."DEPT_TEST_WXX2"."DEPT_ID")。

关于报错可以f12查看错误来源,

 可以看到设置的输入项和输出项,同时数据data显示undefined

 

写了一个左连接在用户查询

SELECT ATU.USER_ID AS USER_ID,ATU.NAME as NAME,ATU.GENDER AS GENDER,ATU.REMARK AS REMARK,ATU.UPDATE_TIME,
listagg(ATD.NAME,',') within GROUP (order by ATD.NAME) AS DEPT_NAME 
FROM USER_TEST_WXX ATULEFT JOIN DEPT_USER_TEST_WXX ATDU ON ATU.USER_ID = ATDU.USER_IDLEFT JOIN DEPT_TEST_WXX2 ATD ON ATDU.DEPT_ID = ATD.DEPT_ID
group by ATU.USER_ID,ATU.NAME,ATU.GENDER,ATU.REMARK,ATU.UPDATE_TIME

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/66668.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot国际化

springboot国际化 不需要引入额外的jar包 参考:https://zhuanlan.zhihu.com/p/551605839 1.rources要创建Resource Bundle 2.yml配置中引入Resource Bundle 引入Resource Bundle spring:messages:encoding: UTF-8basename: i18n/messages_common3.创建国际化工具…

WebRTC音视频通话-新增或修改SDP中的码率Bitrate限制

WebRTC音视频通话-新增或修改SDP中的码率Bitrate限制参数 之前搭建ossrs服务,可以查看:https://blog.csdn.net/gloryFlow/article/details/132257196 之前实现iOS端调用ossrs音视频通话,可以查看:https://blog.csdn.net/gloryFlo…

一个概率论例题引发的思考

浙江大学版《概率论与数理统计》一书,第13章第1节例2: 这个解释和模型比较简单易懂。 接下来,第13章第2节的例2也跟此模型相关: 在我自己的理解中,此题的解法跟上一个题目一样,其概率如下面的二维矩阵&a…

61. 旋转链表

61. 旋转链表 题目-中等难度示例1. 快慢指针找到分割位置2. 连成环后截断 题目-中等难度 相关企业 给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动 k 个位置。 示例 示例 1: 输入:head [1,2,3,4,5], k 2 输出…

STM32基于CubeIDE和HAL库 基础入门学习笔记:蓝牙 WIFI STM32连接阿里云

文章目录: 一:蓝牙模块 1.蓝牙模块透传收发测试程序 bt.h bt.c usart.c main.c 2.蓝牙模块AT指令发送与回复判断程序 usart.c main.c 3.蓝牙模块APP按钮控制应用程序 main.c 4.蓝牙模块APP专业调试测试程序(操控界面:按…

面试热题(合并K个升序链表)

给定一个链表数组,每个链表都已经按升序排列。 请将所有链表合并到一个升序链表中,返回合并后的链表。 输入:lists [[1,4,5],[1,3,4],[2,6]] 输出:[1,1,2,3,4,4,5,6] 解释:链表数组如下: [1->4->5,1…

【第二阶段】kotlin函数引用

针对上篇传入函数参数我们也可以重新定义一个函数,然后在main中调用时传入函数对象 lambda属于函数类型的对象,需要把普通函数变成函数类型的对象(函数引用),使用“::” /*** You can edit, ru…

【EI/SCOPUS征稿】第九届材料加工与制造工程国际学术会议(ICMPME 2023)

第九届材料加工与制造工程国际学术会议 2023 9th International Conference on Materials Processing and Manufacturing Engineering (ICMPME 2023) 第九届材料加工与制造工程国际学术会议(ICMPME 2023)定于2023年10月13-15日在中国南昌隆重举行。会议主要围绕“材料加工”、…

理解软件行业职位的职责

对于职位的一些个人看法 ....... 目录 1.初级程序员(PG ) 2.中级程序员(SE) 3. 高级程序员(SSE) 4.技术经理(TL) 5.技术总监(VP) 6. 首席技术官&#xf…

Mac 卸载appium

安装了最新版的appium 2.0.1,使用中各种问题,卡顿....,最终决定回退的。记录下卸载的过程 1.打开终端应用程序 2.卸载全局安装的 Appium 运行以下命令以卸载全局安装的 Appium: npm uninstall -g appium 出现报错:Error: EACCES: permiss…

[保研/考研机试] KY135 又一版 A+B 浙江大学复试上机题 C++实现

题目链接&#xff1a; KY135 又一版 AB https://www.nowcoder.com/share/jump/437195121691736185698 描述 输入两个不超过整型定义的非负10进制整数A和B(<231-1)&#xff0c;输出AB的m (1 < m <10)进制数。 输入描述&#xff1a; 输入格式&#xff1a;测试输入包…

10.Eclipse配置Tomcat详细教程、如何使用Eclipse+tomcat创建并运行web项目

一、Tomcat的下载官网 -> 进入官网显示如图所示的界面&#xff0c;在下下载的是Tomcat9.0版本&#xff0c;你可以自己选一款 点击然后进入下面这个界面 最好是在你的D盘建立一个文件夹&#xff0c;把它解压在里面&#xff0c;文件夹名自己来吧&#xff0c;自己能知道里面装…