求助诸君:EF调用Oracle包中带游标的存储过程

大家好,项目开发时遇到了瓶颈,是关于EF6调用Oracle包中带游标的存储过程,小弟尝试了N遍后,还是百试不得其解,望诸君助小弟一臂之力。

Oracle packages如下:


--------------分割线-----------------------------
Oracle package bodies如下:

----------------------分割线-----------------------------
这是ADO.NET跑的存储过程,完全没问题的。只是EF中调用我不会。

----------------------分割线-----------------------------
这是EF中的代码

----------------------分割线-----------------------------

我是知道oracle 存储过程sql窗口是用begin end,命令窗口是exec的,我的存储过程应该是没写错的。
望诸君如果有用过EF调用Oracle包中带游标的存储过程案例代码的,
希望能分享下经验,学习下,能贴代码最好,真心谢谢了。

1个回答

这个需要下载对应的驱动才行

qq175299882
qq175299882 比如是什么驱动呢?能说详细点吗?
大约 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
oracle带游标的存储过程列子
oracle带游标的存储过程列子简单点, 能用就行。主要是实现将一个表中的一个字段当条件使用
oracle存储过程返回游标集。。。写了半天没搞定,oracle大神帮帮我
需要查询某个表(tablename)参数,一段时间(开始日期到结束日期)的count数。 我自己想法是声明一个游标来遍历开始日期到结束日期,把每一天的count和这天的日期都装到另一个游标里(我不知道怎么写出返回游标装个对象这种)。最烦的就是有个条件需要把18点以后的数据算到第二天。也就是说如果数据时间为2017/8/22 18:00,那这条数据的时间应该是2017/8/23。所以很麻烦,拜托oracle大神帮帮我!!! 反正最后的结果是: 2017-8-19 52 2017-8-20 45 2017-8-21 56 2017-8-22 12 这个时间也不是固定的,也是参数,最好还是排下序,谢谢!!!
请问有大神知道JDBC调用sql server 中带游标返回参数的存储过程的方法吗
create procedure RankBoard @RankType int, @cur_rank cursor varying output as begin if(@RankType=0) set @cur_rank = cursor forward_only static for select articleID,articleTitle,click from BlogArticles order by click desc else if(@RankType=1) set @cur_rank = cursor forward_only static for select userID,uname,numOfVisit from BlogUser order by numOfVisit desc else if(@RankType=2) set @cur_rank = cursor forward_only static for select BlogComment.articleID,articleTitle,count(BlogComment.articleID) from BlogComment,BlogArticles where BlogComment.articleID=BlogArticles.articleID group by BlogComment.articleID,articleTitle order by count(BlogComment.articleID) open cur_rank end 存储过程如上所示,求JDBC调用返回的游标结果集的方式,万分感谢❤
oracle 存储过程 游标
lz 最近公司要求做一些数据预警功能。 比如说 tablea id name date 1 张三 2013-01-01 2 李四 2013-02-01 3 张三 2013-02-01 4 张三 2013-10-01 5 李四 2012-01-01 6 李四 2012-02-01 业务要求, 用存储过程或者真接SQL语句实现! 同一个人 日期相近的数据(比如日期间隔1个月吧) 读取出来! 以上的表读取出的内容为 tableb id name date 1 张三 2013-01-01 2 张三 2013-02-01 3 李四 2012-01-01 4 李四 2012-02-01 我现在的想法是 存储过程 通过游标 读取相同的人 所有记录 然后每条对比,日期间隔小于一个月的记录其ID 最后通过 ID再读取内容! 但在用游标时 不会读取游标下一行的内容! 请教各位大神,这个业务该怎么实现? 或者有什么更好的方式实现?
Python通过cx_Oracle调用过程,过程中的OUT游标怎么在Python中打开?怎么把游标中的列名提取出来?
调用数据库中包中的一个过程,过程头如下: ``` PROCEDURE RAITO(RETURNDS OUT REDATASET.DS, 其余IN参数 ) AS ``` 然后在Python中想用DataFrame格式显现出来,搞了半天,代码如下: ``` import cx_Oracle import pandas as pd conn = cx_Oracle.connect('mycredit/CREDIT12345@PICC_shengchan') cur = conn.cursor() i_cur = cur.var(cx_Oracle.CURSOR) zz = cur.callproc("RAITO",[i_cur, '其余IN参数']) rs = pd.DataFrame(zz) result = [] for i in range(len(rs.T)): result.append(rs[i][0]) rs2 = pd.DataFrame(result) print (rs2) ``` 结果如下: ![图片说明](https://img-ask.csdn.net/upload/201812/11/1544500592_598626.png) 有两个问题问下各位大佬: 1. ORACLE中RETURNDS(既有结果的游标)已经传入了I_CUR,各位可以看到我先把结果放到list中,再通过循环得到了上述结果,有没有比较方便的方法可以直接通过I_CUR得到结果? 2. 平常在用游标的时候我都会通过如下方法得到列名: ``` columnnames = [] for field in cursor.description: columnnames.append(field[0]) ``` 可是我在上面的列子中用如下代码的时候,就会出现错误: ``` print(i_cur.description) ``` AttributeError: 'cx_Oracle.CURSOR' object has no attribute 'description' 如果是这样的话,我怎么能取到数据库游标中的列名呢?(既RETURNDS游标中的列名)
在Oracle中使用游标的%FOUND属性会不会导致游标移动?
在Oracle中使用游标的%FOUND属性会不会导致游标移动?
MySQL:请问游标的使用局限于存储过程吗?能否单独地使用游标。
有MySQL高手吗?想请教一个关于游标的问题。 请问游标的使用局限于存储过程吗?能否单独地使用游标? 比如在命令行中直接使用类似语句: ```mysql DECLARE ordernumbers CURSOR FOR SELECT order_num FROM orders; ``` 事实上我在mysql(5.7.12)版本 ubuntu(18.04)的 mysql 命令行环境下进行过测试 ,上述语句会报语法错误。但是,我查的资料上都没有明确说明游标不能直接使用,所以 想问下有没有知道的大佬能够解答一下,感谢!
oracle 游标
请问在[b]oracle[/b]中如何指定游标打开的时候是READ_ONLY的? oracle中定义的游标默认就是FORWARD_ONLY的,这个说法正确吗?
oracle存储过程使用游标的问题
create or replace procedure test3( templete_id in varchar2 ) as t_id_tmp varchar2(50); ty_id_tmp varchar2(50); cursor type_cur is select t1.id as type_id,t1.type_name from t_type t1,t_templete_link t2,t_templete t3 where t1.id = t2.type_id and t2.templete_id = t3.id and t3.id = templete_id; -- n number; begin select sys_guid() into t_id_tmp from dual; --复制模板信息 insert into t_templete select t_id_tmp as id, t.templete_name from t_templete t where t.id = templete_id; commit; dbms_output.put_line(templete_id); --复制类别信息 -- declare begin for type_rec in type_cur loop -- n:=n+1; -- dbms_output.put_line(1); select sys_guid() into ty_id_tmp from dual; insert into t_type select ty_id_tmp as id, type_rec.type_name from dual; -- from t_type t2 -- where t2.id = type_rec.type_id; -- commit; insert into t_templete_link select sys_guid() as id,t_id_tmp as TEMPLETE_ID ,ty_id_tmp as type_id from dual; -- t_templete_link t2 --where t2.templete_id = templete_id; commit; end loop; end; --dbms_output.put_line(t_id_tmp); exception when others then Rollback; end test3; 如果我传入的参数templete_id=1,我的t_cur循环的时候循环了3次。 但如果游标中的变变量templete_id 替换成 ‘1’就循环2次 这才是正常结果为什么
如何使用JDBC调用输出参数为游标的Oracle存储过程
<p>表结构(保存邮编与地址信息):</p> <pre name="code" class="sql">create table T_zipCode ( zipcode varchar2(6) not null primary key, address varchar2(100) not null ); </pre> <p> <br>要求:建立一个存储过程,该存储过程需要有一个输入参数和一个输出参数,输入参数为查询条件(与address列模糊查询),输出参数为结果集游标。 <br><br>本人刚学习Oracle,尝试几次均告失败,肯请各位大牛帮助。</p> <p> </p><br /><strong>问题补充:</strong><br />我这样写的,报ORA-06550错误。 <br />建package: <br /><pre name="code" class="sql"> CREATE OR REPLACE PACKAGE ZIP_PACKAGE AS TYPE ZIPCODE_CURSOR_TYPE IS REF T_ZIPCODE; END ZIP_PACKAGE; </pre> <br /> <br />建procedure: <br /><pre name="code" class="sql"> CREATE OR REPLACE PROCEDURE SP_FMS_COM_GetZipCodeRows(PARAM_ADDRESS IN VARCHAR2, ZIP_CODE_CURSOR OUT ZIP_PACKAGE.ZIPCODE_CURSOR_TYPE) IS strSQL varchar2(1024); BEGIN strSQL := 'SELECT ZIPCODE, ADDRESS FROM T_ZIPCODE WHERE ADDRESS LIKE ''%:PARAM_ADDRESS%'''; OPEN ZIP_CODE_CURSOR FOR strSQL USING PARAM_ADDRESS; END SP_FMS_COM_GetZipCodeRows; </pre>
java调用存储过程返回游标的结果集无法关闭的问题
有如果典型的java的spring jdbc调用了存储过程,返回游标形结果集。如果循环调用此方法。则会造成 ORA-01000: 超出打开游标的最大数。原因是没有及时关闭oracle中的游标,但按理说jdbcTemplate模版已经关闭了链接,但始终无法关闭游标。请问有什么办法可以关闭游标吗? Object obj=jdbcTemplate.execute(new CallableStatementCreator(){ @Override public CallableStatement createCallableStatement(Connection con) throws SQLException { // TODO Auto-generated method stub String execuSql = "{call batch51(?)}";; cs.registerOutParameter(1, OracleTypes.CURSOR);// 注册输出参数的类型 return cs; } }, new CallableStatementCallback(){ public Object doInCallableStatement(CallableStatement cs) throws SQLException,DataAccessException { List<JSONObject> resultsJson = new ArrayList<JSONObject>(); cs.execute(); ResultSet refcursor = (ResultSet) cs.getObject(1);// 获取游标一行的值 while (refcursor.next()) {// 转换每行的返回值到Map中 JSONObject json = new JSONObject(); json.accumulate("busname",refcursor.getString("busname")); resultsJson.add(json); } refcursor.close(); return resultsJson; } });
oracle的游标和过程区别
我想要查询emp表中的所有的数据 用游标的方式会写 但是能不能用过程实现这个查询呢? 还有过程是和函数一样 只能返回一个参数吗?不能返回行数据吗?
oracle 存储过程 游标的问题
create or replace procedure test_procedure(planetimetableid in integer , gid in integer ,addpeo in integer,peoCount in integer ) is cursor a_cursor is select id from seats_info where id in(select id from (select t.*,rownum rn from seats_info t where t.istate ='0' and t.planetimetableid =planetimetableid and t.isdelete = '0' ) where rn<=peoCount) for update; begin for a_cur in a_cursor loop update seats_info set istate = '1',lastudpdate = sysdate,lastudppeoid =addpeo where id = a_cur.id; insert into passenger_info(gid, seatsid, addpeo)values(gid,a_cur.id ,addpeo ); insert into test(sid,pid, cou)values(a_cur.id,planetimetableid,peoCount); end loop; commit; -- ReturnValue:=1; end test_procedure; 单独执行查询语句时 select id from seats_info where id in(select id from (select t.*,rownum rn from seats_info t where t.istate ='0' and t.planetimetableid =63 and t.isdelete = '0' ) where rn<=2) 能返回正确的数据 但是在存储过程中游标取出来的a_cui.id 数据不正确 求大神解答~~~帮忙看看哪里写错了
oracle中触发器与游标和包的联合问题。
1.创建临时表stu_temp。(临时表结构要和关联表结构一致) 2.创建一个包,包含两个存储过程,stu_insert用于在行级触发器中调用,往stu_temp临时表中装载更新或插入的记录。而stu_count用于在语句级触发器中检查人数是否超限。 3.创建行级触发器stu_in,目的是把更新后的记录插入stu_temp。 4.创建语句级触发器stu_cou,使用游标从stu_temp中逐条读取更新或插入的记录,取sno,在关联表stu中查找所有匹配学生的人数进行统计。若人数超过5人则抛出异常。如果检查通过,则清空临时表。 **基表与临时表已经创建好,请问后续问题的语句该怎样写?诚谢啦~** 语句如下: create table stu(sno varchar2(6) not null,sname varchar2(6) not null,ssex varchar2(2)not null,sage number(6) not null); create clobal temporary table stu_temp(sno varchar2(6) not null,sname varchar2(6) not null,ssex varchar2(2)not null,sage number(6) not null);
关于oracle 游标的 问题
我现在有两个表: 表a中的字段:ID,BJNO,Name,Datatime,type; 表b中的字段:ID,BJNO,Name,startdatatime,enddatatime,time_difference; 现在b表是空的,a表中有数据。 a表中的数据规则为: id唯一。bjno,name 对应,但是存在多条 bjno,name 相同的记录。type 只有两个值,一个是2,一个是5,5代表开始时间,2代表结束时间。 我现在的希望是,能够将这些记录,每一次的开始时间和结束时间对应起来。 a 表示例 ID BJNO name datatime type 1 Bj0001 1号报卷 2013-1-1 5 2 Bj0001 1号报卷 2013-1-2 2 3 Bj0002 2号报卷 2013-1-3 5 4 Bj0001 1号报卷 2013-1-4 5 5 Bj0002 2号报卷 2013-1-5 2 我希望可以 通过游标或其他oracle方式实现下面的内容: 当 type 是5的时候,把a表 BJNO,Name,Datatime 分别记录到 b表的BJNO,Name,startdatatime。 当 type 是2的时候,把a表 Datatime 记录到 先前 插入 到b 表中的记录(先前最后插入b表且bjno可以对应上的记录)中的 enddatatime 中。 结果 b 表示意 ID BJNO name startdatatime enddatatime time_difference 1 Bj0001 1号报卷 2013-1-1 2013-1-2 1 2 Bj0002 2号报卷 2013-1-3 2013-1-5 2 3 Bj0001 1号报卷 2013-1-4 当天减去 2013-1-4 游标我不是太懂,求高人指教
ORACLE 存储过程 关于游标循环从一个表COPY到另一个表插入问题
``` create or replace procedure insertspzl as is_tb number(2):=1;-- 1 已经同步 2 未同步 3 修改状态 spbh VARCHAR2(255); sccj VARCHAR2(255); sccjpd VARCHAR2(255); --判断生产厂家是否存在 变量 jxname VARCHAR2(255); jxnamepd VARCHAR2(255); spfl VARCHAR2(255); jyfw VARCHAR2(255); cursor cur is select trim(商品编号) spbh,trim(生产厂商) sccj,trim(剂型) jx,trim(商品类型) spfl,trim(商品类型) jyfw from 商品资料@TEST; begin -- 增加资料处理字段 -- alter table zl_spzlb add (bzdw VARCHAR2(255)); -- alter table zl_spzlb add (sccj VARCHAR2(255)); -- alter table zl_spzlb add (jx VARCHAR2(255)); -- alter table zl_spzlb add (spfl VARCHAR2(255)); -- For 循环逐条插入记录 for temp in cur loop spbh :=temp.spbh; sccj :=temp.sccj; jxname :=temp.jx; spfl :=temp.spfl; jyfw :=temp.jyfw; select trim(是否同步) into is_tb from 商品资料@TEST where trim(商品编号)=spbh ; Dbms_Output.put_line('--打印is_tb--'||is_tb||'--编号--'||spbh); -- If 判断单条条件处理 if is_tb =1 then Dbms_Output.put_line('--发现未同步商品--'||spbh); Dbms_Output.put_line('--厂家--'||sccj); Dbms_Output.put_line('开始插入数据'); --插入商品资料 insert into zl_spzlb (resid,bh,spbh,name,sptym,slv,pzwh,spcd,cctj,is_zdyh,is_ty,bzdw,spgg,sccj,jx,spfl) select seq_acl_res_resid.nextval,trim(商品编号),trim(商品编号),trim(商品名称),trim(通用名), trim(税率),trim(批准文号),trim(产地), decode(trim(储存条件),'密封,置阴凉处','阴凉、暗凉(密闭,遮光)','密封','阴凉、暗凉(密闭,遮光)', '密封,置阴凉处(不超过20°)','阴凉、暗凉(密闭,遮光)','遮光','阴凉、暗凉(密闭,遮光)','阴凉', '阴凉、暗凉(密闭,遮光)','常温','常温(干燥0℃-30℃)','冷藏','冷藏(2℃-10℃)','其他'), decode(trim(养护措施),'普通养护',2,'重点养护',1),decode(trim(是否停用),'否',2,'是',1),trim(单位), trim(规格),trim(生产厂商),trim(剂型), trim(商品类型) from 商品资料@TEST where trim(商品编号)=spbh; --插入包装资料 Dbms_Output.put_line('--商品--'||spbh); insert into zl_bzggzlb(bzid,spid,jlgg,is_hd,name) select seq_zl_bzggzlb_bzid.nextval,a.resid,1,1,a.bzdw from zl_spzlb a where a.spbh=spbh; --更新 update zl_spzlb a set (a.lsbzid,a.pfbzid)=(Select b.bzid,b.bzid From zl_bzggzlb b Where a.resid=b.spid and a.spbh=spbh) where a.spbh =spbh; end loop; commit; --for 循坏结束 end insertspzl; ``` 游标循环不允许再 遍历游标的时候 有insert的操作,并且执行了commit 但是如果commit 放在循化外面 会在获取 商品资料@TEST 第二行记录插入时候 --插入包装资料 在这一块把第一次生产的数据带出来重复插入 导致 --更新 这一块没办法进行 返回多行 如何去隔离上一次循环 不影响下一次并且最后提交都提交 求大大们指教
oracle 中如何将游标中循环查出的结果集放到另外一个临时表中
## --包头 CREATE OR REPLACE PACKAGE TESTPACKAGE IS TYPE MYCURSOR IS REF CURSOR; -- 定义游标变量 -- 定义过程,用游标变量作为返回参数 PROCEDURE GETRECORDS( RET_CURSOR OUT MYCURSOR , P_BIZTYPE VARCHAR2:=NULL,-- 业务类型 P_DATE_START VARCHAR2:=NULL,-- 起始时间 P_DATE_END VARCHAR2:=NULL, -- 结束时间 P_CUSTOM_CODE VARCHAR2:=NULL--关区代码 ); END TESTPACKAGE; ## --包体 CREATE OR REPLACE PACKAGE BODY TESTPACKAGE IS /*过程体*/ PROCEDURE GETRECORDS( RET_CURSOR OUT MYCURSOR , --返回值 P_BIZTYPE VARCHAR2:=NULL,-- 业务类型 P_DATE_START VARCHAR2:=NULL,-- 起始时间 P_DATE_END VARCHAR2:=NULL, -- 结束时间 P_CUSTOM_CODE VARCHAR2:=NULL--关区代码 ) AS --ROW_DEPT CUR_CONNECTNO%ROWTYPE; --V_SQL VARCHAR2(3000);--sql语句 DAN VARCHAR2(2000); BEGIN --CUR_CONNECTNO 该游标用于存放每个业务查询出的结果集 --A业务 IF P_BIZTYPE='A' THEN CURSOR CUR_CONNECTNO IS SELECT A.ID AS GJ_NO FROM GJ_A A WHERE TO_CHAR(A.GDATETIME,'YYYY/MM/DD') >=P_DATE_START AND TO_CHAR(A.GDATETIME,'YYYY/MM/DD') >=P_DATE_END; END IF; --点击查询全部业务类型时,连接 /* IF P_BIZTYPE='' THEN V_SQL+=' UNION ALL ' END IF;*/ --B业务 IF P_BIZTYPE='B' THEN CURSOR CUR_CONNECTNO IS SELECT A.NO AS GJ_NO FROM GJ_B A WHERE A.I_E_MARK='1' AND TO_CHAR(A.GDATETIME,'YYYY/MM/DD') >=P_DATE_START AND TO_CHAR(A.GDATETIME,'YYYY/MM/DD') >=P_DATE_END; END IF; --M业务 IF P_BIZTYPE='M' THEN CURSOR CUR_CONNECTNO IS SELECT A.NO AS GJ_NO FROM GJ_M A WHERE SUBSTR(A.NO,3,1)='M' AND TO_CHAR(A.GDATETIME,'YYYY/MM/DD') >=P_DATE_START AND TO_CHAR(A.GDATETIME,'YYYY/MM/DD') >=P_DATE_END; END IF; /*IF P_BIZTYPE='' THEN V_STR+=' UNION ALL ' END IF;*/ --G IF P_BIZTYPE='G' THEN CURSOR CUR_CONNECTNO IS SELECT A.NO AS GJ_NO FROM GJ_G A WHERE TO_CHAR(A.GDATETIME,'YYYY/MM/DD') >=P_DATE_START AND TO_CHAR(A.GDATETIME,'YYYY/MM/DD') >=P_DATE_END; END IF; /*IF P_BIZTYPE='' THEN V_STR+=' UNION ALL ' END IF;*/ --E 业务 IF P_BIZTYPE='E' || P_BIZTYPE='' THEN CURSOR CUR_CONNECTNO IS SELECT A.NO AS GJ_NO FROM GJ_E A WHERE A.MARK='2' AND TO_CHAR(A.GDATETIME,'YYYY/MM/DD') >=P_DATE_START AND TO_CHAR(A.GDATETIME,'YYYY/MM/DD') >=P_DATE_END; END IF; -- 创建临时表 /* CREATE GLOBAL TEMPORARY TABLE TEMP_TBL(gj_no VARCHAR2(30),COL_A VARCHAR2(30),COL_A VARCHAR2(30)) ON COMMIT DELETE ROWS ;*/ FOR HAHA IN CUR_CONNECTNO LOOP --根据上述业务查出的数据 再在次记录表中是否 存在 ,若存在就把数据 取出来 -- 取出来 想保存到临时表中。 该怎么写 SELECT * FROM RD_Z Z WHERE BIZ_TYPE = P_BIZTYPE AND Z.NO=HAHA.GJ_NO ; END LOOP; --最后想用该游标来存放临时表中的数据集 来返回去 --OPEN RET_CURSOR FOR END GETRECORDS; END TESTPACKAGE;
数据库中释放游标与关闭游标
1. 在不同数据库中会用到游标,有的写法中直接到“关闭游标”就结束了,有的需要“释放游标”,请问大神们在什么情况下需要释放游标,请结合具体的oracle、mysql和sql server数据库进行详细介绍一下。 2. 可以提供一下在不同数据库中具体使用的例子 。
使用oracle带参数游标问题
GOODS 商品表![图片说明](https://img-ask.csdn.net/upload/201502/04/1423056329_347974.png) 已有数据: ![图片说明](https://img-ask.csdn.net/upload/201502/04/1423057056_631507.png) CATEGORY表![图片说明](https://img-ask.csdn.net/upload/201502/04/1423056629_663749.png) 已有数据![图片说明](https://img-ask.csdn.net/upload/201502/04/1423056689_453002.png) PL/SQL 代码: DECLARE V_GOODS GOODS%ROWTYPE; --存放商品表记录 V_CATEGORYID CHAR(32); --商品类别ID /*根据指定商品类别ID查询出该类别下商品价格最低的商品记录*/ CURSOR CUR_GOODS(CATEGORYID VARCHAR) IS SELECT * FROM (SELECT * FROM GOODS G WHERE G.CATEGORYID=CATEGORYID ORDER BY G.PRICE ASC) WHERE ROWNUM<2; BEGIN V_CATEGORYID:='3f3a26cc227048a2b703de4b7581amkd'; OPEN CUR_GOODS(V_CATEGORYID); FETCH CUR_GOODS INTO V_GOODS; IF CUR_GOODS%FOUND THEN dbms_output.put_line(V_GOODS.GOODSNAME||','||V_GOODS.PRICE||','||V_GOODS.CATEGORYID); END IF; CLOSE CUR_GOODS; END; 个人觉得应输出:Galaxy s4,4000.25,3f3a26cc227048a2b703de4b7581amkd 实际输出:李宁运动服,250.36,3f3a26cc227048a2b703de4b7581dmku 为什么呢? 在你们的电脑里测试会输出什么呢?
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私...
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
面试官问我:什么是消息队列?什么场景需要他?用了会出现什么问题?
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式和人才交流群,欢迎Star和完善 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸...
8年经验面试官详解 Java 面试秘诀
作者 |胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三百位候选人。在本文里,就将结合本人的面试经验,针对Java初学者、Java初级开发和Java开发,给出若干准备简历和准备面试的建议。 Java程序员准备和投递简历的实...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观...
MyBatis研习录(01)——MyBatis概述与入门
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis原本是apache的一个开源项目iBatis, 2010年该项目由apache software foundation 迁移到了google code并改名为MyBatis 。2013年11月MyBatis又迁移到Github。
程序员一般通过什么途径接私活?
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip installselenium -ihttps://pypi.tuna.tsinghua.edu.cn/simple/ ...
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca...
Python爬虫精简步骤1 获取数据
爬虫,从本质上来说,就是利用程序在网上拿到对我们有价值的数据。 爬虫能做很多事,能做商业分析,也能做生活助手,比如:分析北京近两年二手房成交均价是多少?广州的Python工程师平均薪资是多少?北京哪家餐厅粤菜最好吃?等等。 这是个人利用爬虫所做到的事情,而公司,同样可以利用爬虫来实现巨大的商业价值。比如你所熟悉的搜索引擎——百度和谷歌,它们的核心技术之一也是爬虫,而且是超级爬虫。 从搜索巨头到人工...
Python绘图,圣诞树,花,爱心 | Turtle篇
每周每日,分享Python实战代码,入门资料,进阶资料,基础语法,爬虫,数据分析,web网站,机器学习,深度学习等等。 公众号回复【进群】沟通交流吧,QQ扫码进群学习吧 微信群 QQ群 1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle()...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东...
破14亿,Python分析我国存在哪些人口危机!
一、背景 二、爬取数据 三、数据分析 1、总人口 2、男女人口比例 3、人口城镇化 4、人口增长率 5、人口老化(抚养比) 6、各省人口 7、世界人口 四、遇到的问题 遇到的问题 1、数据分页,需要获取从1949-2018年数据,观察到有近20年参数:LAST20,由此推测获取近70年的参数可设置为:LAST70 2、2019年数据没有放上去,可以手动添加上去 3、将数据进行 行列转换 4、列名...
web前端javascript+jquery知识点总结
1.Javascript 语法.用途 javascript 在前端网页中占有非常重要的地位,可以用于验证表单,制作特效等功能,它是一种描述语言,也是一种基于对象(Object)和事件驱动并具有安全性的脚本语言 ...
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。
听说想当黑客的都玩过这个Monyer游戏(1~14攻略)
第零关 进入传送门开始第0关(游戏链接) 请点击链接进入第1关: 连接在左边→ ←连接在右边 看不到啊。。。。(只能看到一堆大佬做完的留名,也能看到菜鸡的我,在后面~~) 直接fn+f12吧 &lt;span&gt;连接在左边→&lt;/span&gt; &lt;a href="first.php"&gt;&lt;/a&gt; &lt;span&gt;←连接在右边&lt;/span&gt; o...
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ...... ...
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!...
渗透测试-灰鸽子远控木马
木马概述 灰鸽子( Huigezi),原本该软件适用于公司和家庭管理,其功能十分强大,不但能监视摄像头、键盘记录、监控桌面、文件操作等。还提供了黑客专用功能,如:伪装系统图标、随意更换启动项名称和表述、随意更换端口、运行后自删除、毫无提示安装等,并采用反弹链接这种缺陷设计,使得使用者拥有最高权限,一经破解即无法控制。最终导致被黑客恶意使用。原作者的灰鸽子被定义为是一款集多种控制方式于一体的木马程序...
Python:爬取疫情每日数据
前言 目前每天各大平台,如腾讯、今日头条都会更新疫情每日数据,他们的数据源都是一样的,主要都是通过各地的卫健委官网通报。 以全国、湖北和上海为例,分别为以下三个网站: 国家卫健委官网:http://www.nhc.gov.cn/xcs/yqtb/list_gzbd.shtml 湖北卫健委官网:http://wjw.hubei.gov.cn/bmdt/ztzl/fkxxgzbdgrfyyq/xxfb...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合...
雷火神山直播超两亿,Web播放器事件监听是怎么实现的?
Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播。在视频业务大数据平台中,播放数据的统计分析非常重要,所以Web播放器在使用过程中,需要对其内部的数据进行收集并上报至服务端,此时,就需要对发生在其内部的一些播放行为进行事件监听。 那么Web播放器事件监听是怎么实现的呢? 01 监听事件明细表 名...
3万字总结,Mysql优化之精髓
本文知识点较多,篇幅较长,请耐心学习 MySQL已经成为时下关系型数据库产品的中坚力量,备受互联网大厂的青睐,出门面试想进BAT,想拿高工资,不会点MySQL优化知识,拿offer的成功率会大大下降。 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 设计...
Python新型冠状病毒疫情数据自动爬取+统计+发送报告+数据屏幕(三)发送篇
今天介绍的项目是使用 Itchat 发送统计报告 项目功能设计: 定时爬取疫情数据存入Mysql 进行数据分析制作疫情报告 使用itchat给亲人朋友发送分析报告 基于Django做数据屏幕 使用Tableau做数据分析 来看看最终效果 目前已经完成,预计2月12日前更新 使用 itchat 发送数据统计报告 itchat 是一个基于 web微信的一个框架,但微信官方并不允许使用这...
作为程序员的我,大学四年一直自学,全靠这些实用工具和学习网站!
我本人因为高中沉迷于爱情,导致学业荒废,后来高考,毫无疑问进入了一所普普通通的大学,实在惭愧???? 我又是那么好强,现在学历不行,没办法改变的事情了,所以,进入大学开始,我就下定决心,一定要让自己掌握更多的技能,尤其选择了计算机这个行业,一定要多学习技术。 在进入大学学习不久后,我就认清了一个现实:我这个大学的整体教学质量和学习风气,真的一言难尽,懂的人自然知道怎么回事? 怎么办?我该如何更好的提升自...
粒子群算法求解物流配送路线问题(python)
1.Matlab实现粒子群算法的程序代码:https://www.cnblogs.com/kexinxin/p/9858664.html matlab代码求解函数最优值:https://blog.csdn.net/zyqblog/article/details/80829043 讲解通俗易懂,有数学实例的博文:https://blog.csdn.net/daaikuaichuan/article/...
教你如何编写第一个简单的爬虫
很多人知道爬虫,也很想利用爬虫去爬取自己想要的数据,那么爬虫到底怎么用呢?今天就教大家编写一个简单的爬虫。 下面以爬取笔者的个人博客网站为例获取第一篇文章的标题名称,教大家学会一个简单的爬虫。 第一步:获取页面 #!/usr/bin/python # coding: utf-8 import requests #引入包requests link = "http://www.santostang....
前端JS初级面试题二 (。•ˇ‸ˇ•。)老铁们!快来瞧瞧自己都会了么
1. 传统事件绑定和符合W3C标准的事件绑定有什么区别? 传统事件绑定 &lt;div onclick=""&gt;123&lt;/div&gt; div1.onclick = function(){}; &lt;button onmouseover=""&gt;&lt;/button&gt; 注意: 如果给同一个元素绑定了两次或多次相同类型的事件,那么后面的绑定会覆盖前面的绑定 (不支持DOM事...
相关热词 c# 识别回车 c#生成条形码ean13 c#子控制器调用父控制器 c# 写大文件 c# 浏览pdf c#获取桌面图标的句柄 c# list反射 c# 句柄 进程 c# 倒计时 线程 c# 窗体背景色
立即提问