有一个JSP页面 点击页面上的下载 按钮 把JSP页面的内容转化为PDF格式下载到本地 10C

有一个JSP页面 点击页面上的下载 按钮 把JSP页面的内容转化为PDF格式下载到本地

5个回答

你找一下如何使用java生成pdf文档的资料或视频,照着做就行,但是记得要把东西换成你jsp页面上的内容

qq_25288595
qq_25288595 回复showbo: 小弟新手上路,能来个详细的作答吗?C币全给 只为解决问题
4 年多之前 回复
showbo
支付宝加好友偷能量挖 回复qq_25288595: 你现在主要去了解java用那种类用来启动外部的进程
4 年多之前 回复
showbo
支付宝加好友偷能量挖 回复qq_25288595: 一样的额,jsp最后解析不就是html页面了
4 年多之前 回复
qq_25288595
qq_25288595 回复showbo: 我的是JSP页面,不是HTML 大哥帮帮小弟
4 年多之前 回复
showbo
支付宝加好友偷能量挖 回复qq_25288595: 可以试试wkhtmltopdf这个插件,你的jsp启动wkhtmltopdf转换就行。http://www.cnblogs.com/shanyou/archive/2012/09/07/2676026.html里有示例,不过是C#的,你改成java的,主要是启动wkhtmltopdf进程传递参数
4 年多之前 回复
qq_25288595
qq_25288595 有没有好的解决方案 求助!!!!
4 年多之前 回复
qq_25288595
qq_25288595 哥们。他们的我看了 但是不适用
4 年多之前 回复

http://bbs.csdn.net/topics/380175567?page=1

在你的Servlet里面写一下5楼说的代码(main方法里面的即可),记得导入相应的jar包,应该就可以了。,

qq_25288595
qq_25288595 回复dcxy0: 我的页面本身就是JSP页面,
4 年多之前 回复
dcxy0
Q544471255 回复qq_25288595: 如果内存溢出的话,你只能一部分一部分的读取,这样可以避免内存溢出
4 年多之前 回复
dcxy0
Q544471255 回复qq_25288595: 你这个不是html页面吗?改成jsp呢,复杂的是不是内存溢出了?
4 年多之前 回复
qq_25288595
qq_25288595 回复dcxy0: 经过测试简单页面可以.复杂一点的页面就会报错
4 年多之前 回复
qq_25288595
qq_25288595 小弟q972769321 坐等大哥 救助
4 年多之前 回复
qq_25288595
qq_25288595 ArrayList p = HTMLWorker.parseToList(new FileReader("example.html"), st); 在解析我自己的页面的时候报错
4 年多之前 回复
dcxy0
Q544471255 回复qq_25288595: 提示什么错误?
4 年多之前 回复
qq_25288595
qq_25288595 已经尝试了,有错误
4 年多之前 回复

你好,你的问题解决了吗?你是怎样实现将jsp页面转pdf的呢?

亲,解决了吗?我也在找这个方法

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
在一个jsp页面中,点击一个按钮,弹出另一个jsp页面
add.jsp:![图片说明](https://img-ask.csdn.net/upload/201507/23/1437636861_239649.jpg) select.jsp:![图片说明](https://img-ask.csdn.net/upload/201507/23/1437636901_138782.jpg) 如图,共有两个jsp页面,一个add.jsp select.jsp,在add.jsp上面有一个请选择按钮,点击请选择按钮后,弹出select.jsp页面,这个页面上是从数据库中遍历的企业,选中一条数据,点击确认,select.jsp页面关闭,并将结果带到add.jsp请选择前面的文本框里面。现在两个jsp页面我已经做好了,那么应该如何才能够得到想要的结果,action层是如何实现的?拜求解决。 好吧,继续昨天的问题: ![add.jsp](https://img-ask.csdn.net/upload/201507/24/1437720016_514705.jpg) ![select.jsp](https://img-ask.csdn.net/upload/201507/24/1437720015_192489.jpg) 应该如何将所选择的值带回到add.jsp推荐企业后的文本框中。 (add.jsp源码:<script type="text/javascript"> function closeYmtPage() { window.history.go(-1); } function findztype() { var idstr = $("#fwdl").val(); $.post("fw.do?action=findzType",{idstr:idstr},function(data){ var types=eval('(' + data + ')'); var typelist = types.typesList; $("#fwxl").empty(); $("#fwxl").append('<option value="">请选择</option>'); $.each(typelist, function (i, item) { var str ='<option value="'+item.id+'" title="'+item.name+'">'+item.name+'</option>'; $("#fwxl").append(str); }); }); } //推荐企业按钮 function openwindow(){ window.showModalDialog("/jxw/xq.do?action=showTjList",window, "status:no;scroll:yes; dialogWidth:400px;dialogHeight:400px"); } function addxm(flag){ $("#fbState").val(flag); var xqName =$("#xqName").val(); if(xqName =="") { alert("需求名称不能为空!"); return; } if($("#fwdl").val()=="" || $("#fwXl").val()==""){ alert("服务类别不能为空"); return; } $("#addForm").ajaxSubmit({ beforeSubmit : function() { $("#saveBtn").attr("disabled", true); }, success : function(data) { var start = data.indexOf(">"); if (start != -1) { var end = data.indexOf("<",start+1); if (end != -1) { data = data.substring(start+1, end); } } if (data == "ok") { alert("添加需求成功"); window.location.href='<c:url value="cartweb.do?action=loadFwxqPage&pageNo=1"/>'; } if (data == "error") { alert("添加需求失败"); } $("#saveBtn").attr("disabled", false); }, complete : function() { $("#saveBtn").attr("disabled", false); }, error : function() { $("#saveBtn").attr("disabled", false); alert("请求错误"); } }); } function checkfkfs(){ var fkfs=$("#fkfs").val(); if(fkfs=="2") { document.getElementById("price").disabled="disabled"; }else{ $("#price").removeAttr("disabled"); } } function addxqlc() { window.parent.document.getElementById("btnxqOk").click(); } </script> </head> <body> <div class="main_nav"> <div class="lb_nav" id="current_pageDiv" style="width: 100%"> <div class="lb_nav_tu">添加需求</div> <a href="javascript:void(0)" onclick="addxqlc()" style="float:right;font-size:16px;font-style:oblique;padding-right:20px">操作说明</a> </div> <form id="addForm" action="<c:url value='/xq.do?action=doAddxq'/>" method="post" id="addForm" name="addForm"> <input type="hidden" id="fbfs" name="fbfs" value="1" /> <table cellpadding="0" cellspacing="0" class="cx_table"> <tr> <th><b>*</b>需求名称:</th> <td height="25" align="left" bgcolor="#FFFFFF" colspan="3"><input type="text" id="xqName" name="xqName" value="" maxlength="50" /></td> </tr> <tr> <th><b>*</b>付款方式:</th> <td height="25" align="left" bgcolor="#FFFFFF"><select id="fkfs" name="fkfs" onchange="checkfkfs()"> <option value="1">具体价格</option> <option value="2">面议</option> </select></td> <th><b>*</b>预算价格(元):</th> <td height="25" align="left" bgcolor="#FFFFFF"><input type="text" id="price" name="price" value="" onkeyup="value=value.replace(/[^\d]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" /> </td> </tr> <tr> <th><b>*</b>服务所属大类:</th> <td height="25" align="left" bgcolor="#FFFFFF"><select name="fwdl" id="fwdl" class="select_field" onchange="findztype()"> <c:forEach items="${fwdl}" var="domain"> <option value="${domain.id }" title="${domain.name }"> ${domain.name }</option> </c:forEach> </select></td> <th><b>*</b>服务所属小类:</th> <td height="25" align="left" colspan="3" bgcolor="#FFFFFF"><select name="fwxl" id="fwxl" class="select_field"> <c:forEach items="${fwxl}" var="domain"> <option value="${domain.id }" title="${domain.name }"> ${domain.name }</option> </c:forEach> </select></td> </tr> <tr> <th><b>*</b>需求内容:</th> <td height="25" align="left" colspan="3" bgcolor="#FFFFFF"><script type="text/plain" id="myEditor" name="contents"></script> <script type="text/javascript"> var Editor= new UE.ui.Editor({initialFrameWidth:'600',initialFrameHeight:'200',toolbars:[['fullscreen', 'undo', 'redo', '|', 'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'superscript', 'subscript', 'removeformat', 'formatmatch', 'autotypeset', 'blockquote', 'pasteplain', '|', 'forecolor', 'backcolor', 'insertorderedlist', 'insertunorderedlist', 'selectall', 'cleardoc', '|', 'rowspacingtop', 'rowspacingbottom', 'lineheight', '|', 'customstyle', 'paragraph', 'fontfamily', 'fontsize', '|', 'directionalityltr', 'directionalityrtl', 'indent', '|', 'justifyleft', 'justifycenter', 'justifyright', 'justifyjustify', '|', 'touppercase', 'tolowercase', '|', 'link', 'unlink', 'anchor', '|', 'imagenone', 'imageleft', 'imageright', 'imagecenter', '|', 'insertimage', 'emotion', 'insertvideo', 'music', 'attachment', 'map', 'gmap', 'insertframe','pagebreak', 'template', 'background', '|', 'horizontal', 'date', 'time', 'spechars', 'snapscreen', 'wordimage', '|', 'inserttable', 'deletetable', 'insertparagraphbeforetable', 'insertrow', 'deleterow', 'insertcol', 'deletecol', 'mergecells', 'mergeright', 'mergedown', 'splittocells', 'splittorows', 'splittocols', '|', 'print', 'preview', 'searchreplace', 'help']] ,elementPathEnabled : false}); Editor.render('myEditor'); </script></td> </tr> <tr> <th><b>*</b>推荐企业:</th> <td height="25" align="left" bgcolor="#FFFFFF" colspan="3"><textarea readonly="readonly" class="cl_textarea_small" name="xqName" id="xqName" width="100"></textarea> <input type=button name=inputboxbt value=请选择 onclick="openwindow();"></td> </tr> </table> <div class="btn_nav_dk"> <input type="hidden" value="" id="fbState" name="fbState" /> <input type="button" value="保 存" id="saveBtn" class="btn_bg" onclick="addxm('1');" /> <input type="reset" value="重 置" class="btn_bg" /> <input type="button" value="返 回" class="btn_bg" onclick="closeYmtPage();" /> </div> </form> </div> </body>) (select.jsp源码:<script type="text/javascript"> function bconfirm(){ dialogArguments.addNameform.inboxname.value=document.form1.inboxname.value; dialogArguments.opensub(); window.close(); } function bcancel(){ window.close(); } //将值传给text文本框 function result(form) { var a = document.getElementById("inboxname"); a.value = ""; for (var i = 0; i < form.elements.length; i++) { var e = form.elements[i]; if (e.name == "ifCheck" && e.checked == true) { a.value = a.value + e.value + "," } } } </script> </head> <body> <div class="content clr fl"> <div class="posit"> <h2> <ul> <li>当前位置:</li> <li>添加需求->推荐企业选择-<span>&gt;</span></li> </ul> </h2> </div> <div class="main"> <!--检索区域开始 -- <!--检索区域结束 --> <!--按钮区域开始 --> <div class="btm_list"> <h3>请选择企业:</h3> <div class="op_btn"></div> <!--按钮区域结束 --> <div class="form"> <form method=post name=form action=" /xq.do?action=doAddxq"> <input id="inboxname" type="hidden" name="inboxname" value="" /> <!-- <textarea readonly="readonly" class="cl_textarea_small" name="inboxname" id="inboxname" type="hidden" value=""></textarea><p>--> <input type=button name=inputboxbt value=确定 onclick="bconfirm();"> <input type=button name=inputboxbs value=关闭 onclick="bcancel();"> <table> <tr> <th style="width: 5%;"><input type="checkbox" onclick="checkOrCancel(this);" class="textCursor" /> </th> <th>序号</th> <th>企业名称</th> </tr> <c:forEach items="${domain}" var="domain1" varStatus="status"> <tr <c:if test="${status.count%2 == 0 }">class="grid_dark"</c:if> <c:if test="${status.count%2 == 1 }">class="grid_dark"</c:if> id="${domain1.id }"> <td><input type="checkbox" value="${domain1.id }" name="ifCheck" style="cursor: pointer;" id="ifCheck" onClick="result(this.form)" /> <input id="qymc.id" type="hidden" name="qymc.id" value="" /></td> <td>${status.count }</td> <td>${domain1.qymc }</td> </tr> </c:forEach> </table> </form> </div> </div> </div> </div> </body>)
在jsp页面点击按钮执行一个java方法,下面提出详细问题
刚接触jsp,我想通过点击一个按钮来调用一个java方法。我没有用其他框架,现在只用了jsp和Java。我想要通过这个方法来修改数据库,然后刷新页面,将修改后的数据显示出来。有老司机说一下,完成这个功能需要的思路和步骤吗,最好能百度到。
frameset框架,点击一个页面的返回按钮,另一页面的显示内容要跟着返回显示上级的信息。
我的frameset分为top.jsp、left.jsp、mainFarme.jsp. 我在top.jsp页面有一个按钮 ``` <li id="bk"><a href="javascript:history.go(-1)"><span>返&nbsp;&nbsp;回</span></a></li> ``` 然后left.jsp有一个标题的显示。我想点击top.jsp的返回按钮时,left.jsp的表现显示回他上级的标题。 比如:我点了”用户“,left.jsp显示”用户“,点了”管理“,left.jsp显示”管理“,然后我在管理层点返回,left.jsp显示用户。 先谢谢大家的不吝赐教!谢谢。
如何用jsp页面调用客户端的EXE文件
需求是这样的:jsp页面上有一个按钮,当点击按钮后会调用一个客户端的EXE文件, 特别说明:是调用用户的客户端的EXE文件,而不是调用服务器端的exe
jsp怎样实现用按钮触发一个action,同时弹出一个小窗,将action查询的数据显示到小窗上
jsp页面上有一个按钮,按一下会弹出一个小窗口,同时触发一个action,在后台查询数据后再传到本页面弹出的小窗口上。怎么实现这样的功能呢。 我打算修改用户的密码,点击一下修改 ,会将用户的信息查询出来 显示在本页面的一个弹出窗口上,让用户修改后点击保存
JSP和Java的Action结合下载文件以后返回jsp页面,能把页面上文件的下载量更新一下吗?
这边是一个下载按钮,直接下载服务器上的一个pdf格式的文件,下载以后数据库里面的下载量会增加。但是页面上显示的下载量没有增加,有没有办法让后台在文件下载完成以后给前台返回一个信息,然后前台根据信息去刷新页面? 注释:用异步请求肯定是不行的,因为用Ajax异步请求的话,文件不能下载! 求高手指点!不好意思!刚注册的用户还没有搞明白我们这边的C币是怎么来的!希望高手不要介意!
在jsp页面中,当url地址改变时弹出一个对话框
在一个jsp页面中有一些按钮,这些按钮可以跳到其他页面,在对这个页面执行一系列方法之后,我需要在点击该页面任何一个按钮之前都弹出一个提示框,提示是否保存本次修改。我不要在每个按钮对于的jsp页面分别判断,我需要在本页面上直接判断,当地址栏变化时则弹出保存框。请问大神有什么思路可以让我实现。
jsp页面中怎么实现只要一个按钮就能完成添加和修改两个功能?
第一次进入页面时,由于数据库没有数据,所以在表单里填写完数据后, 点击保存按钮,就可以调用后台的插入方法将数据都插入进数据库,那么 当同一个用户再次进入页面时,由于已经有数据了,页面上的表单里也把 数据显示了出来,那么如果用户修改了表单里的某些数据后,再点击保存 按钮时,怎么才能不调用后台的插入方法,而是调用更新方法来修改数据呢? 必须要在同一个按钮实现,不能添加一个新的修改按钮。
jsp页面中有一个插入行的功能,如何将新插入的行在原来所有行的最上一行显示
jsp页面中有一个 插入行的按钮和删除行的按钮,当新插入行时,如何将新插入的行在所有行的最上行显示,现在做的效果是:新插入的行在所有行的最下行显示
ExtJS按钮传参到JSP页面中默认执行JS函数
ExtJS 界面有一个打印按钮,点击打印按钮传个参数param1到JSP页面中,然后在执行一个fn函数,执行打印过程,这块应该如何写呢,请大家给个思路
关于JSP页面内嵌(显示)JSP的问题
我有一个JSPa,该JSP是主要JSP页面。 还有一个JSPb,该JSP是用来绘制图形的,比如画一个圆。。。 我在JSPa中点击了绘图按钮,并且传递部分数据到servlet中去,通过servlet处理后 再传递到JSPb中,绘制出一个图形。 然而这个时候,我想将JSPb绘制的图形显示在JSPa中。 有一个原始的方法,就是将JSPb中的绘图代码全部放在JSPa中,检测过是可行的。 不过因为目前的绘图代码量过大,而且在JSPa页面上有很多的逻辑部分,各种请求很多一不留神就崩溃。想用一种简洁的方式。 PS:在不使用框架的情况下。 各位工程师有没有什么靠谱的方法,满足上面的需求。
jsp:怎么实现点击下载按钮直接下载文件而不是在浏览器中直接打开
点击按钮下载的时候会有一个弹出框,可以选择是打开还是下载,请大神们给出一个代码实例
一个页面两个按钮触发的同一个弹框
问题: 一个jsp页面两个按钮触发的不同事件,打开一个弹框,但弹框里加载的是同一个页面,页面里内容是 datagrid也就是表格,为什么先点击按钮打开哪个弹框哪个表格有数据, 后打开的就没数据, 解决办法: 解决办法是写了两个事件,触发的内容一样,每个弹框在关闭时, 打开自己后,移除弹框,在加上弹框, 想知道: 不明白为什么会出现以上问题? 新手求解?希望详细点
在需要许多不同jsp页面反馈后台数据处理的错误信息的时候,如何只做一个error.jsp页面?
如题所示,本人现在在写一个结构比较简单的基于Jsp/Servlet的web系统。 不同jsp页面反馈后台数据处理的错误时候,如何只做一个error.jsp页面然后根据各个servlet情况显示错误信息? 比如在许多Servlet中,举一个例子: ``` //前略 if(MainDAO.createAssess(credit,usertype,ordersID,orderstype)>-1){ response.sendRedirect("/carpool/CreateAssessSuccess.jsp"); }else{ response.sendRedirect("/carpool/CreateAssessFailure.jsp"); System.out.println("创建评价失败!可能订单已被删除!"); } //后略 ``` 类似这种的Servlet还有很多,然后那些个xxxxSuccess.jsp和 xxxxFailure.jsp其实都是很简单的jsp页面,比如 ``` <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link href="/carpool/css/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet"> <link href="/carpool/css/flat-ui.min.css" rel="stylesheet"> <title>取消订单失败</title> </head> <body> <br/><br/> <center> <h3>取消订单失败!可能对方已经先你一步取消订单或已被管理员删除!</h3> <a href="/carpool/index.jsp"><b><u>返回主页</u></b></a> </center> </body> </html> ``` 所以能不能在Servlet怎样设置一下比如一个错误信息,然后传到同一个error.jsp里显示出来? 最近才接触前端脚本所以不太会,找了一下好像也都是说传参数(?但是好像重定向到error页面并不能传参数)。或者大多数解决方法是在后台里写 ``` public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { test1(response); } private void test1(HttpServletResponse response) throws IOException, UnsupportedEncodingException { response.setHeader("content-type", "text/html;charset=UTF-8"); String data = "发起订单失败!"; OutputStream os = response.getOutputStream(); os.write(data.getBytes("UTF-8")); } ``` 然后再用js写一行一行syso(<……>)来实现返回上一页按钮之类的。。但这样的话还不如一次复制一个jsp页面然后修改一行数据来得实在。。。所以有没有大神能教教我能不能如题那样实现。
在jsp页面,点击一个按钮,出现一个选择地址的弹出框,然后吧选择的地址传到后台
我在写Excel导出,功能已经实现了,但是我把那个存储位置给写死了,现在我想让页面弹出一个选择框 让用户自己选择地址。 我用的mvc框架,我不太明白这个弹出框怎么写的,是写前台还是 后台,还有网上说设置的一个头信息,我也不是很明白,不知道这个头信息写在哪 有牛人最好给我说的详细点! 最后贴个代码
Jsp页面跳转后,往回传值问题
各位大神好,我想请问一下, 我有两个JSP页面A和B A 里面有3个TAB页,点击任何一个TAB页就会隐藏其他两个的内容,并动态生成当前TAB页的内容。 默认是在TAB1上,进来就加载内容。 B 是点击TAB2里面的一个按钮之后跳转到的页面。 那么问题来了,我在B里面选择一个选项,如何将这个参数传回A呢? 我目前用的是window.location.href = " A.jsp? 参数=xxx " ; 但是问题是回到A页面的时候,默认是在TAB1上,而不是我点击按钮时的TAB2 我也试了 window.location.href = "A.jsp # TAB2 ? 参数= xxx "; 还是不行 请教大神,该怎么做呢?
求大神帮助。jsp点击按钮显示当前数据到新页面中
jsp从Servlet中获得了一个List,在页面中遍历显示出来,每条记录后面有一个修改按钮,点击修改按钮可以显示这条记录在弹出的页面中。如图 ![图片说明](https://img-ask.csdn.net/upload/201610/04/1475575855_787409.png) ![图片说明](https://img-ask.csdn.net/upload/201610/04/1475575868_506032.png) jsp页面部分代码如下: ``` <div class="showBox"> <table> <tr> <th>编号</th> <th>姓名</th> <th>性别</th> <th>工资</th> <th>职位</th> <th>学历</th> <th>部门</th> <th>入职日期</th> <th>操作</th> </tr> <c:forEach items="${sessionScope.pageBean.beanList}" var="list"> <tr> <td> <div><input type="checkbox" name="checkNum"/></div> ${list.em_id }</td> <td>${list.em_name }</td> <td>${list.em_gender }</td> <td>${list.em_salary }</td> <td>${list.em_position }</td> <td>${list.em_degree }</td> <td>${list.em_department }</td> <td>${list.date }</td> <td><img src="<%=basePath%>/img/delete.png"><a href="javascript:void(0);" onclick="DeleteEmployee()" class="delBox">删除</a> <a href="javascript:void(0);" onclick="ShowUpdateBox()" class="updBox"><img src="<%=basePath%>/img/update.png" />修改</a></td> </tr> </c:forEach> </table> </div> ```
jsp页面如何通过导航栏按钮实现对 iframe标签所嵌入网页的控制
最近用到了iframe标签,但我只会直接嵌入一个静态的页面啊,就像这样: ``` <iframe src="http://www.baidu.com" height="400" width="700" frameborder="0"></ifrmae> ``` 如果我想通过导航栏的按钮来控制ifame所嵌入的内容,应该怎样做? 我知道导航栏按钮那里有个 a href=XXXX iframe这里有个 src=XXXXX,如何建立它们之间的对应关系?
关于jsp跳转的问题,能不跳转么?
我现在有一个界面,上面有一个按钮,点击这个按钮,会请求一个jsp,这个jsp页面会向后台发送自己页面的代码,保存到数据库。现在的问题是我不想弹出浏览器出现jsp页面,而是点击按钮后,请求后的页面直接保存到数据库。![图片说明](http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/4.gif)
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
Linux(服务器编程):15---两种高效的事件处理模式(reactor模式、proactor模式)
前言 同步I/O模型通常用于实现Reactor模式 异步I/O模型则用于实现Proactor模式 最后我们会使用同步I/O方式模拟出Proactor模式 一、Reactor模式 Reactor模式特点 它要求主线程(I/O处理单元)只负责监听文件描述符上是否有事件发生,有的话就立即将时间通知工作线程(逻辑单元)。除此之外,主线程不做任何其他实质性的工作 读写数据,接受新的连接,以及处...
为什么要学数据结构?
一、前言 在可视化化程序设计的今天,借助于集成开发环境可以很快地生成程序,程序设计不再是计算机专业人员的专利。很多人认为,只要掌握几种开发工具就可以成为编程高手,其实,这是一种误解。要想成为一个专业的开发人员,至少需要以下三个条件: 1) 能够熟练地选择和设计各种数据结构和算法 2) 至少要能够熟练地掌握一门程序设计语言 3) 熟知所涉及的相关应用领域的知识 其中,后两个条件比较容易实现,而第一个...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n
进程通信方式总结与盘点
​ 进程通信是指进程之间的信息交换。这里需要和进程同步做一下区分,进程同步控制多个进程按一定顺序执行,进程通信是一种手段,而进程同步是目标。从某方面来讲,进程通信可以解决进程同步问题。 ​ 首先回顾下我们前面博文中讲到的信号量机制,为了实现进程的互斥与同步,需要在进程间交换一定的信息,因此信号量机制也可以被归为进程通信的一种方式,但是也被称为低级进程通信,主要原因为: 效率低:一次只可操作少量的...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观
听说了吗?阿里双11作战室竟1根网线都没有
双11不光是购物狂欢节,更是对技术的一次“大考”,对于阿里巴巴企业内部运营的基础保障技术而言,亦是如此。 回溯双11历史,这背后也经历过“小米加步枪”的阶段:作战室从随处是网线,交换机放地上的“一地狼藉”;到如今媲美5G的wifi网速,到现场却看不到一根网线;从当年使用商用AP(无线路由器),让光明顶双11当天断网一分钟,到全部使用阿里自研AP……阿里巴巴企业智能事业部工程师们提供的基础保障...
在阿里,40岁的奋斗姿势
在阿里,40岁的奋斗姿势 在阿里,什么样的年纪可以称为老呢?35岁? 在云网络,有这样一群人,他们的平均年龄接近40,却刚刚开辟职业生涯的第二战场。 他们的奋斗姿势是什么样的呢? 洛神赋 “翩若惊鸿,婉若游龙。荣曜秋菊,华茂春松。髣髴兮若轻云之蔽月,飘飖兮若流风之回雪。远而望之,皎若太阳升朝霞;迫而察之,灼若芙蕖出渌波。” 爱洛神,爱阿里云 2018年,阿里云网络产品部门启动洛神2.0升...
关于研发效能提升的思考
研发效能提升是最近比较热门的一个话题,本人根据这几年的工作心得,做了一些思考总结,由于个人深度有限,暂且抛转引入。 三要素 任何生产力的提升都离不开这三个因素:人、流程和工具,少了其中任何一个因素都无法实现。 人,即思想,也就是古人说的“道”,道不同不相为谋,是制高点,也是高层建筑的基石。 流程,即方法,也是古人说的“法”。研发效能的提升,也就是要提高投入产出比,既要增加产出,也要减...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://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
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆  每天早上8:30推送 作者| Mr.K   编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯
程序员该看的几部电影
##1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?
入职阿里5年,他如何破解“技术债”?
简介: 作者 | 都铎 作为一名技术人,你常常会听到这样的话: “先快速上线” “没时间改” “再缓一缓吧” “以后再解决” “先用临时方案处理” …… 当你埋下的坑越来越多,不知道哪天哪位同学就会踩上一颗雷。特别赞同“人最大的恐惧就是未知,当技术债可说不可见的时候,才是最让人不想解决的时候。” 作为一个程序员,我们反对复制粘贴,但是我们经常会见到相似的代码,相同的二方包,甚至整个代码...
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分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布了 2019年国民经济报告 ,报告中指出:年末中国大陆总人口(包括31个
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
2020年的1月,我辞掉了我的第一份工作
其实,这篇文章,我应该早点写的,毕竟现在已经2月份了。不过一些其它原因,或者是我的惰性、还有一些迷茫的念头,让自己迟迟没有试着写一点东西,记录下,或者说是总结下自己前3年的工作上的经历、学习的过程。 我自己知道的,在写自己的博客方面,我的文笔很一般,非技术类的文章不想去写;另外我又是一个还比较热衷于技术的人,而平常复杂一点的东西,如果想写文章写的清楚点,是需要足够...
别低估自己的直觉,也别高估自己的智商
所有群全部吵翻天,朋友圈全部沦陷,公众号疯狂转发。这两周没怎么发原创,只发新闻,可能有人注意到了。我不是懒,是文章写了却没发,因为大家的关注力始终在这次的疫情上面,发了也没人看。当然,我...
Java坑人面试题系列: 包装类(中级难度)
Java Magazine上面有一个专门坑人的面试题系列: https://blogs.oracle.com/javamagazine/quiz-2。 这些问题的设计宗旨,主要是测试面试者对Java语言的了解程度,而不是为了用弯弯绕绕的手段把面试者搞蒙。 如果你看过往期的问题,就会发现每一个都不简单。 这些试题模拟了认证考试中的一些难题。 而 “中级(intermediate)” 和 “高级(ad
深度学习入门笔记(十八):卷积神经网络(一)
欢迎关注WX公众号:【程序员管小亮】 专栏——深度学习入门笔记 声明 1)该文章整理自网上的大牛和机器学习专家无私奉献的资料,具体引用的资料请看参考文献。 2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除。 3)博主才疏学浅,文中如有不当之处,请各位指出,共同进步,谢谢。 4)此属于第一版本,若有错误,还需继续修正与...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
节后首个工作日,企业们集体开晨会让钉钉挂了
By 超神经场景描述:昨天 2 月 3 日,是大部分城市号召远程工作的第一天,全国有接近 2 亿人在家开始远程办公,钉钉上也有超过 1000 万家企业活跃起来。关键词:十一出行 人脸...
Java基础知识点梳理
Java基础知识点梳理 摘要: 虽然已经在实际工作中经常与java打交道,但是一直没系统地对java这门语言进行梳理和总结,掌握的知识也比较零散。恰好利用这段时间重新认识下java,并对一些常见的语法和知识点做个总结与回顾,一方面为了加深印象,方便后面查阅,一方面为了学好java打下基础。 Java简介 java语言于1995年正式推出,最开始被命名为Oak语言,由James Gosling(詹姆
2020年全新Java学习路线图,含配套视频,学完即为中级Java程序员!!
新的一年来临,突如其来的疫情打破了平静的生活! 在家的你是否很无聊,如果无聊就来学习吧! 世上只有一种投资只赚不赔,那就是学习!!! 传智播客于2020年升级了Java学习线路图,硬核升级,免费放送! 学完你就是中级程序员,能更快一步找到工作! 一、Java基础 JavaSE基础是Java中级程序员的起点,是帮助你从小白到懂得编程的必经之路。 在Java基础板块中有6个子模块的学
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合
你也能看懂的:蒙特卡罗方法
蒙特卡罗方法,也称统计模拟方法,是1940年代中期由于科学技术的发展和电子计算机的发明,而提出的一种以概率统计理论为指导的数值计算方法。是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法 蒙特卡罗方法可以粗略地分成两类:一类是所求解的问题本身具有内在的随机性,借助计算机的运算能力可以直接模拟这种随机的过程。另一种类型是所求解问题可以转化为某种随机分布的特征数,比如随机事件出现的概率,或...
相关热词 c# 为空 判断 委托 c#记事本颜色 c# 系统默认声音 js中调用c#方法参数 c#引入dll文件报错 c#根据名称实例化 c#从邮件服务器获取邮件 c# 保存文件夹 c#代码打包引用 c# 压缩效率
立即提问