java
sjhuangx
这个作者很懒,什么都没留下…
展开
-
Java实现两个线程交替打印奇偶数
使用两个线程分别交替打印奇偶数。实现思路,通过一个对象锁同步请求,获取锁之后判断当前数字时候为奇数或者偶数,然后使用Object.wait方法释放锁并等待。public class Main { public static void main(String[] args) { Main main = new Main(); main.test(); } private volatile int count = 0; pu.原创 2020-05-14 18:04:06 · 807 阅读 · 0 评论 -
支持四则运算的parser
如下是使用递归下降方法解析基本四则运算的parserimport java.util.ArrayList;import java.util.List;import java.util.concurrent.ExecutionException;public class Main { public static void main(String[] args) { ...原创 2020-02-20 22:43:13 · 374 阅读 · 0 评论 -
递归下降法二叉树解析
参考:https://www.cnblogs.com/Ninputer/archive/2011/06/21/2085527.html编写递归下降语法分析器的一般步骤:使用一个索引来记录当前扫描的位置。通常将它做成一个整数字段。 为每个非终结符编写一个方法。 如果一个非终结符有超过一个的产生式,则在这个方法中对采用哪个产生式进行分支预测。 处理单一产生式时,遇到正确终结符则将第一步...原创 2020-02-18 22:24:31 · 286 阅读 · 0 评论 -
spring boot 获取所有属性
@AutowiredEnvironment env;@GetMapping("properties")public Map<String, Object> allProperties() { Map<String, Object> map = new HashMap<>(); map.put("activeProfiles", env....原创 2020-02-11 19:57:25 · 1501 阅读 · 0 评论 -
maven使用java8
使用Intellij IDEA打开maven项目时常常会出现jdk版本过低的问题,默认IDEA设置的jdk版本为jdk1.5,如果要默认使用java8只需要在pom.xml文件中添加如下的配置: <properties> <maven.compiler.target>1.8</maven.compiler.target> &...原创 2018-04-16 23:48:46 · 9867 阅读 · 0 评论 -
使用java api操作hdfs
参考: https://blog.csdn.net/jiecxy/article/details/780116301. 首先创建一个maven项目,添加如下的hadoop-client依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" ...原创 2018-04-16 23:59:46 · 836 阅读 · 0 评论 -
tomcat8.5进入管理界面
参考: https://blog.csdn.net/supersyd/article/details/52075254tomcat8.5相比之前的tomcat进入manger管理界面需要多一些设置1. 首先修改 conf/tomcat-users.xml 文件<role rolename="manager-gui"/><role rolename="manager-script...原创 2018-04-25 23:00:06 · 10487 阅读 · 0 评论 -
zookeeper完全分布式安装
zookeeper是一个开源的分布式协调服务在hadoop和各种分布式系统中应用广泛。操作系统: centos7zookeeper3.4.12下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.12/zookeeper-3.4.12.tar.gz1 准备工作首先准备三台centos...原创 2018-07-22 16:23:49 · 4467 阅读 · 1 评论 -
hbase完全分布式安装
参考: https://blog.csdn.net/clypm/article/details/79496934本文介绍hbase在集群中的分布式安装教程,由于hbase需要依赖于hadoop和zookeeper集群,所有首先需要安装准备好hadoop和zookeeper集群,可以参看前面的文章:hadoop安装 https://blog.csdn.net/sjhuangx/articl...原创 2018-07-22 16:50:22 · 9681 阅读 · 3 评论 -
ubuntu下编译openJDK11
1. 环境准备ubuntu18.04gcc 7.4.0openJDK源码(https://github.com/unofficial-openjdk/openjdk/archive/jdk-11+28.tar.gz)2. 配置bootstrap JDK下载jdk11然后解压缩到/opt/jdk-11.0.1目录下,配置环境变量/etc/profileexport J...原创 2019-07-09 22:26:41 · 1125 阅读 · 0 评论 -
Antlr4在windows10环境下配置
Antlr4是一个语法解析器生成器,本文介绍antlr4在windows10下的配置1. 安装JAVAantlr4是使用Java编写的,所以需要先安装java环境,jdk下载地址为:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html, 下载完成后点击下一步即可完成安...原创 2019-08-18 22:16:19 · 1997 阅读 · 3 评论 -
Antlr4实现计算器程序
本文介绍使用Antlr4实现一个支持四则运算的程序,关于Antlr4的安装可以参考上一篇文章。工具:Intellij IDEA + antlr4 plugin1. 编辑antlr4的语法文件grammar LabelExpr;/** 起始规则 语法分析器起点 */prog: stat+ ;stat: expr NEWLINE # printExpr ...原创 2019-08-23 22:24:15 · 1835 阅读 · 0 评论 -
Java中Fork/Join示例
import java.util.concurrent.ForkJoinPool;import java.util.concurrent.ForkJoinTask;import java.util.concurrent.RecursiveTask;public class SumTask extends RecursiveTask<Long> { static f...原创 2019-09-29 22:13:26 · 223 阅读 · 0 评论 -
Apache shiro示例
参考教程: https://shiro.apache.org/tutorial.htmlApache Shiro是一个权限管理框架,本文是一个简单的示例新建一个maven功能,加入shiro依赖 <dependency> <groupId>org.apache.shiro</groupId> <...原创 2018-03-09 17:24:27 · 367 阅读 · 0 评论 -
iBase4j项目搭建
iBase4j是一个Java分布式开发平台,整合了目前Java开发常用的开发框架,官网上介绍如下:iBase4J是Java语言的分布式系统架构。 使用Spring整合开源框架。使用Maven对项目进行模块化管理,提高项目的易开发性、扩展性。系统包括5个子系统:公共功能、系统管理Service、系统管理Web、业务Service、业务Web。公共功能:公共功能(AOP、缓存、基类、调度等等)、公共配...原创 2018-03-14 21:00:26 · 2389 阅读 · 1 评论 -
java选择排序、冒泡排序和插入排序实现
排序是将一组“无序”的记录序列调整为“有序”的序列的操作。最简单的排序算法有选择排序、冒泡排序和插入排序。package com.sjhuangx.Sort;public class popSort { public static void printArray(int[] a) { for (int i = 0; i < a.length; i++) { System.ou原创 2015-09-11 17:05:57 · 451 阅读 · 0 评论 -
ubuntu下安装hadoop
hadoop是最近比较火热的开源大数据平台,是使用Java创建的,因此需要先安装Java环境。1. 安装Java到Oracle官网上下载linux版本的JDK,http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html,点击下载即可 将Java移动到/opt目录下并解压,sudo mv jd原创 2015-11-22 22:05:38 · 481 阅读 · 0 评论 -
Java学习笔记(01)--基本类型
Java的基本类型主要有八种:六种数字类型、字符类型和布尔类型: 1. 整数:int(32bits)、short(16bits)、byte(8bits)、long(64bits) 2. 浮点型:float(32bits)、double(64bits) 3. 字符:char(16bits) 4. 布尔:boolean 初始值为false基本类型只定义了类型的从存储方式,不包含类型的操作,而在原创 2016-04-08 13:30:47 · 323 阅读 · 0 评论 -
Hashmap和Hashtable区别
本文转载自: http://blog.csdn.net/ago52030/article/details/22870411 HashMap不是线程安全的 hastmap是一个接口 是map接口的子接口,是将键映射到值的对象,其中键和值都是对象,并且不能包含重复键,但可以包含重复值。HashMap允许null key和null value,而ha转载 2016-04-25 22:26:51 · 354 阅读 · 0 评论 -
leetcode之ZigZag Conversion
题目:Java题解:public class Solution { public static String convert(String s, int numRows) { if(numRows <= 1) { return s; } StringBuilder sb = new Stri原创 2016-07-10 10:45:03 · 504 阅读 · 0 评论 -
Intellij Idea识别Java Web项目
使用maven生成一个Java项目,手动添加相应的web目录WEB_INF,web.xml等,此时idea没有自动识别为web项目,此时编辑web.xml文件会出现一些不该出现的错误,需要做的就是让idea识别为web项目。打开project structure,添加一个facets,选择web,选中需要识别为web项目的模块,然后点击确定后idea会自动添加项目描述文件web.x原创 2016-07-21 12:17:39 · 7859 阅读 · 1 评论 -
使用Java实现7大排序算法
Java代码import java.util.Arrays;public class Sort { public Sort() { } /** * 1. 选择排序 * * @param arr 需要排序的数组 */ public void selectSort(int[] arr) { for (int i = 0;原创 2016-08-23 14:26:44 · 893 阅读 · 0 评论 -
maven使用deploy发布到本地仓库
使用maven可以方便的开发好的jar包发布到本地仓库中,方便其他项目依赖使用,在pom.xml文件中添加如下的配置: <distributionManagement> <repository> <id>localRepository</id> <url>file:D:/Workspace/Repository</url>原创 2017-05-10 13:18:47 · 8123 阅读 · 0 评论 -
maven关闭jdoclint文档检查
使用jdk8和maven打包项目是默认会对源码中的jdoc进行语法检查,如果有语法错误会报错如下:警告 @param 没有说明错误 @param name 没有说明错误 @param name 未找到...对于以前的项目升级到jdk8来说没有必要进行这么严格的文档语法检查,可以选择进行关闭,在pom.xml文件中添加如下的配置即可:<plugin> <groupId>org.apac原创 2017-05-10 13:25:29 · 1757 阅读 · 0 评论 -
使用maven打包发布源码
使用maven-source-plugin插件将项目源码打包并发布到仓库中,在pom.xml配置文件中添加如下的配置代码:<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>3.0.1</version> <原创 2017-09-17 20:05:30 · 5249 阅读 · 0 评论 -
使用maven打包发布源码
使用maven-source-plugin插件可以自动将源码打包并发布到仓库中,在pom.xml文件中添加如下配置:<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>3.0.1</version> <con原创 2017-09-17 20:30:00 · 1953 阅读 · 0 评论 -
A Little Java, A fewer Patterns
The First Bit of AdviceWhen specigying a collection of data, use abstract classes for datatypes and extended classes for variants.The Second Bit of AdviceWhen writing a function over a datatype, place原创 2017-12-19 22:01:17 · 795 阅读 · 0 评论 -
java中static作用
java中static作用详解标签: java staticstatic表示“全局变量”的意思,用来修饰成员变量和成员方法,也可以形成静态代码块,但是java语言中没有全局变量的概念。被static修饰的成员变量和成员方法独立于该类的任何对象,也就是说,它不依赖与特定的实例,被类所有实例共享。只要这个类被夹在,java虚拟机就能根据类名在运行时数据区的方法区内找到它们,因此,static对象可以在它原创 2015-08-09 17:05:39 · 457 阅读 · 0 评论