- 【LINUX】在ubuntu中安装tomcat
缘起性本空
linux运维服务器
#instaljdkaptinstallopenjdk-8-jdk-y#enterinstallpathcd/home/a/#copytomcatpackagecp/mnt/hgfs/Share/apache-tomcat-9.0.93.tar.gz.#unpresstomcatpackagetar-xfapache-tomcat-9.0.93.tar.gz#enterbinpathcdapach
- Java面试必问之Hashmap底层实现原理(JDK1.7)
当我遇上你csy
Java基础javahashmap面试源码
1.前言Hashmap可以说是Java面试必问的,一般的面试题会问:Hashmap有哪些特性?Hashmap底层实现原理(get\put\resize)Hashmap怎么解决hash冲突?Hashmap是线程安全的吗?…今天就从源码角度一探究竟。笔者的源码是OpenJDK1.72.构造方法首先看构造方法的源码//默认初始容量staticfinalintDEFAULT_INITIAL_CAPACIT
- 长安链java-sdk打成jar包部署找不到配置文件,springBoot项目制作Docker镜像
FAFU_kyp
长安链JAVA基础知识#Dockerjavajar开发语言长安链
长安链使用sdk_config.yml的形式来引入用户的各种证书文件,但是打成jar包部署在服务器上会提示找不到文件。由于国内对镜像的限制,我选用了阿里的龙蜥镜像,里面提供java1.8的环境,因为长安链要1.8的环境dockerpull anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/openjdk:8-8.6解决方案就是制作成
- Centos安装OpenJDK
一棵星
centoslinux运维
安装OpenJDK使用yum包管理器搜索可用的OpenJDK包sudoyumsearchopenjdk注意:我们在选择JDK不要选择OpenJDKRuntimeEnviroment,因为它不支持jps,jmap等命令,如下图:应该选择OpenJDKDevelopmentEnviroment,它支持常用的堆栈分析指令。根据你的需求选择合适的OpenJDK版本进行安装sudoyuminstalljav
- 在 ARM 架构的 CentOS 上安装 OpenJDK 1.8
亦诗亦诗
arm开发架构centosjava
在ARM架构的CentOS上安装OpenJDK1.8更新系统在终端中执行以下命令,确保系统软件包是最新的:sudoyumupdate安装OpenJDK1.8执行以下命令来安装OpenJDK1.8:sudoyuminstalljava-1.8.0-openjdk如果你需要安装JDK(包括开发工具),可以使用以下命令:sudoyuminstalljava-1.8.0-openjdk-devel验证安装
- clickhouse-v24.1-离线部署
Wonderful呀
数据库clickhouse数据库运维linux
部署版本数据库版本:24.1.1.2048jdk版本:jdk84个文件(三个ck的包):OpenJDK8U-jdk_x64_linux_hotspot_8u382b05.tarclickhouse-client-24.1.1.2048.x86_64.rpmclickhouse-common-static-24.1.1.2048.x86_64.rpmclickhouse-server-24.1.1.
- Ubuntu 16.04安装Java JDK
一杯茶一本书
JavaJDK有两个版本,一个开源版本Openjdk,还有一个oracle官方版本jdk。下面记录在Ubuntu16.04上安装JavaJDK的步骤。安装openjdk的步骤更新软件包列表:sudoapt-getupdate安装openjdk-8-jdk:sudoapt-getinstallopenjdk-8-jdk查看java版本:java-version安装oracleJavaJDK首先,安装
- spring boot docker 部署
王冲_4ca9
创建Dockfile在pom.xml同级目录下新建DockfileFROMregistry.docker-cn.com/library/openjdk:8-jdk-alpineMAINTAINERwangchongENTRYPOINT["/usr/bin/java","-jar","/usr/share/h3p-ws/app.jar"]RUNecho"Asia/Shanghai">/etc/tim
- 部署EFK收集日志
专业手机贴膜
Eselasticsearch
时间同步:yum-yinstallntpdatentpdatentp1.aliyun.com安装java:yuminstalljava-1.8.0-openjdk-y部署ESwgethttps://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.1.rpmrpm-ivhelasticsearch-6.4.1.rpm##安
- kafka3.7.1 单节点 KRaft部署&测试发送和接收消息
运维小弟| srebro.cn
openeulerkafka运维运维云原生
一、环境准备kafka3.7.1包下载地址:https://mirrors.nju.edu.cn/apache/kafka/3.7.1/kafka_2.13-3.7.1.tgzopenjdk11.0.2下载地址:https://mirrors.nju.edu.cn/openjdk/11.0.2/openjdk-11.0.2_linux-x64_bin.tar.gz二、openjdk安装【如已安装,
- linux-centos等测试环境做压力测试
远方的、远方的、、、
自动化测试linuxcentos压力测试
一,jmeter环境安装1,jdk下载安装因为jmeter使用Java写的测试工具,应用需要jdk环境支持.yum-yinstalljava-1.8.0-openjdk*注意:【jdk和*通配符之间不能敲空格,有空格不能匹配所有的子文件】【安装过程中需要等待它执行完成,不要中途中断,中断后可能出现错误,出现错误可以尝试卸载Java后重新安装】java-version查看是否安装成功2,jmeter
- linux安装java -centos安装java -linux配置java环境变量
shuair
环境配置linuxjavacentos
下载jdk推荐下载jdk-8u202-linux-x64.tar.gz下载页面:https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html下载时注意版本号,下载需要登录安装jdk#如果服务器中已存在openjdk等组件时,可以选择直接使用,或者卸载后安装自己下载的jdk#在/usr/local下创建j
- EMR组件部署指南
ivwdcwso
运维EMR大数据开源运维
EMR(ElasticMapReduce)是一个大数据处理和分析平台,包含了多个开源组件。本文将详细介绍如何部署EMR的主要组件,包括:JDK1.8ElasticsearchKafkaFlinkZookeeperHBaseHadoopPhoenixScalaSparkHive准备工作所有操作都在/data目录下进行。首先安装JDK1.8:yuminstalljava-1.8.0-openjdk部署
- 制作Docker镜像,用来编译OpenJDK11源码
2401_83329718
程序员docker容器运维
今天我们就来看下Docker镜像bolingcavalry/buildopenjdk11:0.0.2的制作过程,看看它做了哪些事情来简化下载过程;参考文章如果您打算在真实Linxu环境下编译OpenJDK11源码,可以参照《Ubuntu环境编辑OpenJDK11源码》;环境信息操作系统:Ubuntu16.04.5LTS;Docker:18.06.1-ce;准备材料本次镜像用到了以下材料:Docke
- hadoop常用地址
静听山水
Sparkhadoop
java:"/opt/homebrew/Cellar/openjdk/22.0.1/libexec/openjdk.jdk/Contents/Home"hadoop:1】sbin:/opt/homebrew/sbin2】home:/opt/homebrew/Cellar/hadoop/3.4.02】log:/opt/homebrew/Cellar/hadoop/3.4.0/libexec/logs
- 服务器(百度云)部署项目(jar包)
码农sssss
jarjava
java项目打包成jar包:clean------compile------installjar包上传到服务器上和jar包相同的文件里,创建Dockerfile文件。Dockerfile文件的内容informationerasure是jar包名,这里可根据自己定义的名字进行更换。Dockerfile文件内容,如下:FROMopenjdk:8-jdk-alpineVOLUME/tmp##时区RUNe
- CentOS 上安装 Java 17
iteye_10392
javacentosjavalinux
要在CentOS上安装Java17,您可以使用多种方法。这里我将向您展示如何通过下载Oracle提供的Java开发工具包(JDK)或使用其他开源JDK版本(如Adoptium或OpenJDK)来完成安装。方法一:使用OracleJDK17下载JDK17:访问Oracle的官方网站下载适用于Linux的JDK17。请注意,Oracle的JDK可能需要您接受许可协议才能下载。安装JDK17:下载完成后
- pulsar集群部署
Dragon-qwe
springbootlinux
Linux安装openjdk11下载openjdk11openjdk11下载压缩包上传到指定路径并解压tar-xvfopenjdk-11.0.0.2_linux-x64.tar.gz&&mvjdk-11.0.0.2/jdk11配置指定用户的环境变量vi~/.bash_profile#末尾增加如下内容(根据自己jdk目录修改)exportJAVA_HOME=/yourpath/jdk-11expor
- centos7安装jdk17
小丛的知识窝
java
AmazonCorretto是亚马逊提供的一个免费的、兼容OpenJDK的JDK发行版。以下是在CentOS7系统上安装AmazonCorrettoJDK17的步骤:下载AmazonCorrettoJDK:wgethttps://corretto.aws/downloads/latest/amazon-corretto-17-x64-linux-jdk.tar.gz解压JDK17文件:在服务器上执
- Linux Ubuntu配置jdk的两种方法
没有胡子的猫
Linux工具javajdklinux
1.shell中自动安装openJDKjdk11sudoaptinstallopenjdk-11-jre-headlessjdk8sudoaptinstallopenjdk-8-jre-headless卸载sudoaptautoremoveopenjdk-11-jre-headless2.手动下载安装官网1.下载后解压到/opt/jdk13/2.修改配置文件sudogedit/etc/profil
- 在Ubuntu下搭建开发环境
关于本文写作目标:作为在linux下安装JDK、MySQL、Zookeeper、Redis、MongoDB、RabbitMQ等开发组件的快速参考指南Linux版本:LinuxMint18.2Sonya(基于Ubuntu16.04Xenial)实战记录JAVAOpenJDK1sudoaptinstallopenjdk-8-jdkMySQL23安装wgethttps://dev.mysql.com/g
- jenkins自动化部署
狂loong人生
技术jenkinsci/cd
Jenkins安装安装前提条件yuminstalljava-1.8.0-openjdk*gitmaven-y1.下载jenkinswgethttps://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/jenkins-2.346-1.1.noarch.rpm--no-check-certificatejenkins的安装路径:/var/lib/jenki
- Android项目jenkins自动化打包
水中波纹-zbw
android技能androidjenkins
Android项目jenkins自动化打包1.jenkins安装步骤下载jenkins安装包:https://jenkins.io/zh/download/卸载openjdk,如果云服务有openjdk,需要卸载:https://www.cnblogs.com/yyjf/p/10287301.html开放端口,云服务器的安全组配置端口8899(随便选择),如果服务器安装了宝塔,还需要开通宝塔的对应
- kafka命令行操作
叶惠美zz
kafka
kafka命令行操作:配置环境变量:exportJAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdkexportJRE_HOME=${JAVA_HOME}/jreexportCLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATHexportJAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME
- 如何在云服务器 ECS 安装 Tomcat
以礼同航
我已经分享《如何在云服务器ECS安装MySQL》和《如何在云服务器ECS安装Nginx》。为了搭建Angular+SpringBootREST+MySQL的项目,还需安装Tomcat。第一步,先安装JDK:使用yum命令搜寻一下openjdk的包:[root@VM-0-10-centos~]#yumlist|grepopenjdk*java-1.8.0-openjdk.x86_641:1.8.0.
- Mac OpenJDK jdk12编译
hello_zzw
Javajdk12javamac
需要的材料OpenJDK12源码下载browse可以看到jdk12的目录zip下载源码OpenJDK11下载准备环境brew--安装/bin/bash-c"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install.sh)"其它配置brewinstallccache//加速编译brewinstallfre
- AdoptOpenJDK8下载,拥抱开源,oracle再见
bronya0
javaopenjdkoraclelinux数据库
什么是AdoptOpenJDK?引用官方的话,AdoptOpenJDK是免费预建的OpenJDK二进制版!所有AdoptOpenJDK二进制文件和脚本都是开源并免费提供。为什么不用OracleOpenJDK?oracle自己的openJDK类似滚服的形式,开完了一个版本就不再更新,关闭仓库,是所有OpenJDK的上游,因为不更新意味着安全问题、性能补丁等等,各大厂商在OpenJDK的基础上构建了自
- Docker打包离线镜像到本地,上传解压到服务器
dkbnull
Docker从零单排docker服务器容器
在我们部署Docker镜像时,难免会遇到服务器没有网络情况,Centos7离线安装Docker这篇文章中,我们已经离线安装Docker完成,现在需要离线创建容器。1查看所有镜像dockerimages注:如果我们想打包本服务器没有的镜像,可以先将镜像拉下来,比如dockerpullopenjdk:82打包镜像到服务器指定目录dockersavemysql>/root/test/mysql.tarm
- 在 CentOS 上安装 JDK 1.8
燃灯工作室
centosjavalinux
要在CentOS上安装JDK1.8,您可以按照以下步骤进行操作:打开终端(命令行界面)。检查您的系统是否已经配置了正确的软件源。可以执行以下命令来更新软件包索引:sudoyumupdate使用以下命令安装OpenJDK1.8:sudoyuminstalljava-1.8.0-openjdk如果您需要安装OracleJDK1.8,可以按照以下步骤操作:首先,访问Oracle官方网站(https://
- mac安装openjdk
他҈姓҈林҈
环境配置macosjava经验分享
解压linxiang@192~%cd/Users/linxiang/Worklinxiang@192Work%ls-alltotal379032drwxr-xr-x7linxiangstaff22421517:10.drwxr-x---+27linxiangstaff86421517:16..-rw-r--r--@1linxiangstaff614821517:10.DS_Storedrwxr-x
- eclipse maven
IXHONG
eclipse
eclipse中使用maven插件的时候,运行run as maven build的时候报错
-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.
可以设一个环境变量M2_HOME指
- timer cancel方法的一个小实例
alleni123
多线程timer
package com.lj.timer;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class MyTimer extends TimerTask
{
private int a;
private Timer timer;
pub
- MySQL数据库在Linux下的安装
ducklsl
mysql
1.建好一个专门放置MySQL的目录
/mysql/db数据库目录
/mysql/data数据库数据文件目录
2.配置用户,添加专门的MySQL管理用户
>groupadd mysql ----添加用户组
>useradd -g mysql mysql ----在mysql用户组中添加一个mysql用户
3.配置,生成并安装MySQL
>cmake -D
- spring------>>cvc-elt.1: Cannot find the declaration of element
Array_06
springbean
将--------
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3
- maven发布第三方jar的一些问题
cugfy
maven
maven中发布 第三方jar到nexus仓库使用的是 deploy:deploy-file命令
有许多参数,具体可查看
http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html
以下是一个例子:
mvn deploy:deploy-file -DgroupId=xpp3
- MYSQL下载及安装
357029540
mysql
好久没有去安装过MYSQL,今天自己在安装完MYSQL过后用navicat for mysql去厕测试链接的时候出现了10061的问题,因为的的MYSQL是最新版本为5.6.24,所以下载的文件夹里没有my.ini文件,所以在网上找了很多方法还是没有找到怎么解决问题,最后看到了一篇百度经验里有这个的介绍,按照其步骤也完成了安装,在这里给大家分享下这个链接的地址
- ios TableView cell的布局
张亚雄
tableview
cell.imageView.image = [UIImage imageNamed:[imageArray objectAtIndex:[indexPath row]]];
CGSize itemSize = CGSizeMake(60, 50);
&nbs
- Java编码转义
adminjun
java编码转义
import java.io.UnsupportedEncodingException;
/**
* 转换字符串的编码
*/
public class ChangeCharset {
/** 7位ASCII字符,也叫作ISO646-US、Unicode字符集的基本拉丁块 */
public static final Strin
- Tomcat 配置和spring
aijuans
spring
简介
Tomcat启动时,先找系统变量CATALINA_BASE,如果没有,则找CATALINA_HOME。然后找这个变量所指的目录下的conf文件夹,从中读取配置文件。最重要的配置文件:server.xml 。要配置tomcat,基本上了解server.xml,context.xml和web.xml。
Server.xml -- tomcat主
- Java打印当前目录下的所有子目录和文件
ayaoxinchao
递归File
其实这个没啥技术含量,大湿们不要操笑哦,只是做一个简单的记录,简单用了一下递归算法。
import java.io.File;
/**
* @author Perlin
* @date 2014-6-30
*/
public class PrintDirectory {
public static void printDirectory(File f
- linux安装mysql出现libs报冲突解决
BigBird2012
linux
linux安装mysql出现libs报冲突解决
安装mysql出现
file /usr/share/mysql/ukrainian/errmsg.sys from install of MySQL-server-5.5.33-1.linux2.6.i386 conflicts with file from package mysql-libs-5.1.61-4.el6.i686
- jedis连接池使用实例
bijian1013
redisjedis连接池jedis
实例代码:
package com.bijian.study;
import java.util.ArrayList;
import java.util.List;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoo
- 关于朋友
bingyingao
朋友兴趣爱好维持
成为朋友的必要条件:
志相同,道不合,可以成为朋友。譬如马云、周星驰一个是商人,一个是影星,可谓道不同,但都很有梦想,都要在各自领域里做到最好,当他们遇到一起,互相欣赏,可以畅谈两个小时。
志不同,道相合,也可以成为朋友。譬如有时候看到两个一个成绩很好每次考试争做第一,一个成绩很差的同学是好朋友。他们志向不相同,但他
- 【Spark七十九】Spark RDD API一
bit1129
spark
aggregate
package spark.examples.rddapi
import org.apache.spark.{SparkConf, SparkContext}
//测试RDD的aggregate方法
object AggregateTest {
def main(args: Array[String]) {
val conf = new Spar
- ktap 0.1 released
bookjovi
kerneltracing
Dear,
I'm pleased to announce that ktap release v0.1, this is the first official
release of ktap project, it is expected that this release is not fully
functional or very stable and we welcome bu
- 能保存Properties文件注释的Properties工具类
BrokenDreams
properties
今天遇到一个小需求:由于java.util.Properties读取属性文件时会忽略注释,当写回去的时候,注释都没了。恰好一个项目中的配置文件会在部署后被某个Java程序修改一下,但修改了之后注释全没了,可能会给以后的参数调整带来困难。所以要解决这个问题。
&nb
- 读《研磨设计模式》-代码笔记-外观模式-Facade
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
* 百度百科的定义:
* Facade(外观)模式为子系统中的各类(或结构与方法)提供一个简明一致的界面,
* 隐藏子系统的复杂性,使子系统更加容易使用。他是为子系统中的一组接口所提供的一个一致的界面
*
* 可简单地
- After Effects教程收集
cherishLC
After Effects
1、中文入门
http://study.163.com/course/courseMain.htm?courseId=730009
2、videocopilot英文入门教程(中文字幕)
http://www.youku.com/playlist_show/id_17893193.html
英文原址:
http://www.videocopilot.net/basic/
素
- Linux Apache 安装过程
crabdave
apache
Linux Apache 安装过程
下载新版本:
apr-1.4.2.tar.gz(下载网站:http://apr.apache.org/download.cgi)
apr-util-1.3.9.tar.gz(下载网站:http://apr.apache.org/download.cgi)
httpd-2.2.15.tar.gz(下载网站:http://httpd.apac
- Shell学习 之 变量赋值和引用
daizj
shell变量引用赋值
本文转自:http://www.cnblogs.com/papam/articles/1548679.html
Shell编程中,使用变量无需事先声明,同时变量名的命名须遵循如下规则:
首个字符必须为字母(a-z,A-Z)
中间不能有空格,可以使用下划线(_)
不能使用标点符号
不能使用bash里的关键字(可用help命令查看保留关键字)
需要给变量赋值时,可以这么写:
- Java SE 第一讲(Java SE入门、JDK的下载与安装、第一个Java程序、Java程序的编译与执行)
dcj3sjt126com
javajdk
Java SE 第一讲:
Java SE:Java Standard Edition
Java ME: Java Mobile Edition
Java EE:Java Enterprise Edition
Java是由Sun公司推出的(今年初被Oracle公司收购)。
收购价格:74亿美金
J2SE、J2ME、J2EE
JDK:Java Development
- YII给用户登录加上验证码
dcj3sjt126com
yii
1、在SiteController中添加如下代码:
/**
* Declares class-based actions.
*/
public function actions() {
return array(
// captcha action renders the CAPTCHA image displ
- Lucene使用说明
dyy_gusi
Lucenesearch分词器
Lucene使用说明
1、lucene简介
1.1、什么是lucene
Lucene是一个全文搜索框架,而不是应用产品。因此它并不像baidu或者googleDesktop那种拿来就能用,它只是提供了一种工具让你能实现这些产品和功能。
1.2、lucene能做什么
要回答这个问题,先要了解lucene的本质。实际
- 学习编程并不难,做到以下几点即可!
gcq511120594
数据结构编程算法
不论你是想自己设计游戏,还是开发iPhone或安卓手机上的应用,还是仅仅为了娱乐,学习编程语言都是一条必经之路。编程语言种类繁多,用途各 异,然而一旦掌握其中之一,其他的也就迎刃而解。作为初学者,你可能要先从Java或HTML开始学,一旦掌握了一门编程语言,你就发挥无穷的想象,开发 各种神奇的软件啦。
1、确定目标
学习编程语言既充满乐趣,又充满挑战。有些花费多年时间学习一门编程语言的大学生到
- Java面试十问之三:Java与C++内存回收机制的差别
HNUlanwei
javaC++finalize()堆栈内存回收
大家知道, Java 除了那 8 种基本类型以外,其他都是对象类型(又称为引用类型)的数据。 JVM 会把程序创建的对象存放在堆空间中,那什么又是堆空间呢?其实,堆( Heap)是一个运行时的数据存储区,从它可以分配大小各异的空间。一般,运行时的数据存储区有堆( Heap)和堆栈( Stack),所以要先看它们里面可以分配哪些类型的对象实体,然后才知道如何均衡使用这两种存储区。一般来说,栈中存放的
- 第二章 Nginx+Lua开发入门
jinnianshilongnian
nginxlua
Nginx入门
本文目的是学习Nginx+Lua开发,对于Nginx基本知识可以参考如下文章:
nginx启动、关闭、重启
http://www.cnblogs.com/derekchen/archive/2011/02/17/1957209.html
agentzh 的 Nginx 教程
http://openresty.org/download/agentzh-nginx-tutor
- MongoDB windows安装 基本命令
liyonghui160com
windows安装
安装目录:
D:\MongoDB\
新建目录
D:\MongoDB\data\db
4.启动进城:
cd D:\MongoDB\bin
mongod -dbpath D:\MongoDB\data\db
&n
- Linux下通过源码编译安装程序
pda158
linux
一、程序的组成部分 Linux下程序大都是由以下几部分组成: 二进制文件:也就是可以运行的程序文件 库文件:就是通常我们见到的lib目录下的文件 配置文件:这个不必多说,都知道 帮助文档:通常是我们在linux下用man命令查看的命令的文档
二、linux下程序的存放目录 linux程序的存放目录大致有三个地方: /etc, /b
- WEB开发编程的职业生涯4个阶段
shw3588
编程Web工作生活
觉得自己什么都会
2007年从学校毕业,凭借自己原创的ASP毕业设计,以为自己很厉害似的,信心满满去东莞找工作,找面试成功率确实很高,只是工资不高,但依旧无法磨灭那过分的自信,那时候什么考勤系统、什么OA系统、什么ERP,什么都觉得有信心,这样的生涯大概持续了约一年。
根本不是自己想的那样
2008年开始接触很多工作相关的东西,发现太多东西自己根本不会,都需要去学,不管是asp还是js,
- 遭遇jsonp同域下变作post请求的坑
vb2005xu
jsonp同域post
今天迁移一个站点时遇到一个坑爹问题,同一个jsonp接口在跨域时都能调用成功,但是在同域下调用虽然成功,但是数据却有问题. 此处贴出我的后端代码片段
$mi_id = htmlspecialchars(trim($_GET['mi_id ']));
$mi_cv = htmlspecialchars(trim($_GET['mi_cv ']));
贴出我前端代码片段:
$.aj