c#.net 调用oracle存储过程,不能正常回滚

本人是个小菜,刚接触.net不久,使用事务不熟练,导致回滚失败。下面是代码:

enter code here
  using (OracleConnection conn = new OracleConnection(strConn))
        {
            if (conn.State != ConnectionState.Open)
            {
                conn.Open();
            }

            OracleCommand cmd = conn.CreateCommand();

            OracleTransaction ot = conn.BeginTransaction(IsolationLevel.ReadCommitted);
            cmd.Connection = conn;
            cmd.Transaction = ot;
            //cmd.Transaction = ot;
            //OracleTransaction ot = conn.BeginTransaction();

            try
            {
                foreach (XmlNode node in itemNodes)
                {
                    rcptGroupId = Convert.ToString(node.SelectSingleNode("RcptGroupID").InnerText);
                    amt = node.SelectSingleNode("Price").InnerText;

                    OracleParameter[] pm = new OracleParameter[14];

                    pm[0] = new OracleParameter("cardno", OracleType.VarChar, 20);
                    pm[0].Direction = ParameterDirection.Input;
                    pm[0].Value = cardNo;

                    pm[1] = new OracleParameter("rcptgroupid", OracleType.VarChar, 100);
                    pm[1].Direction = ParameterDirection.Input;
                    pm[1].Value = rcptGroupId;

                    pm[2] = new OracleParameter("amt", OracleType.Number);
                    pm[2].Direction = ParameterDirection.Input;
                    pm[2].Value = float.Parse(amt);

                    pm[3] = new OracleParameter("secrityno", OracleType.VarChar, 32);
                    pm[3].Direction = ParameterDirection.Input;
                    pm[3].Value = secrityNo;

                    pm[4] = new OracleParameter("cardserno", OracleType.VarChar, 32);
                    pm[4].Direction = ParameterDirection.Input;
                    pm[4].Value = cardSerNo;

                    pm[5] = new OracleParameter("userid", OracleType.VarChar, 4);
                    pm[5].Direction = ParameterDirection.Input;
                    pm[5].Value = userID;

                    pm[6] = new OracleParameter("rcptno", OracleType.VarChar, 20);
                    pm[6].Direction = ParameterDirection.Output;

                    pm[7] = new OracleParameter("resultcode", OracleType.Int16);
                    pm[7].Direction = ParameterDirection.Output;

                    pm[8] = new OracleParameter("errormsg", OracleType.VarChar, 200);
                    pm[8].Direction = ParameterDirection.Output;

                    //add 2013.8.1
                    pm[9] = new OracleParameter("Bank", OracleType.VarChar, 20);
                    pm[9].Direction = ParameterDirection.Input;
                    pm[9].Value = bank;

                    pm[10] = new OracleParameter("BankNo", OracleType.VarChar, 20);
                    pm[10].Direction = ParameterDirection.Input;
                    pm[10].Value = bankno;

                    pm[11] = new OracleParameter("TransMoney", OracleType.VarChar, 10);
                    pm[11].Direction = ParameterDirection.Input;
                    pm[11].Value = decimal.Parse(TransMoney);

                    pm[12] = new OracleParameter("CashTraceNo", OracleType.VarChar, 30);
                    pm[12].Direction = ParameterDirection.Input;
                    pm[12].Value = CashTraceNo;

                    pm[13] = new OracleParameter("TerminalId", OracleType.VarChar, 16);
                    pm[13].Direction = ParameterDirection.Input;
                    pm[13].Value = TerminalId;

                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.CommandText = "pkg_autobillservice.proc_autoopbillcharge2";
                    cmd.Parameters.AddRange(pm);
                    cmd.ExecuteNonQuery();

                    rcptNoList.Add(Convert.ToString(pm[6].Value));
                }
                ot.Commit();

            }
            catch (Exception ex)
            {
                ot.Rollback();
                return string.Format(result, "1", ex.Message, "", rcptGroupId);
            }
            finally
            {
                cmd.Dispose();
                ot.Dispose();

            }
        }

调用存储过程,第一次错误了能回滚,再执行一次到cmd.ExecuteNonQuery()数据就已经提交了。
这样写在循环第二次的时候还会报错,错误为:System.Data.OracleClient.OracleExceptionMessage=ORA-06550: 第 1 行, 第 7 列: PLS-00703: 列表中具有指定参数的多个实例。
一天了还是没有法解决,求大家帮忙看下。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
c#中调用 存储过程 output获取不到值
c#中调用 存储过程 output获取不到值,在salserver中执行有值,求大牛解答 下面是代码: DAL层: ``` public List<Book> GetBooks(int categoryId, int pageIndex, int pageSize, ref int pageCount, string sortField) { SqlParameter[]parameters={new SqlParameter("@SortField",sortField), new SqlParameter("@CategoryId",categoryId), new SqlParameter("@PageSize",pageSize), new SqlParameter("@PageIndex",pageIndex), new SqlParameter("@PageCount",SqlDbType.Int)}; List<Book> bookList = new List<Book>(); parameters[parameters.Length - 1].Direction = ParameterDirection.Output; SqlDataReader reader=SqlHelper.ExecuteReader("sp_QueryPagedBook", CommandType.StoredProcedure, parameters); pageCount = Convert.ToInt32(parameters[parameters.Length - 1].Value); if(reader.HasRows){ while(reader.Read()){ Book book = new Book(); book.Id = Convert.ToInt32(reader["bId"]); book.Title = Convert.ToString(reader["Title"]); book.Author = Convert.ToString(reader["Author"]); book.Publisher = new Publisher(); book.Publisher.Id = Convert.ToInt32(reader["pubId"]); book.Publisher.Name = Convert.ToString(reader["pName"]); book.PublishDate = Convert.ToDateTime(reader["PublishDate"]); book.ISBN = Convert.ToString(reader["ISBN"]); book.UnitPrice = Convert.ToDouble(reader["UnitPrice"]); book.ContentDescription = Convert.ToString(reader["ContentDescription"]); book.TOC = Convert.ToString(reader["TOC"]); book.categorie = new Categorie(); book.categorie.Id = Convert.ToInt32(reader["cId"]); book.categorie.Name = Convert.ToString(reader["cName"]); book.categorie.PId = reader["PId"] != DBNull.Value ? (int?)reader["PId"] : null; book.categorie.SortNum = reader["SortNum"] != DBNull.Value ? (int?)reader["SortNum"] : null; book.Clicks = Convert.ToInt32(reader["Clicks"]); bookList.Add(book); } } return bookList; } ``` sqlserver中存储过程: ``` USE [BookShopPlus] GO /****** Object: StoredProcedure [dbo].[sp_QueryPagedBook] Script Date: 2018/4/2 15:32:52 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER procedure [dbo].[sp_QueryPagedBook] @SortField Varchar(20),--排序字段 @CategoryId int,--图书类型编号 @PageSize int,--页大小 @PageIndex int,--当前页 @PageCount int output--页总数 AS --计算总页数 Declare @TotalCount int SELECT @TotalCount=COUNT(1) FROM Books where CategoryId=@CategoryId if(@TotalCount%@PageSize<>0) SET @PageCount=@TotalCount/@PageSize+1 ELSE SET @PageCount=@TotalCount/@PageSize --按出版日期排序 if(@SortField='PublishDate') BEGIN SELECT top(@PageSize) *,c.Id as cId,p.Id as pubId,b.Id as bId,p.Name as pName,c.Name as cName FROM Books b LEFT JOIN Publishers p ON b.PublisherId=p.Id LEFT JOIN Categories c on b.CategoryId=c.Id WHERE CategoryId=@CategoryId and b.Id not in(SELECT TOP ((@PageIndex-1)*@PageSize) id from Books WHERE CategoryId=@CategoryId) ORDER BY PublishDate END --按价格排序 ELSE BEGIN SELECT top(@PageSize) *,c.Id as cId,p.Id as pubId,b.Id as bId,p.Name as pName,c.Name as cName FROM Books b LEFT JOIN Publishers p ON b.PublisherId=p.Id LEFT JOIN Categories c on b.CategoryId=c.Id WHERE CategoryId=@CategoryId and b.Id not in(SELECT TOP ((@PageIndex-1)*@PageSize) id from Books WHERE CategoryId=@CategoryId) ORDER BY UnitPrice END ``` 在serlserver中执行后有值: ![图片说明](https://img-ask.csdn.net/upload/201804/02/1522655513_762961.png) 在c#中调用后没有值: ![图片说明](https://img-ask.csdn.net/upload/201804/02/1522655543_507311.png)
C#.net中GRIDVIEW的SQL更新语句的问题
** 我要做的是点击GRIDVIEW(代码加载的内容)中更新功能按钮 然后更新相关信息,由于某些原因(说起来太麻烦了),只能使用自己写的代码而不是自动生成的UPDATE语句。 但是自己写的UPDATE语句出现问题,更新信息失败。在SQL SERVER中能正常使用 所以我猜是调用GRIDVIEW中数据时出现问题。但是试过很多方法都不能使用 不知道问题出现在哪里 希望前辈们能帮我看看 下面贴出几张截图和代码 图一是在SQL中正常使用的代码 ![图片说明](https://img-ask.csdn.net/upload/201907/28/1564317571_252779.png) 图二所示 断点打完 那几个变量是空值 ![图片说明](https://img-ask.csdn.net/upload/201907/28/1564318065_147839.png) ![图片说明](https://img-ask.csdn.net/upload/201907/28/1564325064_323064.png) 下面贴出代码 这是后端代码 ``` using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class HTML_ScoreManage : System.Web.UI.Page { SqlConnection sqlcon; SqlCommand sqlcom; string strCon = "Data Source=DESKTOP-79153UB; Initial Catalog=db_StudentManage;Integrated Security=True"; protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { bind(); } } protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { GridView1.EditIndex = e.NewEditIndex; bind(); } protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) //出现问题的函数 { sqlcon = new SqlConnection(strCon); string sqlstr = "update tb_Choosec001 set SName='" +GridView1.Rows[e.RowIndex].Cells[1].Text.ToString().Trim() + "',Score='" + GridView1.Rows[e.RowIndex].Cells[2].Text.ToString().Trim() + "' where SId='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'"; //上面几个GRIDVIEW1表格中数据调用为空值 sqlcom = new SqlCommand(sqlstr, sqlcon); sqlcon.Open(); sqlcom.ExecuteNonQuery(); sqlcon.Close(); GridView1.EditIndex = -1; bind(); } //取消     protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)     {         GridView1.EditIndex = -1;         bind();     } public void bind()     { string sqlstr = "select * from tb_Choosec001";         sqlcon = new SqlConnection(strCon);         SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);         DataSet myds = new DataSet();         sqlcon.Open(); myda.Fill(myds, "tb_Choosec001");         GridView1.DataSource = myds;         GridView1.DataKeyNames = new string[] { "SId" };//主键         GridView1.DataBind();         sqlcon.Close();     } } ``` 下面是前端 ``` <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ScoreManage2.aspx.cs" Inherits="HTML_ScoreManage" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4" ForeColor="#333333" GridLines="None" OnRowCancelingEdit="GridView1_RowCancelingEdit" OnRowEditing="GridView1_RowEditing" OnRowUpdating="GridView1_RowUpdating"> <AlternatingRowStyle BackColor="White" ForeColor="#284775" /> <Columns> <asp:BoundField DataField="SId" HeaderText="学生ID" /> <asp:BoundField DataField="SName" HeaderText="学生姓名" /> <asp:BoundField DataField="Score" HeaderText="成绩" /> <asp:CommandField ShowSelectButton="True" /> <asp:CommandField ShowEditButton="True" /> </Columns> <EditRowStyle BackColor="#999999" /> <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" /> <RowStyle BackColor="#F7F6F3" ForeColor="#333333" /> <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" /> <SortedAscendingCellStyle BackColor="#E9E7E2" /> <SortedAscendingHeaderStyle BackColor="#506C8C" /> <SortedDescendingCellStyle BackColor="#FFFDF8" /> <SortedDescendingHeaderStyle BackColor="#6F8DAE" /> </asp:GridView> </div> </form> </body> </html> ```
请问下C#操作Lotus Notes发送邮件,如何设置邮件回执呢?
用C# .net调用Lotus Notes 里的domino 发送邮件,如何设置邮件选项,选回执
C#.net中GRIDVIEW中数据调取未取到,麻烦前辈们指点指点
** 我要做的是点击GRIDVIEW(后端代码选择的表格)中更新功能按钮 然后更新相关信息,由于某些原因(说起来太麻烦了),只能使用后端自己写的代码而不是GRIDVIEW自动生成的UPDATE语句。但是自己写的UPDATE语句中调用GRIDVIEW的语句(GridView1.Rows[e.RowIndex].Cells[1].Text.ToString().Trim() ) 在调试中为空值。然后我还试过很多方法都为空值(会不会是页面刷新导致的),不知道为什么。希望前辈们能指点指点。 下面贴出几张截图和代码 图一是在SQL中正常使用的代码 ![图片说明](https://img-ask.csdn.net/upload/201907/31/1564503114_452068.png) 图二所示 断点打完 那几个变量是空值 ![图片说明](https://img-ask.csdn.net/upload/201907/31/1564503140_249943.png) 下面贴出代码 这是后端代码 ``` using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class HTML_ScoreManage : System.Web.UI.Page { SqlConnection sqlcon; SqlCommand sqlcom; string strCon = "Data Source=DESKTOP-79153UB; Initial Catalog=db_StudentManage;Integrated Security=True"; protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { bind(); } } protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { GridView1.EditIndex = e.NewEditIndex; bind(); } protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) //出现问题的函数 { sqlcon = new SqlConnection(strCon); string sqlstr = "update tb_Choosec001 set SName='" +GridView1.Rows[e.RowIndex].Cells[1].Text.ToString().Trim() + "',Score='" + GridView1.Rows[e.RowIndex].Cells[2].Text.ToString().Trim() + "' where SId='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'"; //上面几个GRIDVIEW1表格中数据调用为空值 sqlcom = new SqlCommand(sqlstr, sqlcon); sqlcon.Open(); sqlcom.ExecuteNonQuery(); sqlcon.Close(); GridView1.EditIndex = -1; bind(); } //取消 protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { GridView1.EditIndex = -1; bind(); } public void bind() { string sqlstr = "select * from tb_Choosec001"; sqlcon = new SqlConnection(strCon); SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon); DataSet myds = new DataSet(); sqlcon.Open(); myda.Fill(myds, "tb_Choosec001"); GridView1.DataSource = myds; GridView1.DataKeyNames = new string[] { "SId" };//主键 GridView1.DataBind(); sqlcon.Close(); } } ``` 前端代码 和前端图片: ``` <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ScoreManage2.aspx.cs" Inherits="HTML_ScoreManage" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4" ForeColor="#333333" GridLines="None" OnRowCancelingEdit="GridView1_RowCancelingEdit" OnRowEditing="GridView1_RowEditing" OnRowUpdating="GridView1_RowUpdating"> <AlternatingRowStyle BackColor="White" ForeColor="#284775" /> <Columns> <asp:BoundField DataField="SId" HeaderText="学生ID" /> <asp:BoundField DataField="SName" HeaderText="学生姓名" /> <asp:BoundField DataField="Score" HeaderText="成绩" /> <asp:CommandField ShowSelectButton="True" /> <asp:CommandField ShowEditButton="True" /> </Columns> <EditRowStyle BackColor="#999999" /> <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" /> <RowStyle BackColor="#F7F6F3" ForeColor="#333333" /> <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" /> <SortedAscendingCellStyle BackColor="#E9E7E2" /> <SortedAscendingHeaderStyle BackColor="#506C8C" /> <SortedDescendingCellStyle BackColor="#FFFDF8" /> <SortedDescendingHeaderStyle BackColor="#6F8DAE" /> </asp:GridView> </div> </form> </body> </html> ``` 前端图片 ![图片说明](https://img-ask.csdn.net/upload/201907/31/1564503437_553420.png)
C#用OLEDB方式调用存储过程返回DataSet结果集,怎么用?
C#用OLEDB方式调用存储过程返回DataSet结果集,怎么用?
C#DLL如何调用C#主程序的回调函数?
网上大多都是,C#委托实现C++ Dll中的回调函数。有没有C#DLL如何调用C#主程序的回调函数?
问一个c# asp.net 的问题
我有三个方法 分别为 A B C 现在AB都去调用C 方法 那么C怎么判断是谁调用了它 比如:A去调用C C就会弹出("是A调用了我") 反之亦然
C#.net怎么把ckeditor_3.5.2保存到数据库
.net版本为VS2010,sql版本2008,ckeditor版本3.5.2 数据库应该用哪个数据类型?后台怎么调用ckeditor的数据并保存? 另外,怎么在前台显示?
c#ASP.net的datalist问题
本人大学菜鸟,求大神们支教。谢谢。 我用了一个datalist控件,ID为datalist1,dataset的具体数据我已经放在类库里了,所以我直接调用dbmanger,之后想用datalist1绑定ds,可是datalist1就是不出来,请问是怎么回事![图片说明](https://img-ask.csdn.net/upload/201704/17/1492435770_752141.png)
C#用OLEDB方式调用存储过程返回DataSet结果集,怎么用
存储过程是对一张表的查询语句。C#如何用OLEDB方式调用存储过程并返回DataSet结果集
C#.net datetime类型转换失败
表中有一个datetime对象,定义了一个datatimepicker,但是总是提示类型转换失败, ``` try { Course.conn.Open(); SqlCommand cmd = new SqlCommand("insert into Student values('"+textBox2.Text+"','"+textBox3.Text+"','"+textBox4.Text+"','"+textBox5.Text+"','"+DateTime.Parse(dateTimePicker1.Text)+"','"+textBox6.Text+"','"+textBox7.Text+"','"+DateTime.Parse(dateTimePicker2.Text)+"','"+textBox8.Text+"')",Course.conn); cmd.ExecuteNonQuery();//执行 MessageBox.Show("添加成功!"); } ``` 调用这个DateTime.Parse(dateTimePicker1.Text)出错,求大神解答
c#调用oracle存储过程报错(菜鸟求救,客户催着)
另一个项目组提供了如下存储过程 P16080faf11. get_brwpcno_wrbrwamtamt (p_co varchar2, --公司 p_wtmen varchar2, --領款人 ref_cursor out sys_refcursor) ;--返回的借支编号和金额结果集 我最终想在sqlserver中存储过程中调用此存储过程,于是我先在控制台运行,结果报错误![![图片说明](https://img-ask.csdn.net/upload/201612/15/1481765015_982100.png)图片说明](https://img-ask.csdn.net/upload/201612/15/1481765005_614156.png) _另外,有大神能指导下,在sqlserver存储过程中怎么调用此过程,感激不尽啊_
c#程序如何调用c++程序?
我用c#写了一个控制手机拍照的程序,然后要对照片进行标定,我用的最典型的张正友标定法,但是网上的标定程序都是采用c++写的,那么有没有办法在c#程序中调用这一标定程序?或者相较调用而言直接改写c++成c#会更简单? ![图片说明](https://img-ask.csdn.net/upload/201903/13/1552480815_192913.png)![图片说明](https://img-ask.csdn.net/upload/201903/13/1552480823_798262.png)
C# .net用controll如何通知支付宝交易成功
我用的MVC框架,"notifyurl"卸载Controll中,用接口调用的方式提供给支付宝做POST请求,能收到支付宝返回的支付信息,但数据处理之后,使用“Response.Write("success")”无法使支付宝继续回调该url。 我该如何处理? 大概代码如下: ```if (HttpContext.Current.Response.Form["trade_status"] == "TRADE_SUCCESS") { //这里写支付成功处理逻辑 //逻辑处理完成,告诉支付宝处理成功 HttpContext.Current.Response.Write("success"); //然而这里.Response.Write过去之后,支付宝还是会一如既往的回调url,知道满25个小时8次调用之后停止。 } ``` 请问各位大神有没有遇到这种情况,该如何处理?
C# 可以直接调用金税组件接口吗?
C# 可以直接调用金税组件接口吗?还是需要通过别的程序来调用?
asp.net线程调用存储过程问题
asp.net线程调用存储过程,因为存储过程是是用来调度用的,可能一直处于循环等待几个小时的状态, 并且要求能够多个并发执行以提高效率,现在想法是用asp.net页面做个触发按钮, 能够并发长时间调用,目前的做法是创建两个几个线程执行调度过程, 但是发现好像页面session过期线程就自动回收了,后台还在运行的存储过程也中断, 如何才能使调用的存储过程长时间不中断,因本人没有搞过搞.net这种开发,希望大神指点指点, 目前的代码大致是 按钮事件: Thread th1 = new Thread(executeprocedure()); Thread th2 = new Thread(executeprocedure()); thread1.start; thread2.start; 调用存储过程: executeprocedure() { ............ }
C# .net onclick事件中变量的值在onclick执行结束后为啥清零了?
定义了一个int型全局变量page_num,在onclick中赋值,onclick事件执行完以后page_num竟然自动清零了,这是为啥?我需要保存每个onclick中赋给page_num的值,再给别的onclick事件调用。谢谢
c#中Frame.Navigate方法调用
visual studio2013ultimate版有没有Frame.Navigate, 我在c#编写wp手机的跳转页面时,要用this.Frame.Navigate(typeof());方法, 但是就是不能调用,为什么,用的是framework4.5.1
微信摇一摇周边素材管理-上传图片素材接口 C#.Net实现方法
---------- http请求方式: POST(请使用https协议) https://api.weixin.qq.com/shakearound/material/add?access_token=ACCESS_TOKEN&type=TYPE POST数据格式:FORM表单 POST数据例子: 调用示例(使用curl命令,用FORM表单方式上传一个多媒体文件): curl -F “media=@IMAGE_NAME” "https://api.weixin.qq.com/shakearound/material/add?access_token=ACCESS_TOKEN&type=TYPE" ------------------- 文档中的 curl -F “media=@IMAGE_NAME” 怎么处理 用一般post上传图片方法,总是返回 错误代码 9001001 ------新手/(ㄒoㄒ)/~~ 求指教
相见恨晚的超实用网站
搞学习 知乎:www.zhihu.com 简答题:http://www.jiandati.com/ 网易公开课:https://open.163.com/ted/ 网易云课堂:https://study.163.com/ 中国大学MOOC:www.icourse163.org 网易云课堂:study.163.com 哔哩哔哩弹幕网:www.bilibili.com 我要自学网:www.51zxw
花了20分钟,给女朋友们写了一个web版群聊程序
参考博客 [1]https://www.byteslounge.com/tutorials/java-ee-html5-websocket-example
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
字节跳动视频编解码面经
引言 本文主要是记录一下面试字节跳动的经历。 三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
Python 基础(一):入门必备知识
目录1 标识符2 关键字3 引号4 编码5 输入输出6 缩进7 多行8 注释9 数据类型10 运算符10.1 常用运算符10.2 运算符优先级 1 标识符 标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。 以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx ,表示不能直接访问的类属性,需通过类提供
这30个CSS选择器,你必须熟记(上)
关注前端达人,与你共同进步CSS的魅力就是让我们前端工程师像设计师一样进行网页的设计,我们能轻而易举的改变颜色、布局、制作出漂亮的影音效果等等,我们只需要改几行代码,不需...
国产开源API网关项目进入Apache孵化器:APISIX
点击蓝色“程序猿DD”关注我回复“资源”获取独家整理的学习资料!近日,又有一个开源项目加入了这个Java开源界大名鼎鼎的Apache基金会,开始进行孵化器。项目名称:AP...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
编写Spring MVC控制器的14个技巧
本期目录 1.使用@Controller构造型 2.实现控制器接口 3.扩展AbstractController类 4.为处理程序方法指定URL映射 5.为处理程序方法指定HTTP请求方法 6.将请求参数映射到处理程序方法 7.返回模型和视图 8.将对象放入模型 9.处理程序方法中的重定向 10.处理表格提交和表格验证 11.处理文件上传 12.在控制器中自动装配业务类 ...
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
求小姐姐抠图竟遭白眼?痛定思痛,我决定用 Python 自力更生!
点击蓝色“Python空间”关注我丫加个“星标”,每天一起快乐的学习大家好,我是 Rocky0429,一个刚恰完午饭,正在用刷网页浪费生命的蒟蒻...一堆堆无聊八卦信息的网页内容慢慢使我的双眼模糊,一个哈欠打出了三斤老泪,就在此时我看到了一张图片:是谁!是谁把我女朋友的照片放出来的!awsl!太好看了叭...等等,那个背景上的一堆鬼画符是什么鬼?!真是看不下去!叔叔婶婶能忍,隔壁老王的三姨妈的四表...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
相关热词 c#处理浮点数 c# 生成字母数字随机数 c# 动态曲线 控件 c# oracle 开发 c#选择字体大小的控件 c# usb 批量传输 c#10进制转8进制 c#转base64 c# 科学计算 c#下拉列表获取串口
立即提问