Java后端程序员1年工作经验总结

  毕业已经一年有余,这一年里特别感谢技术管理人员的器重,以及同事的帮忙,学到了不少东西。这一年里走过一些弯路,也碰到一些难题,也受到过做为一名开发却经常为系统维护和发布当救火队员的苦恼。遂决定梳理一下自己所学的东西,为大家分享一下。  经过一年意识到以前也有很多认识误区,比如:  偏爱收集,经常收集各种资料视频塞满一个个硬盘,然后心满意足的看着容量不行动。  不重基础,总觉得很多基础东西不需要再看了,其实不懂的地方很多,计算机程序方面任何一个结果都必有原因,不要只会用不知道原理,那是加工厂出来的。现在ide查看代码那么方便,ctrl+点击就进入了JDK查看实现细节。  好高骛远,在计算机基础不牢固的情况下,总想着要做架构,弄分布式,搞大数据之类。  不重视性能,只求能实现功能,sql查询是不是可以优化,是否有算法妙用,大对象是否要清除。  不重视扩展性,模块之间紧密耦合,常用方法不提取成工具类,调用关系混乱等问题。  ……  本文重点不在这些,故只列举了一小部分,下面进入正题。 2.1Java类初始化顺序  这是所有情况的类初始化顺序,如果实际类中没有定义则跳过:父类静态变量——父类...

小程序image无法显示图片

   图片路径中有中文图片地址为http开头,图片只能在调试模式中显示,真机也必须开调试。图片名称有空格图片的后缀必须为小写的.png或者.jpg...

程序图片添加视频播放按钮图标

先上效果图: 这个不是真的video组件,这是图片上定位了一个css元素而已,上wxss代码:<viewclass="item-img"><imagewx:if="{{item.coverUrl}}"src="{{img_full_path+item.coverUrl}}"></image><viewclass="circle"><viewclass="circle_inner_play"></view></view><viewclass="duration">{{util.secondToTimeStr(item.duration)}}</view></view> 父级view样式:.item.item-img{height:388rpx;position:relative;}现在定位一个圆圈居中显示.circle{border-radius:50px;height:50px;position:absolute;width:50px;z-inde...

程序map地图点击makert放大效果和点击放大地图

WXML文件和JS文件代码在下方<viewclass='map'><mapid="map"longitude="{{location.lng}}"latitude="{{location.lat}}"scale="{{scaleCount}}"markers="{{markers}}"bindmarkertap="markertap"></map></view>Page({/***页面的初始数据*/data:{scaleCount:12,markers:[],location:"",},markertap:function(e){var_this=this;varmarkerId=e.markerId;varmodel=_this.data.mapData.filter(t=>t.pileMapId==markerId)[0];varmarkerIndex=_this.data.markers.findIndex(t=>t.id==markerId);//这里本人设置了最大不能超过14的缩放if(_this.data.scal...

程序setData 修改数组附带索引解决办法

this.setData({'judge[current]':true});以此句进行修改值,会报错Error:Onlydigits(0-9)canbeputinside[]inthepathstring:judge[current]但实际上current变量,为整型,打印出来的值为0 this.setData({'judge[0]':true});而把current直接以0代替,就不会有问题。想请教一下各位大佬这是怎么回事?难道是在setData里不用以变量作为索引值??? 解决方法:this.setData({[`judge[${current}]`]:true}) ...

程序view的显示与隐藏

需要在全局数据块中,设定一个控制键。data:{......//省略其他代码showView:true},然后是在wxml中,view的class中设置2个class,并用三目表达式来进行设定class。代码如下:<viewclass="{{showView?'header_view_show':'header_view_hide'}}">......</view>在wcss中进行这两个class的设定,代码如下:.header_view_hide{display:none;}.header_view_show{......display:block;}在JS代码中,放入一个事件来修改showView的值:onChangeShowState:function(){this.setData({showView:(!this.data.showView)})},<buttonbindtap="onChangeShowState">显示/隐藏view</button>  ...
代码星球 代码星球·2021-02-23

微信多开防撤回(带提示)2.8.0.133补丁

 用法:下载附件后解压替换微信PC文件夹wechatwin.dll文件即可生效/微信多开防撤回(带提示)2.8.0.133补丁链接:https://pan.baidu.com/s/1_8JNWTtFDmewZt5wWbfa0w提取码:58hu替换微信PC文件夹wechatwin.dll文件即可生效原文地址:https://www.52pojie.cn/thread-1132996-1-1.html...

C# 程序修改config文件后,不重启程序刷新配置ConfigurationManager

基本共识:ConfigurationManager自带缓存,且不支持写入。如果通过文本写入方式修改配置文件,程序无法刷新加载最新配置。PS.Web.config除外:Web.config修改后,网站会重启(即Web程序也无法在运行时刷新配置)。 为什么要在程序运行时,修改配置(刷新配置):>以前C++,VB时代,用户在程序界面勾选的配置,会写到ini文件。>C#自带.exe.config配置文件——但是,C#自带的ConfigurationManager不支持运行时修改,运行时刷新配置。>本文提供工具类,彻底解决这个问题——从此,用户手动勾选的配置再也不用写入ini,而是直接修改.exe.config文件,且立即刷新。 刷新ConfigurationManager配置的代码有两种:>第一种:ConfigurationManager.RefreshSection("appSettings");//刷新appSettings节点(立即生效)ConfigurationManager.RefreshSection("connectionString"...

idea中java程序打jar包的两种方式(超详细)

java程序打成的jar包有两种类型,一种是可直接执行的runnablejar文件,另一种是包含多个主类,运行时需要指定主类全类名的jar包,下面我们细说在idea中两种jar包的打包方法及执行jar包时的命令。第一种:含多个主类的jar包打包方法及运行命令在写好我们要打jar包的java程序后,点击idea右上角如图所示位置先选择Artifacts,再点击加号点击Empty新建一个新的jar包如图,设置jar包名称,jar包打好后所在的路径,以及添加工程编译文件点击OK后,会回到idea界面然后按照图示依次点击选项最后选择你的jar包名,点击build,jar包便打包成功,进入你在第4步时设置好的路径下就可以看到你的jar包了运行jar包程序,命令:java-cpjar包路径主类全类名第二种:可直接执行的runnablejar打包方法及运行命令前4步操作与上面的一样,然后继续以下操作点击CreateManifest选项,选择你的工程名称,然后点击OK如图选择jar文件,会有以下MainClass选项,点击对应文件夹图标选择你要执行的main方法所在的类,点击OK,再点击下一个OK,就...

druid监控页面SQL不显示问题

新版druid数据源驱动的SQL监控如果用以前的老版本配置是无法监控到SQL的:application.ymlspring:datasource:druid:filters:-stat-wall-log4j启动应用之后访问druid监控页面,除了SQL相关的页面都正常工作,但是访问SQL监控页面时没有看到SQL记录。查看监控页面 数据源 菜单发现 filter类名 显示的是空,估计是filter配置有问题导致。查阅官方文档发现filter配置有变更,改成以下形式即可统计SQL,同时在数据源页面 filter类名 会显示正常。application.ymlspring:datasource:druid:initial-size:5min-idle:5max-active:20max-wait:5000#状态监控filter:stat:enabled:truedb-type:mysqllog-slow-sql:trueslow-sql-millis:2000#监控过滤器web-stat-filter:enabled:trueexc...

小程序第三方框架对比 ( wepy / mpvue / taro )(转)

文章转自  https://www.cnblogs.com/Smiled/p/9806781.html      众所周知如今市面上端的形态多种多样,手机Web、ReactNative、微信小程序,支付宝小程序,快应用等,每一端都是巨大的流量入口,当业务要求同时在不同的端都要求有所表现的时候,针对不同的端去编写多套代码的成本显然非常高,这时候只编写一套代码就能够适配到多端的能力就显得极为需要。但面对目前市面上成熟的小程序第三方框架如何针对自己的需求进行选择也是一个麻烦事,本文针对当前市面上的三大转译框架进行一个综合对比,希望能对大家的技术选择有所帮助,如有哪里不妥的地方希望指正;频繁调用setData及setData过程中页面跳闪组件化支持能力太弱(几乎没有)不能使用less、scss等预编译器request并发次数限制只要熟悉vue或react即可快速上手,学习成本低 一套代码可在多端编译运行(微信,支付宝,h5,RN)  支付宝小程序暂不完善组件化开发,完美解决组件隔离,组...

jvm内存模型中-栈,方法区,程序计数器是线程安全的

文章转自  https://www.cnblogs.com/myna/p/7567889.html引文    JDK7及之前版本的方法区(MethodArea)和Java堆一样,是各个线程共享的内存区域,用于存储已经被虚拟机加载的类信息、常量、静态常量、即时编译器编译后的代码等数据。虽然Java虚拟机规范把方法区描述为堆的一个逻辑部分,但它有另外一个名字叫Non-Heap(非堆)。根据Java虚拟机规范的规定,当方法区无法满足内存分配需求时,将抛出OutOfMemoryError异常。细分    方法区被分为两个主要的子区域:持久代     这个区域会存储包括类定义、结构、字段、方法(数据及代码)以及常量在内的类相关数据。它可以通过-XX:PermSize及-XX:MaxPermSize来进行调节。如果它的空间用完了,会导致java.lang.OutOfMemoryError:PermGenspace的异常。而JDK8开始,持久代已经被彻...

让sublime text3支持Vue语法高亮显示

文章转自 http://www.cnblogs.com/kongxianghai/p/6732429.html1.准备语法高亮插件vue-syntax-highlight。下载地址:https://github.com/vuejs/vue-syntax-highlight 下载页面并下载: 解开压缩包vue-syntax-highlight-master,其内所有文件备用。 2.将vue-syntax-highlight植入sbulime。进入sublime,选择菜单项“Preferences->BrowsePackages...”。 在打开的文件夹中创建“Vue”文件夹。 在Vue文件夹中,将vue-syntax-highlight-master压缩包解压后的所有文件考入。 3.sublime载入vue-syntax-highlight插件按下快捷键“ctrl+shift+p”,在打开的packages输入框中输入vue,选择“SetSyntax:VueComponent”进行加载。 加载后重启su...

Java常用排序算法+程序员必须掌握的8大排序算法+二分法查找法

本文由网络资料整理转载而来,如有问题,欢迎指正!分类:1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)4)归并排序5)分配排序(基数排序)所需辅助空间最多:归并排序所需辅助空间最少:堆排序平均速度最快:快速排序不稳定:快速排序,希尔排序,堆排序。先来看看8种排序之间的关系:1.直接插入排序(1)基本思想:在要排序的一组数中,假设前面(n-1)[n>=2]个数已经是排 好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。(2)实例(3)用java实现 [java]viewplaincopy1.packagecom.njue;2.3.publicclassinsertSort{4.5.publicinsertSort(){6.inta[]={49,38,65,97,76,13,27,49,78,34,12,64,5,4,62,99,98,54,56,17,18,23,34,15,35,25,53,51};7.inttemp=0;8.for(inti=1...

程序员的健身课

卡、千卡、大卡、卡路里、千焦都是热量单位,它们之间的换算是:1卡=1卡路里=4.184焦耳;1千卡=1大卡=1000卡=1000卡路里 =4184焦耳=4.184千焦。卡路里 (简称“卡”,缩写为"calorie")的定义为将1克水在1大气压下提升1摄氏度所需要的热量。1千卡等于1000卡路里,约4184焦耳.关于一个人一天消耗的热量计算:男性11-17岁体重(公斤)×105=基本热量(千焦)18-30岁体重(公斤)×63+2850=基本热量(千焦)31-60岁体重(公斤)×48+3500=基本热量(千焦)60岁以上体重(公斤)×56+2050=基本热量(千焦)女性11-17岁体重(公斤)×84=基本热量(千焦)18-30岁体重(公斤)×61+1880=基本热量(千焦)31-60岁体重(公斤)×36+3500=基本热量(千焦)60岁以上体重(公斤)×44+2050=基本热量(千焦)#本人体重80K26岁所以基础耗能(千卡)>>>(80*63+2850)/4.21878.5714285714284   水果类  蔬菜类  奶类  五谷类  ...
代码星球 代码星球·2021-02-22
首页上一页...1112131415...下一页尾页