- 军军小站|张军博客
拥有Java标签的文章
Java

Java应用从集中式步入分布式

【IT168技术】记得Martin大叔在《企业应用架构模式》中特别强调:“能够不分布式的应用就不要分布式”,这句话没什么问题,尤其对于做过分布式应用的人而言,就更会有深刻的体会了,但这个世界偏偏就没有那么简单,大多数人都会碰到分布式应用的场景,尤其是对于大型应用而言,从集中式步入分布式是不可避免的,只是也许是小型分布式的,也许是大型分布式的;也许是有高性能要求的,也许是没有的,在这篇blog中我们来看看java应用从集中式步入分布式后到底会带来些什么挑战。

系统 2019-08-29 22:12:56 2127

Java

Java多线程-volatile的原理与技巧

volatile,用更低的代价替代同步为什么使用volatile比同步代价更低?同步的代价,主要由其覆盖范围决定,如果可以降低同步的覆盖范围,则可以大幅提升程序性能.而volatile的覆盖范围仅仅变量级别的.因此它的同步代价很低.volatile原理是什么?volatile的语义,其实是告诉处理器,不要将我放入工作内存,请直接在主存操作我.(工作内存详见java内存模型)因此,当多核或多线程在访问该变量时,都将直接操作主存,这从本质上,做到了变量共享.v

系统 2019-08-29 22:02:41 2127

Java

java字符串应用之表达式解析器

一、表达式的组成1、数字2、运算符:+-/*^%=3、圆括号4、变量二、运算符优先级由高到低分别为:+-(正负号)、^、*/%、+-、=优先级相等的运算符按照从左到右的顺序计算三、关键技术点1、确定运算的优先级,从高到低分别为:原子元素表达式,包括数字和变量;括号表达式;一元表达式,取数的负数;指数表达式;乘、除、取模表达式;加、减表达式;赋值表达式。2、对于每一级别的运算,都由一个方法实现,在方法中先完成比自己高一级别的运算,再处理本级别的运算。因此,在

系统 2019-08-12 09:29:44 2127

Java

在jmeter的beanshell中用java获取系统当前时间

importjava.util.*;inty,m,d,h,mi,s;Calendarcal=Calendar.getInstance();y=cal.get(Calendar.YEAR);m=cal.get(Calendar.MONTH);d=cal.get(Calendar.DATE);h=cal.get(Calendar.HOUR_OF_DAY);mi=cal.get(Calendar.MINUTE);s=cal.get(Calendar.SECOND

系统 2019-08-12 09:27:38 2127

Java

送50本 Python、数据库、java方面的书,包邮给你!

来给大家送一波福利,这次联系了8个好友一起给各位送书,每个号送5本,一共45本,还包邮哦。感谢传智播客对本次活动的赞助。金主介绍:传智播客是国内数一数二的IT培训机构,现在关注传智播客,回复【破局】,即可领取由前阿里/百度/微软/IBM架构师教研团队打造的程序员技术进阶课程。同时这里还会不定期赠送书籍、键盘、免费大咖公开课分享、举办专注服务程序员的线上线下活动,关爱程序员健康,程序员相亲交友等主题活动。扫码即可关注01书怎么送很简单,关注下面的公众号,并在

系统 2019-09-27 17:57:25 2126

Java

快报:Java跌惨!Python背后或有推手?网友:心态已崩!

原文链接:https://edu.csdn.net/topic/python115?utm_source=yjs“愿你出走半生,归来仍学Python!”最近Python的slogan正在“变化”。原因是来自于PYPL官方发布2019年7月编程语言指数榜,Python连续半年夺冠,并且本月市场份额超高的28.08%。这简直是遇神杀神,遇佛杀佛的灭霸节奏!不过,Python虽然在编程排行上力压曾经的大佬Java,但其他方面可以吗?能给程序员想要的吗?So,Py

系统 2019-09-27 17:53:49 2126

Java

java 基础学习之点滴

每个实例拥有一个实例变量;每种类别之下共享一个静态变量。编译器会处理除RuntimeException外的所有Exception。try...catch...finally中,finally无论如何都会被最后执行。即使try&catch内含有return,程序也会在return前先执行finallytry...catch中,如果有多个同父类(除Exception外)的Exception,catchException的顺序从上到下应该是子类->父类。否则父类

系统 2019-08-29 23:03:03 2126

Java

浅谈Java串行端口技术协议

串行通讯慨述串行通讯协议有很多种,像RS232,RS485,RS422,甚至现今流行的USB等都是串行通讯协议。而串行通讯技术的应用无处不在。可能大家见的最多就是电脑的串口与Modem的通讯。记得在PC机刚开始在中国流行起来时(大约是在90年代前五年),那时甚至有人用一条串行线进行两台电脑之间的数据共享。除了这些,手机,PDA,USB鼠标、键盘等等都是以串行通讯的方式与电脑连接。而笔者工作性质的关系,所接触到的就更多了,像多串口卡,各种种类的具有串口通讯接

系统 2019-08-29 22:48:58 2126

Java

jetty6 嵌入到 javaproject中

Jetty是一个开源的servlet容器,它为基于Java的web内容,例如JSP和servlet提供运行环境。Jetty以其高效、小巧、可嵌入式等优点深得人心,尤其是启动速度Tomcat6简直望尘莫及。Jetty作为可选的servlet容器只是一个额外的功能,而它真正出名是因为它是作为一个可以嵌入到其他的Java代码中的servlet容器而设计的。这就是说,开发小组将Jetty作为一组Jar文件提供出来,因此你可以在你自己的代码中将servlet容器实例

系统 2019-08-29 22:10:54 2126

Java

java解惑你知多少(一)

温馨提示:如需《java解惑你知多少》的朋友,请到第八节附录下载,那里我提供了Word格式化的文档,读起来可能方便一些,如果你喜欢,请对我的工作给于支持,谢谢~!另外,特此声明:本系列内容来源于《JAVA解惑》一书,不是本人所独创,此系列内容应该说是该书的一个精简版,但内容含盖90%左右,摘录于此只是便于与大家共同分享,激起大家对Java基础的兴趣!我也是一位Java老菜鸟,搞了好几年的Java了,现在回头看这本书时,颇有感受——基础才是永恒!不过如果大家

系统 2019-08-29 22:02:51 2126

Java

加速Java应用开发速度3——单元/集成测试+CI

《加速Java应用开发速度》系列目录:加速Java应用开发速度1——加速spring/hibernate应用调试时启动速度加速Java应用开发速度2——加速项目调试启动速度加速Java应用开发速度3——单元/集成测试+CI加速Java应用开发速度4——使用模板技术加速项目开发速度加速Java应用开发速度5——使用脚本自动化日常操作大家可能对如下情景比较熟悉:如果开发过SSH的web项目,启动服务器可能会比较慢,有的项目甚至需要1分多钟,甚至更多,这个启动时

系统 2019-08-29 22:00:52 2126

Java

java之4天 数组排序,查找.进制转换

1.数组的定义格式1.元素类型[]数组名=new元素类型[元素个数或者数组长度];int[]arr=newint[5];//推荐intarrs[]=newint[5];2.静态初始化方式不能写长度int[]arrs=newint[]{3,1,4,5,6,2};int[]arrs={3,1,4,5,6,2};//好像是在jdk5.0后才能使用3.boolean类型的数组默认值为false数组的操作publicstaticvoidmain(String[]ar

系统 2019-08-29 22:00:03 2126

Java

【java多线程与并发库】---传统java多线程<3> .

1、java中用两种线程:1)守护线程守护线程(Daemon)是比较特殊的一种低级别线程,一般被用于在后台为其它线程提供服务。比如当用户编写Word文档时,不断进行拼写检查的线程就是个守护线程,它不会影响用户编辑文件。典型的守护线程例子是JVM中的系统资源自动回收线程,它始终在低级别的状态中运行,不需要占用大量的系统资源,多用于实时监控和管理系统中的可回收资源。可以通过调用方法isDaemon()来判断一个线程是否是守护线程,而将一个用户线程设置为守护线程

系统 2019-08-12 09:29:59 2126