数据库中有10万条记录,list中有5万条,怎样不通过for循环找出相同的数据?

java 中 。数据库中有10万条记录 list中有5万条 ,怎样不通过for循环,找出数据库和list中相同的数据?

2个回答

其实如果你只是找出相同的数据,你可以直接用SQL接可以了!我写一个SQL语句

select count(*),colName from tableName t group by colName having count(*) > 1;

其中colName 表示你的字段名(记得 group by中一致)
tableName 为你的表名

这样就可以找出相同的数据,也就是相同的个数
望采纳

list中的数据批量导入临时表,跟那10W条数据对比,对比完一批删一批,得出相同数据插入另一张临时表,

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
数据库满足条件的有多个值,list遍历出来却只拿到一条记录,这是什么情况 各位大神
数据库查询到的值 ![图片说明](https://img-ask.csdn.net/upload/201912/23/1577073294_440579.png) 遍历却才能到一个值 ![图片说明](https://img-ask.csdn.net/upload/201912/23/1577073426_832985.jpg) List logsId =null;//获取ATTR表记录条件为"是"的ID if (isUrgencyOf==true){ DiaDispatchingLogsAttrExample attrExample = new DiaDispatchingLogsAttrExample(); List<DiaDispatchingLogsAttr> attrList = diaDispatchingLogsAttrMapper.selectByExample(attrExample); for (DiaDispatchingLogsAttr listAttr:attrList){ if (listAttr.getAttrValue()!=null && listAttr.getAttrKey().equals("isUrgencyOf") && listAttr.getAttrValue().equals("是")){ logsId = Collections.singletonList(listAttr.getLogsId()); } } } Map<String, List<DiaDispatchingLogs>> keywordMap = new HashMap<>(); // 按关键字将记录组合成Map对象 Map<String, String> timeMap = new HashMap<>(); // 查询未完成记录的关键字 DiaDispatchingLogsExample diaDispatchingLogsExample = new DiaDispatchingLogsExample(); DiaDispatchingLogsExample.Criteria criteria = diaDispatchingLogsExample.createCriteria(); criteria.andDispatchAreaIdEqualTo(dispatchAreaId).andDispatchTypeEqualTo(dispatchType); if (isUrgencyOf) {//简化判断isUrgencyOf是否为true criteria.andLogIdIn(logsId); } ``` ```
怎么判断当前取出的数据是数据库相应的表中的最后一条
是这样的,我有一个jsp界面, ``` setInterval(function (){ $.post(url,data,function() { do something }); },2000); ``` 这段代码主要是每隔两秒就像Struts2的action发出一次请求,从而获取数据库中的数据。 第一次获取数据库第一条记录的数据,第二次第二条,以此类推。假设我现在数据库有N条数据,我希望定时器获取了N次信息之后把定时器清除,要怎么做?数据库操作采用的是hibernate。(ps:不想每次都select count(*) 这样可以做到么)下面来个郁闷的测试代码。main函数如下: ``` String properties[]={"sensorInputDataID","value","valueType"}; List<Object[]> list=baceDao.getSpecifiedRanges(SensorInputData.class, properties,"201","1"); for(Object[] obj:list) { System.out.println("id="+obj[0].toString()+", value="+obj[1].toString()+",valueType="+obj[2].toString()); } if(list==null) { System.out.println("null"); } ``` 其中bacedao的getSpecifiedRanges代码如下 ``` public List<Object[]> getSpecifiedRanges(Class<? extends Object> table,String[] properties,String startIndex,String rowCount) { int propertysLength= properties.length; String hql="select "; for(int i=0;i<propertysLength-1;i++) { hql+=properties[i]+","; } hql+=properties[propertysLength-1]+" from "+table.getSimpleName(); System.out.println(hql); List<Object[]> result=sessionFactory.getCurrentSession().createQuery(hql).setFirstResult(Integer.parseInt(startIndex)).setMaxResults(Integer.parseInt(rowCount)).list(); return result; } ``` 执行之后,后台信息如下(我数据库只有200条记录): ![图片说明](https://img-ask.csdn.net/upload/201506/03/1433322463_526337.png) 好像都没有比较好的方案。我本来是想在数据库取到N+1条的时候,报错,然后抓取这个错误来解决的。可惜后台根本不报错。 我现在的方案是,开始的时候查一次数据库的count(*),并将其赋给变量rowCount。当前记录为index,第一次取数据,index为1,第二次为2以此类推。当index==rowCount的时候,再查一次count(*),若此时rowCount>index,则定时器继续执行,迭代上述步骤。否则清除定时器。
用hibernate等实现:从一数据库复制一条记录,然后修改该记录的某一列,再插入原数据库
目前该功能(简称copyinsert)可以在mysql数据库里用sql语句实现,我想用hibernate实现,大部分都已经完成,感觉在dao层有一些错误,希望大佬帮忙解惑,能够解决者,还可以另外给C币。 例子如下:(ID为自增,非数据库定义内容) ![图片说明](https://img-ask.csdn.net/upload/201808/22/1534872743_640656.png) 数据库原来有三条记录,然后在mysql中输入查询语句: INSERT INTO t_test(NO,NAME,SEX) SELECT REPLACE (NO,'XS1','XS4'),NAME,SEX FROM t_test WHERE NO='XS1'; ![图片说明](https://img-ask.csdn.net/upload/201808/22/1534872784_814889.png) 可以成功在mysql数据库中实现,结果如下: ![图片说明](https://img-ask.csdn.net/upload/201808/22/1534872803_898787.png) (从上面看,在数据库中直接操作是可以的,但是我想用框架实现)我用了hibernate,struts2,Jeasyui框架(基本都不熟练),目前能确定的是dao层的拼接的sql语句是正确的,但是不能实现插入数据库的功能。 系统主界面如下: ![图片说明](https://img-ask.csdn.net/upload/201808/22/1534873318_873663.png) 点击datagrids上面的“复制并插入“按钮,期望实现**复制某一条信息,修改其中一列后再插入数据库中**(例子是,复制XS1信息,将XS1修改为XS99后,再插入原数据库)。主界面jsp关键代码如下: //1."复制并插入信息"按钮作用 $("#deriveBtn").click(function(){ var no1="XS1"; var no2="XS99"; $.post("test_copyinsert.action",{"no1":no1,"no2":no2},function(data){ if(data.success){ //刷新datagrid $("#list").datagrid("load"); //提示 $.messager.show({ title:"提示", msg:"insertcopy成功" }); }else{ $.messager.alert("提示","检索失败:"+data.msg,"error"); } },"json"); }); }); 下面是TestAction部分代码(主要体现copyinsert): package test.action; //copyinsert实现 private String no1; public void setNo1(String no1) {//普通属性驱动,提供set方法进行接收 this.no1 = no1; } private String no2; public void setNo2(String no2) {//普通属性驱动,提供set方法进行接收 this.no2 = no2; } public void copyinsert(){ service.copyinsert(no1,no2); } } 下面是TestServiceImpl部分代码(主要体现copyinsert): package test.service.impl; @Override public void copyinsert(String no1, String no2){ dao.copyinsert(no1,no2); } } 下面是TestDaoImpl部分主要代码(主要体现copyinsert功能): @Override public void copyinsert(String no1, String no2) { // 获取Session Session session = HibernateUtils.getSession(); try { Transaction tx = session.beginTransaction(); String sql="INSERT INTO t_test (NO,NAME,SEX) SELECT REPLACE (NO,"+"'"+no1+"'"+","+"'"+no2+"'"+"),NAME,SEX FROM t_test WHERE NO="+"'"+no1+"'"+";"; SQLQuery sqlQuery = session.createSQLQuery(sql); List list=sqlQuery.list();//就是这一行!!!!! tx.commit(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); } finally { // 释放session session.close(); } 其中,在上述TestDaoImpl代码中,我不太清楚“List list=sqlQuery.list();”的作用,但是如果没有添加这一行代码,运行程序(即点击主界面“复制并插入”按钮)后,数据库没有插入值,myeclipse的Console也没有输出任何新的查询语句; 当在上述TestDaoImpl代码中添加“List list = sqlQuery.list(); ”这一行代码后,再点击按钮运行,数据库仍然没有插入值,但是Console输出了查询语句,但是紧接着会报错,mysql数据库也没有成功插进数据,如图: ![图片说明](https://img-ask.csdn.net/upload/201808/22/1534873763_176501.png) ![图片说明](https://img-ask.csdn.net/upload/201808/22/1534873821_414105.png)
为什么数据库中有多条数据,单只能取出一条
正在做一个web练手项目,使用mysql数据库,和tomcat的连接池。在连接数据库读取数据时,数据库中有多条记录,但却只能取出一条,而直接使用navicat for mysql直接运行查询语句却能读取出所有数据,求指教啊。 :cry: 代码如下: [code="java"] public List<Article> findAll(){ List<Article> result = new ArrayList<Article>(); Connection conn = null; PreparedStatement pStatement = null; ResultSet rSet = null; try { //DBUtil:定义好了的连接数据库的工具类, conn = DBUtil.getConnection(); pStatement = conn.prepareStatement("select * from article order by create_dt desc"); Article article = null; rSet = pStatement.executeQuery(); if (rSet.next()) { article = new Article(); article.setId(rSet.getInt("id"));//读取数据相关操作 article.setTitle(rSet.getString("title")); System.out.println("add one article");//程序运行时只打印了一次 result.add(article); } return result; } catch (Exception e) { e.printStackTrace(); } finally { //关闭连接相关操作 DBUtil.closeResultSet(rSet); DBUtil.closePreparedStatement(pStatement); DBUtil.closeConnection(conn); } return null; } [/code]
JAVA WEB开发从数据库中查询到的数据用list怎么在JSP页面整齐的显示出来,请写代码,谢谢
JAVA WEB开发从数据库中查询到的数据用list怎么在JSP页面整齐的显示出来,请写代码,谢谢
list中有一批数据,每次取10笔出来处理
public static void main(String[] args) { List<Object> list = new ArrayList<Object>(); for (int i = 0; i < 13; i++) { list.add(i); } System.out.println(list); int init = 10;// 每隔1000条循环一次 int total = list.size(); int cycelTotal = total / init; if (total % init != 0) { cycelTotal += 1; if (total < init) { init = list.size(); } } System.out.println("循环保存的次数:"+cycelTotal);//循环多少次 List list2 = new ArrayList(); for (int i = 0; i < cycelTotal; i++) { for (int j = 0; j < init; j++) { if (list.get(j) == null) { break; } list2.add(list.get(j)); } System.out.println("保存1000条数据到数据库...."); System.out.println(list2);//每次循环保存的数据输出 //接下来写保存数据库方法 //............. list.removeAll(list2);//移出已经保存过的数据 list2.clear();//移出当前保存的数据 } } [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] 结果: 循环保存的次数:2 保存1000条数据到数据库.... [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 异常: Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 3, Size: 3
如何快速高效判断list<String> 中是否有重复数据
list<String> 数据必须唯一,数据库没有做限制,必须查询数据库, 检查需要插入的数据是否已经存在,同时必须保证插入的数据不能有重复, 所有的数据,都成功插入之后才commit; 因为我是先检查数据的正确性,以及数据拼接的,已经2次使用了单层for循环, 不想再次来一个双层循环, 此时就需要一个快速判断list<String> 中是否有重复数据的方法,
数据库中所有字段都有值,查询后返回的java对象部分属性却为null?
刚开始是set和get方法中的变量名与MySQL数据库字段不一样,打印时一直为null, 将变量名修改成数据库字段一样就好了。不知道为什么,请大佬解答 代码有点多 我贴点重要的 ``` //查询功能实现 public static void Query() throws SQLException { List<Account> accounts=as.query(); if(!accounts.isEmpty()){ //遍历集合 System.out.println("账目编号\t账目描述\t消费价格\t消费日期"); for(Account account:accounts){ System.out.println(account.getAccount_id()+"\t"+account.getAccount_desc()+"\t"+account.getAccount_price()+"\t"+account.getAccount_date()); } } } ``` ``` 就是修改的下面private的4个变量,之前是 String a_id;String a_desc;String a_price;String a_date; public class Account { private String account_id; private String account_desc; private String account_price; private String account_date; public String getAccount_id() { return account_id; } public void setAccount_id(String account_id) { this.account_id = account_id; } public String getAccount_desc() { return account_desc; } public void setAccount_desc(String account_desc) { this.account_desc = account_desc; } public String getAccount_price() { return account_price; } public void setAccount_price(String account_price) { this.account_price = account_price; } public String getAccount_date() { return account_date; } public void setAccount_date(String account_date) { this.account_date = account_date; } } ``` 下面是操作数据库的代码 ``` public class AccountService { BaseDao sd=new BaseDao(); public List<Account> query() throws SQLException { QueryRunner qr=new QueryRunner(); String sql="select * from account"; Object[] params={}; List<Account> list=qr.query(this.sd.getConnection(),sql, new BeanListHandler<Account>(Account.class)); return list; } ``` 下面是数据库的设计和数据 ![图片说明](https://img-ask.csdn.net/upload/202001/17/1579230436_506183.png) ![图片说明](https://img-ask.csdn.net/upload/202001/17/1579230450_227715.png)
循环查询数据库500次和用双层for循环进行25w次轮循哪个效率更高
有两张表A、B。 A有500条记录,B有500乃至更多条,查询A表所有记录封装成List; 现根据A表的ID查询B表中对应的记录,那么 List<A> listA = getObjects(A.class); for(A a : listA){/*循环查询数据库*/ B b= getObjectById(a.getId()); map.put("A",a.name); map.put("B",b.time); } List<B> listB = getObjects(B.class); for(A a : List<A>){ for(B b : List<B>){ if(a.getId() == b.getAid()) map.put("A",a.name); map.put("B",b.time); } } 这两种方式哪个效率高
使用javamail从数据库中循环获值,发送到邮箱中的问题。
将数据库中获得的值存放在list中,通过String将值发送到邮箱中。 String body="内容" message.setContent(body,"text/html;charset=GBK"); 怎么才能够将List的值以循环的格式传到String中?或者有没有其他的方法能够将数据库List的值发送?
传入数据类型是List<String> 数据库的字段类型应该是什么 SQL server
传入数据类型是List<String> 数据库的字段类型应该是什么 数据库是SQL server
java-数据库中怎么判断,是否有某一条数据
我在做一个学校的项目,遇到这样一个问题: 有科目表字典表(语文,数学,英语),有成绩表(成绩,学生,半期考试,期末考试等) 数据比较大,比如:我现在通过条件取到,成绩表中, 一个班,所有考试类型,所有科目的成绩 现在要根据科目去分配每一个科目的成绩。我现在做的是,先双循环,第一次遍历科目,第二次遍历成绩表,然后进行判断,如果科目表中的ID == 成绩表的中的科目的ID ,那么就把这一条数据取出来 存在一个集合里,我先new 了一个 List<List<Score>>,在New 了一个 List<Score> 如果,科目相等 我先把成绩存在List<Score>,科目第一次循环完之后 吧 List<Score> add到 List<List<Score>> 这样就会有个问题,如果 科目表中有,成绩表没有这个科目,怎么处理?
如何把一个包含List的bean插入到数据库中?
![图片说明](https://img-ask.csdn.net/upload/201511/27/1448589565_215670.jpg) 这是一个Bean List里的数据我已经从页面接到,如何把这个集合直接插入到数据库中 这三个List里面装的都是字符串
如何将数据库中存储在list中的对象取出在页面显示
在hibernate4.3.5+struts2.0中实现从数据库中读取数据存在list中,然后取出的时候就是显现不了 package lee; import org.hibernate.Transaction; import org.hibernate.Session; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.*; import org.crazyit.app.domain.*; public class HqlQuery { public static void main(String[] args) throws Exception { HqlQuery mgr = new HqlQuery(); mgr.findPersonProperty(); } // 第三个查询方法:查询属性 public List<myBook> findPersonProperty() { // 获得Hibernate Session Session sess = HibernateUtil.currentSession(); // 开始事务 Transaction tx = sess.beginTransaction(); // 以HQL语句创建Query对象. List list = sess.createQuery("select mb.bookAuthor,mb.bookName , mb.bookPrice,mb.image " + "from myBook mb").list(); // Query调用list()方法访问查询得到的全部属性 // 遍历查询的全部结果 for (Object ele : list) { Object[] objs = (Object[])ele; System.out.println(java.util.Arrays.toString(objs)); } // 提交事务 tx.commit(); HibernateUtil.closeSession(); return list; } } } package org.crazyit.app.action; import java.util.List; import lee.HqlQuery; import org.crazyit.app.domain.myBook; import com.opensymphony.xwork2.ActionContext; public class testAction { public String execute() throws Exception { myBook mb=new myBook(); HqlQuery mgr = new HqlQuery(); List<myBook> list=mgr.findPersonProperty(); ActionContext.getContext().put("list", list); return "success"; } } <%@taglib prefix="s" uri="/struts-tags" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> <s:debug></s:debug> <table border="1" width="500"> <tr> <th>name</th> <th>author</th> <th>price</th> <th>image</th> </tr> <s:iterator id="mb" value="list"> <tr> <td>${mb.bookName}</td> <td>${mb.bookAuthor}</td> <td>${mb.bookPrice} </td> <td><img src="${mb.image}"/></td> </tr> </s:iterator> </table> </body> </html>
.net core webapi异步接口调用数据库for里面使用await不等待,返回空(有时候有返回值)
使用异步调用一个树结构 ``` public async Task<List<SelectDto>> SelectDeps(int? id) { var results = new List<SelectDto>(); // var deps = db.Department.Where(o=>o.IsDel!=true).Where(o => o.Pid == id || (id == null && o.Pid == 0)).Include(x => x.Children).AsAsyncEnumerable(); // await foreach (var x in deps) // { // var dto = new SelectDto() // { // title = x.DepName, // label = x.DepName, // key = x.Id, // children = await SelectDeps(x.Id) // }; // results.Add(dto); // }; var deps =await db.Department.Where(o=>o.IsDel!=true).Where(o => o.Pid == id || (id == null && o.Pid == 0)).Include(x => x.Children).ToListAsync(); for (int i = 0; i < deps.Count; i++){ var dto = new SelectDto() { title = deps[i].DepName, label = deps[i].DepName, key = deps[i].Id, children = await SelectDeps( deps[i].Id) }; results.Add(dto); }; return results; } ``` 原来无论使用await foreach 或者 for 都会等待执行然后返回数据 直接调用接口没问题。浏览器get方法。 但是前端调用进入调试总是后台返回空值(使用angular)
java 实体类list进行数据处理
现有数据库policecarnew,字段id,x,y,date 每5秒会有一条数据添加到表中 数据会出现x,y相同的情况,我要把x,y的这个点去重,并且规定一个值比如0.5,x1y1的点距离x2y2的点小于0.5,那我就认为这俩个点是重复的去掉一个点 我现在用实体类接收到数据存到list集合里,要拿第一条数据x1y1的点和第二条数据的x2y2进行比对,如果x1y1与x2y2重复,我删掉x2y2的这一条数据,再拿第一条和第三条比对,如果x1y1的点距离x3y3的点小于0.5,那我也删掉x3y3的这一条数据,x1x1与x4y4比,如果x1y1的点距离x4y4的点大于0.5,那我把x4y4存进去,再用x4y4对比下一条数据 注明:x:116.421565,y:40.456123;x1y1为一个点,需用到勾股定理算出两个点的距离
遍历List 还是查询数据库。。
如果List里面项目很多 达到3000到1W条以上,而且不能直接通过索引定位每一项。 <br />由于处于大的并发程序中,而且不光是查询,会有修改操作。 List要求线程安全,就是会有很多线程要遍历这个List。 <br />每次需要遍历List找到要的数据,我觉得这样效率不高。是否可以用内嵌的数据库来 <br />解决这个问题呢?比如将数据都存在数据库中,然后根据条件直接查找出来,这样效率是不 <br />是比遍历List效率高? <br />请指点,或者有其他解决方案? <br /><br /><strong>问题补充</strong><br /><div class="quote_title">wzybadboy 写道</div><div class="quote_div">一万条数据不算很多吧,效率应该不会有太大的影响。</div> <br /> <br />恩 单个的List是不多 <br />有点忘了说 由于处于大的并发程序中 List要求线程安全,就是会有很多线程要遍历这个List。 <br />
kettle 记录过滤in list 怎么选择另外一个表中的字段
我用kettle从一个数据库表中读取数据,有一个字段A,然后想根据另外一个数据库表中的一个字段A对这部分数据进行过滤,筛选出数据中字段A在第二张表的字段A的记录,不同数据库不太好联表查,而且数据量有点大 ![图片说明](https://img-ask.csdn.net/upload/201905/14/1557823489_776438.png) 图片所示,想用过滤组件的in list,,但是值是在上面的字段选择中,该怎么处理
将一个数据库的某个表插入另一个数据库的某张表
各位大牛,现在将INFORMIX数据库中的表A 插入到oracle数据库中的表B,现在是查表A放到list中 然后再一条条插到表B中。之前数据量小,所以速度很快,现在数据量一大,就慢了。问下各位大牛,有没有什么方法可以提高效率?
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小型人工智障。 知识可以运用在不同地方,不一定非是天气预报。
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
英特尔不为人知的 B 面
从 PC 时代至今,众人只知在 CPU、GPU、XPU、制程、工艺等战场中,英特尔在与同行硬件芯片制造商们的竞争中杀出重围,且在不断的成长进化中,成为全球知名的半导体公司。殊不知,在「刚硬」的背后,英特尔「柔性」的软件早已经做到了全方位的支持与支撑,并持续发挥独特的生态价值,推动产业合作共赢。 而对于这一不知人知的 B 面,很多人将其称之为英特尔隐形的翅膀,虽低调,但是影响力却不容小觑。 那么,在...
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
刷了几千道算法题,这些我私藏的刷题网站都在这里了!
遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活… 然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看...
白话阿里巴巴Java开发手册高级篇
不久前,阿里巴巴发布了《阿里巴巴Java开发手册》,总结了阿里巴巴内部实际项目开发过程中开发人员应该遵守的研发流程规范,这些流程规范在一定程度上能够保证最终的项目交付质量,通过在时间中总结模式,并推广给广大开发人员,来避免研发人员在实践中容易犯的错误,确保最终在大规模协作的项目中达成既定目标。 无独有偶,笔者去年在公司里负责升级和制定研发流程、设计模板、设计标准、代码标准等规范,并在实际工作中进行...
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
Nginx 原理和架构
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:加载配置、启动工作进程及非停升级。worker 进程负责处...
【图解经典算法题】如何用一行代码解决约瑟夫环问题
约瑟夫环问题算是很经典的题了,估计大家都听说过,然后我就在一次笔试中遇到了,下面我就用 3 种方法来详细讲解一下这道题,最后一种方法学了之后保证让你可以让你装逼。 问题描述:编号为 1-N 的 N 个士兵围坐在一起形成一个圆圈,从编号为 1 的士兵开始依次报数(1,2,3…这样依次报),数到 m 的 士兵会被杀死出列,之后的士兵再从 1 开始报数。直到最后剩下一士兵,求这个士兵的编号。 1、方...
吐血推荐珍藏的Visual Studio Code插件
作为一名Java工程师,由于工作需要,最近一个月一直在写NodeJS,这种经历可以说是一部辛酸史了。好在有神器Visual Studio Code陪伴,让我的这段经历没有更加困难。眼看这段经历要告一段落了,今天就来给大家分享一下我常用的一些VSC的插件。 VSC的插件安装方法很简单,只需要点击左侧最下方的插件栏选项,然后就可以搜索你想要的插件了。 下面我们进入正题 Material Theme ...
如何防止抄袭PCB电路板
目录 1、抄板是什么 2、抄板是否属于侵权 3、如何防止抄板 1、抄板是什么 抄板也叫克隆或仿制,是对设计出来的PCB板进行反向技术研究;目前全新的定义:从狭义上来说,抄板仅指对电子产品电路板PCB文件的提取还原和利用文件进行电路板克隆的过程;从广义上来说,抄板不仅包括对电路板文件提取、电路板克隆、电路板仿制等技术过程,而且包括对电路板文件进行修改(即改板)、对电子产品外形模具进行三维...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
Python 植物大战僵尸代码实现(2):植物卡片选择和种植
这篇文章要介绍的是: - 上方植物卡片栏的实现。 - 点击植物卡片,鼠标切换为植物图片。 - 鼠标移动时,判断当前在哪个方格中,并显示半透明的植物作为提示。
相关热词 c# 二进制截断字符串 c#实现窗体设计器 c#检测是否为微信 c# plc s1200 c#里氏转换原则 c# 主界面 c# do loop c#存为组套 模板 c# 停掉协程 c# rgb 读取图片
立即提问