业务代码的要求和常规意义上的编程有很多不一样的地方。我们在学习编程的时候往往被教导: 代码要有良好的设计。...要抽象和封装,要尽量减少重复代码; 代码要有良好的建模,概念清楚,不同实体的关系清晰; 代码要高效,有O(1)的别用O(log n),有O(log n)的不用O(n); …… 但是到了业务上。...写业务流程不一定用java。java只是工具,帮你把上面的这些关键的东西串起来。如果可能,js,PHP,ruby,py都是可以的。项目组用什么就跟着用什么就好。 ?...比如 Java从骨子里就是要面向对象,但是业务流程不一定需要面向对象。很多业务就是第一步怎么样,第二步怎么样。这时,弄很复杂的类设计有时并不必要,反而还会带来麻烦。...对于错误处理,Java的规矩是抛异常。
学习计划安排如下: 昨天实现了前端页面的编写以及发送请求,今天关于异步请求工具axios的简单说明。 关于商品品牌,后台代码的完整编写。...因此可以用.then() 来接收成功时回调,.catch()完成失败时回调,也就是我们昨天的代码编写。 但是昨天写的代码很难看出来是使用的axios,因为其有配置让其使用更简单了。...二、后台代码编写 个人的编写代码思路: 首先确定对应实体类,其次确定请求参数、请求路径和返回值,最后Java三层代码编写。 1实体类和数据表 ?...数据库中对应的数据表为tb_brand,编写实体类Brand和其一一对应。 2返回值数据 编写一个分页数据实体类,在其它业务中若是需要分页数据也可以使用这个类。...totalPage即总页数,因为我们这里没有编写对应的业务,所以为null。
位运算 位运算常用六种运算符 & 按位与, 同1为1 | 按位或, 同0位0 ^ 异或,两个位相同为0,相异为1 ~ 取反,0转1,1转0 >> 右移,Java中右移,符号位不变,左边补上符号位 <<...左移,各二进位全部左移若干位,高位丢弃,低位补0 常用业务场景有:判断奇偶数,判断是否为2的整数次幂,左移,右移,两数交换,取相反数,取绝对值。...常用业务有:格式化日期,判断周几,获取上一个周几,获取两日期之间时间间隔,获取两日期之间工作日 //====处理日期 private void handlerDate() {...().length); //赋值 field.setAccessible(true); field.set(this, "每天学Java...poi-ooxml 3.11-beta2 代码过长
1.阿里巴巴Java开发手册 ---- 2.基于上面的idea代码检查插件 打开idea file–>setting–>plugins–>Browse repositories… 搜索alibaba可以看到...Alibaba Java Coding Guidelines 点击install安装 点击OK,然后重启idea 右键点击工程文件或目录可以看到 “编码规约扫描”、“关闭实时检测功能” 切换语言...此后,再new java class时,就会自动添加类头注释 ---- 4.设置方法头注释 打开idea file->setting->Editor->LiveTemplates 点击右边+号,选择Template...底部的提示“No applicable contexts yet”,点击define,勾选Java 点击OK 此后,写好方法名及其参数后,在方法上输入/**点击Enter键,便会添加方法头注释
第一步:新建一个文本文档 第二步:打开代码输入代码(注意大小写,Java对大小写很敏感) 第三步:更改后缀为.java (这样这个文档就会成为一个原文件) 第四步: 按住shift键,鼠标右键单击...,点击“在此处打开Powershell” 第五步:在Power shell窗口里输入 Javac Helloworld.java,会出现一个class文档 第六步:在Power shell窗口里输入
我决定告诉你如何编写可怕的Java代码。如果你厌倦了所有这些美丽的设计模式和最佳实践,并且想写些疯狂的东西,请继续阅读。 如果你正在寻找有关如何编写良好代码的建议,请点击查看这篇文章。...如果是这种情况,请看如下代码。 我们在这里读取 lineSeparator,这并没有什么。但是修改 lineSeparator 会带来更多乐趣!...在我们修改代码中的 lineSeparator 之后,看看 System.out.println 发生了什么: 输出为: 看起来不错!...(可能是一些编译器级别的优化破坏了所有的乐趣)关注微信公众号:Java技术栈,在后台回复:java,可以获取我整理的 N 篇最新Java教程,都是干货。...永远不要编写测试,只是不要编写错误! 将所有都定义为 public -方便访问! 支持全局变量–您可能需要它们! 大型接口优于小型专用接口–可以使用的方法越多越好!
我决定告诉你如何编写可怕的Java代码。如果你厌倦了所有这些美丽的设计模式和最佳实践,并且想写些疯狂的东西,请继续阅读。 如果你正在寻找有关如何编写良好代码的建议,请查看其它文章!...Java 中的访问修饰符,这不是浪费时间嘛!你是否知道将属性/方法等设为私有只是一个建议?如果你想修改它,那就去做吧!没什么能阻止你(除了缺乏知识之外)。如果是这种情况,请看如下代码。...我看到 Java 平台首席架构师 Mark Reinhold 表示,他们后悔将序列化引入到 Java。显然,Java 中大约 1/3 的安全漏洞仅来自于序列化。 将对象用于一切 你知道类吗?浪费时间!...你是否想看到代码重用的巅峰之作?你去!...永远不要编写测试,只是不要编写错误! 将所有都定义为 public -方便访问! 支持全局变量–您可能需要它们! 大型接口优于小型专用接口–可以使用的方法越多越好!
不要学习任何新知识–你总是最了解 ---- 我决定告诉你如何编写可怕的Java代码。如果你厌倦了所有这些美丽的设计模式和最佳实践,并且想写些疯狂的东西,请继续阅读。...如果你正在寻找有关如何编写良好代码的建议,请查看其它文章! 1. 对一切使用异常 你知道循环对吗?...Java 中的访问修饰符,这不是浪费时间嘛!你是否知道将属性/方法等设为私有只是一个建议?如果你想修改它,那就去做吧!没什么能阻止你(除了缺乏知识之外)。如果是这种情况,请看如下代码。...你是否想看到代码重用的巅峰之作?你去!...永远不要编写测试,只是不要编写错误! 将所有都定义为 public -方便访问! 支持全局变量–您可能需要它们! 大型接口优于小型专用接口–可以使用的方法越多越好!
PyCharm包含用于编写代码的各种标准,其中包含适用于Python的适当缩进。 这有助于提高代码标准并在PyCharm编辑器中编写完整的代码。 改进代码完成 PyCharm中的代码完成非常独特。...请注意,编辑器提供了代码块的开始和结束。...以下代码编写一个名为demo.py的文件中 – message = ‘GIEWIVrGMTLIVrHIQS’ #encrypted message LETTERS = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ...LETTERS[num] else: translated = translated + symbol print(‘Hacking key #%s: %s’ % (key, translated)) 代码使用以下构造完成...– 如果在屏幕上显示此弹出窗口时按下Ctrl + 空格键,则可以看到更多代码完成选项 – 意图操作 PyCharm包含意图特定的操作,并且快捷键是Alt + Enter。
1.前言 前阵子休息天日常在寻找项目里不好的代码,看到了这样的一段代码: private Result sshSameExec(Session session, String cmd) {...这段代码有点丑,于是我闻到了学习的味道....* @see java.io.DataInputStream * @see java.io.FilterInputStream * @see java.io.InputStream...其次,这代码太挫了,自己定义一个tmp,然后1024、1024这样的去取出来....:线程消费,高级抽象. 3.1 使用Kotlin 3.1.1 Kotlin IO 闲话不多说,先贴代码为敬: import java.io.InputStream import java.io.InputStreamReader
本篇文章对日常开发中常用的Java IO场景进行整理,涉及功能有:判断目录/文件、创建目录/文件、获取文件属性、通过文件头判断文件是否为Excel、字节流/字符流读取文件、字节流/字符流写入文件、对象序列化反序列化...File Java中File类提供了一系列方法让开发人员对于目录文件进行操作,通常是对目录文件增删: 判断File是文件还是目录 //===判断File是文件还是目录,目录则递归遍历 public...new Date(file.lastModified())); } IO流 对于目录文件的操作我们可以通过File进行,但是当需要对文件内容进行操作时,就需要IO流,通过IO流我们可以实现如下业务...fos = new FileOutputStream("/Users/chenlong/Documents/xcx/dream/web-project/email-project/src/main/java...);//读对象 System.out.println(((IoUtil) obj).i); ois.close(); } 图片加水印 给图片加水印是一种很常见的业务需求
本篇文章将Java线程中常见的功能进行整理,涉及点:join、yield、isAlive方法、synchronized的使用、生产者-消费者模式(wait/notify实现和阻塞队列实现)、Lock+Condition...join join类似于同步,当A线程中调用了B线程的join()方法时,表示只有当B线程执行完毕时,A线程才能继续执行(如下代码), 但是B线程必须已经调用start()方法,否则join就会失效...System.out.println("-"); } } }).start(); } jstack jstack能得到运行java...程序的java stack和native stack的信息。...| grep 16进制 top ##寻找进程 top -Hp pid ##寻找进程的线程 printf '%x\n' pid ##转为16进制 jstack pid | grep 16进制 ##定位代码
Java可以用来编写网络爬虫,实现对网页内容的自动化抓取和处理。爬虫的实现原理包括基本技术、处理流程、数据提取等方面。在Java中,可以使用URL类来获取网页内容,使用正则表达式来提取所需信息。...多线程爬虫的实现可以提高效率,但也需要注意线程安全问题import java.io.BufferedReaderimport java.io.InputStreamReaderimport java.net.HttpURLConnectionimport...java.net.URLimport java.net.URLConnectionfun main() { val proxyHost = "duoip" val proxyPort =
代码质量概述 代码质量所涉及的5个方面,编码标准、代码重复、代码覆盖率、依赖项分析、复杂度分析。这5方面很大程序上决定了一份代码的质量高低。...代码重复:顾名思义就是重复的代码,如果你的代码中有大量的重复代码,你就要考虑是否将重复的代码提取出来,封装成一个公共的方法或者组件。...代码覆盖率:测试代码能运行到的代码比率,你的代码经过了单元测试了吗?是不是每个方法都进行了测试,代码覆盖率是多少?这关系到你的代码的功能性和稳定性。 依赖项分析:你的代码依赖关系怎么样?...通过复杂度分析可以揪出这些代码,要相信越优秀的代码,越容易读懂。...: 软件架构的代码质量 http://www.ibm.com/developerworks/cn/java/j-cq04256/ JDepend http://www.clarkware.com/software
新手编写java代码常用的编辑器有: 1、eclipse Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。...幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。...(视频教程推荐:java视频) 2、notepad++ Notepad++是在微软视窗环境之下的一个免费的代码编辑器。...内置支持多达27种语法高亮度显示(包括各种常见的源代码、脚本,能够很好地支持.nfo文件查看),还支持自定义语言。 3、sublime text Sublime Text是一款流行的代码编辑器。...Sublime Text 具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。
import java.util.Scanner; /* 5.1判断闰年(时间:20分钟) 5.1.1 作业任务 (1)由用户输入任意一个年份,能被4整除但不能被100整除,或者能被400整除,是闰年。
代码生成器的原理其实是非常简单的,主要可以分为下面两个步骤: 数据库元数据抓取 模板输出 第一步数据库元数据信息抓取 这里给大家提供些简单易于操作的思路,我们找到数据库连接中的information_schema...我们想要做到根据数据库去动态生成代码,那么就需要拿到生成代码的对应的数据库,表,以及字段等信息.下面给大家提供一下获取数据库,获取数据库表,获取数据库表字段的SQL语句 获取连接中的所有数据库 SELECT...这里我先给羡慕提前准备好我们需要生成的模板,如下: 大家可以看我提前准备了六个模板,每个模板都有一些表达式的存在,这就是在获取表信息和列信息之后,需要填充进去的,然后通过模板技术动态渲染成我们需要的代码...B/S架构代码: https://gitee.com/lijunnb666/apollo-generator-fast C/S架构代码: https://gitee.com/lijunnb666/apollo-generator
25.“)” is proceeded by whitespace “)” 前面不能有空格 可以看出CheckStyle检查出来的问题,大多是编码规则以及风格上的问题,这是编写高质量代码最基本的...值得注意的是,我们将一些优秀的开源代码用CheckStyle来检查也会检查出不少问题,这不能不说这些开源不优秀,而是每个公司组织有自己的编写规范度,这个度既可以减少程序员的工作量又可以让代码的可读性合格...然后根据业务逻辑以及代码特征,决定要不要做封装、怎么封装。...使用Junit编写好测试用例之后,右键Coverage As--->Junit Test,运行测试用例,Eclemma会统计出相关的代码覆盖率: 根据这个结果,你可以看出自己编写的测试用例覆盖到了那些代码...依赖项分析(JDepend的使用) 随着程序业务逻辑的增加,代码的依赖关系也变的越来越复杂,JDepend插件可以统计包和类的依赖关系,分析出程序的稳定性、抽象性和是否存在循环依赖的问题。
“(” 后面不能有空格 25.“)” is proceeded by whitespace “)” 前面不能有空格 可以看出CheckStyle检查出来的问题,大多是编码规则以及风格上的问题,这是编写高质量代码最基本的...值得注意的是,我们将一些优秀的开源代码用CheckStyle来检查也会检查出不少问题,这不能不说这些开源不优秀,而是每个公司组织有自己的编写规范度,这个度既可以减少程序员的工作量又可以让代码的可读性合格...然后根据业务逻辑以及代码特征,决定要不要做封装、怎么封装。...使用Junit编写好测试用例之后,右键Coverage As—>Junit Test,运行测试用例,Eclemma会统计出相关的代码覆盖率: 根据这个结果,你可以看出自己编写的测试用例覆盖到了那些代码...依赖项分析(JDepend的使用) 随着程序业务逻辑的增加,代码的依赖关系也变的越来越复杂,JDepend插件可以统计包和类的依赖关系,分析出程序的稳定性、抽象性和是否存在循环依赖的问题。
[项目中经常写CRUD,但实际这些工作,我觉得如果有一个完整的代码规范,完全可以自动生成,加快开发效率. 代码生成器技术原理不复杂,一般就是写好一个模板生成一系列的代码而已。...我看到mybatis_plus的代码生成器就相当不错,就自己拿过来改造了一下 1.项目中,需先引入vm库,用来生成代码 org.apache.velocity...Object delete(@PathVariable("id") Long id) { return super.delete(id); } } VM就编写如下...代码就是通过读数据库的表信息,含字段名称,注解难来生成相关的文件。...现在我项目开发是通过代码生成器生成代码,然后中途加字段是通过我另一文章 给mybatis添加自动建表,自动加字段的功能来加字段。 如果想要完整的代码生成器,请打赏一注彩票钱再联系我。
领取专属 10元无门槛券
手把手带您无忧上云