- EasyPOI入门
傲雪凌霜,松柏长青
后端开发语言java
EasyPOI入门前言EasyPOI是一个基于ApachePOI的Java库,用于简化Excel文档的导入和导出操作。EasyPOI通过注解的方式,极大地减少了代码量和复杂度,使得Excel操作变得更加简单直观。本篇博客将介绍如何使用EasyPOI进行Excel文件的导入和导出操作。一、引入EasyPOI依赖首先,在你的项目中引入EasyPOI的依赖。这里以Maven项目为例,添加以下依赖到pom
- 基于Spring Boot构建一个点餐系统
鹿屿二向箔
springboot后端java
基于SpringBoot构建一个点餐系统是一个很好的学习机会,可以帮助你掌握如何使用SpringBoot框架来开发一个完整的Web应用程序。下面是一个简化的示例,展示了如何构建一个基本的点餐系统。1.创建SpringBoot项目首先,你需要创建一个新的SpringBoot项目。可以使用SpringInitializr来快速生成基础项目:项目类型:MavenProject依赖项:SpringWeb,
- Log4j日志脱敏记录一下
IAmZRH
JAVAjavalog4j
前言在项目上线环境中,需要记录程序运行时产生的各种错误信息、状态信息、调试信息、执行时间记录等日志信息。可以用于查找问题、定位数据等等操作。日志的具体实现可以有log4j和logback等,这里我们使用SLF4J作为日志系统的实现。使用SLF4J使用idea工具可以安装lombok插件,并引入maven包:org.projectlomboklombok1.18.4在需要打印日志的类上增加@Slf4
- log4j2 与 log4j使用时的几点小区别 - log4j2上手说明
CoderCodingNo
Java学习log4j单元测试
虽然log4j2目前还是beta版,不过OneCoder已经忍不住要尝试一下。跟使用log4j比起来,上手上主要的区别有。1、依赖的jar包。使用slf4j+log4j2时,依赖的jar包如下:(gradle配置,Maven对照修改即可)dependencies{compile("org.apache.logging.log4j:log4j-api:$log4j_version","org.apa
- maven工程使用sonar
tommyhxh
maven项目配置maven的setting.xml文件Maven插件会自动把所需数据(如单元测试结果、静态检测结果等)上传到Sonar服务器上,Sonar的配置并不在每个工程的pom.xml文件里,而是在Maven的配置文件settings.xml里。在标签添加:sonartruejdbc:mysql://10.16.8.96:3306/sonar?useUnicode=true&cha
- SpringBoot Maven 升级自带jar包版本
呆呆a
jarmavenspringboot
当SpringBoot自带jar包版本较低时如图:想要升级log4j-to-slf4j到更高版本,需要在pom.xml文件中做修改:org.springframework.bootspring-boot-starterorg.apache.logging.log4jlog4j-to-slf4jorg.apache.logging.log4jlog4j-to-slf4j2.17.0org.apach
- springboot指定依赖jar版本
m0_67402235
javajava后端
项目是maven父子项目结构如下:有多个子项目,因为springboot版本采用的是1.5.所以默认导入的elasticsearch版本是1.2.,而我们的集群是6.*的版本,试了很多次最后解决问题如下:在父pom的dependencyManagement中添加指定版本就可以了因为!!!父pom中指定版本优先级最高,所以可以解决子依赖pom中的版本问题。子模块只需要引入就可以了
- 教你快速搭建微服务环境
糖心何包蛋·
微服务javaspringboot
目录一、项目搭建1.父项目搭建2.子项目的搭建二、项目展示一、项目搭建1.父项目搭建步骤:1选择maven项目作为父项目,修改为1.8之后直接点击next2定义父项目的名称,修改ArtifctCoordinates--->GroupId然后点击finsh就可以啦3修改pom.xml1选择maven项目作为父项目,修改为1.8之后直接点击next2定义父项目的名称,修改ArtifctCoordina
- PDF读取表格写入EXCEL
妙明元心
pdfexceljava
声明:只记录,不推荐,因为e-iceblue的spire.pdf是收费的,要licence。pom引入com.e-icebluee-icebluehttps://repo.e-iceblue.cn/repository/maven-public/e-icebluespire.pdf10.7.3e-icebluespire.xls14.7.7demo代码:importcom.spire.pdf.Fi
- 利用spring-boot-thin-launcher插件分离jar包的依赖和配置
飞空之羽
技术文章springbootmaven
SpringBoot项目可以通过spring-boot-maven-plugin插件打包生成一个可执行的jar包,这样可以脱离web容器(例如tomcat)直接运行。但默认情况下spring-boot-maven-plugin打出来的包是一个fatjar,即将所有的依赖全部打进了jar包当中,这样的jar包体积很大,每次更新系统的时候都需要完整替换整个jar包(本地还好,如果是云服务器,网速慢了每
- org/springframework/boot/maven/RepackageMojo has been compiled by a more recent version of the Java
爱摄影的程序猿
java
项目场景:项目中执行clean,再执行install时报错,错误如下org/springframework/boot/maven/RepackageMojohasbeencompiledbyamorerecentversionoftheJavaRuntime(classfileversion61.0),thisversionoftheJavaRuntimeonlyrecognizesclassfi
- Ubuntu中安装Maven
不爱开发的干饭人
ubuntulinux运维
1.更新源列表sudoaptupdate2.安装sudoaptinstallmaven3.验证mvn-v4.配置阿里源用下列setting文件替换/usr/share/maven/conf下的settings.xml/path/to/local/repo-->true-->false-->com.your.plugins-->optionaltruehttpproxyuserproxypasspr
- 基于SSM源代码风格Java代码生成器 Maven版开箱即用 摸鱼神器
赛先生和泰先生
一、序言UCodeCms是一款Maven版的Java源代码生成器,是快速构建项目的利器。代码生成器模块属于可拆卸模块,即按需引入。代码生成器生成SSM(Spring、SpringBoot、MybatisPlus)风格的源代码。面试时经常提到面向对象编程,实际开发中常常是面向数据库编程,随着需求的快速变化,数据库的库表结构也需要相应变化,如何根据库表结构的变化,快速响应到源代码层次,是Java代码生
- Maven项目结构说明
HachiLin
SpringBootmavenspringboot微服务
1.maven概念是一个基于Java平台的自动化构建工具(make->ant->maven->gradle,它主要有五大功能:(1)清理:删除编译的结果,为重新编译做准备(2)编译:java->class(3)测试:针对与项目中的关键点进行测试,方便开发人员与测试人员交互(4)报告:将测试结果进行显示(5)打包:将项目中包含的多个文件压缩成一个文件,用于安装或部署(java项目打成jar包,web
- Linux - Linux安装部署Maven以及环境变量配置
MinggeQingchun
LinuxMavenlinuxmaven运维
1、下载Maven:前往官网下载最新版的Maven:Maven–DownloadApacheMaven2、解压Maven:将下载的压缩包解压到你希望安装Maven的目录,例如:tar-zxvfapache-maven-3.8.6-bin.tar.gz-C/opt/maven3、配置环境变量:编辑.bashrc或.bash_profile文件,添加以下内容:exportM2_HOME=/opt/ma
- 向项目添加组件
鹿小纯0831
在开始之前,我们建议您阅读“架构组件指南”。该指南包含一些适用于所有Android应用程序的有用原则,并展示了如何将架构组件一起使用。架构组件可从Google的Maven存储库获得。要使用它们,请按照下列步骤操作:一、添加GoogleMaven存储库默认情况下,AndroidStudio项目未配置为访问此存储库。要将其添加到项目中,请打开项目的build.gradle文件(而不是应用程序或模块的文
- Kylin JDBC使用案例
风_间
ApacheKylinJDBCJava数据查询数据库连接
一、新建空的maven工程二、在项目中导入依赖org.apache.kylinkylin-jdbc3.0.2三、编写classpublicclassTestKylin{publicstaticvoidmain(String[]args)throwsException{//Kylin_JDBC驱动StringKYLIN_DRIVER="org.apache.kylin.jdbc.Driver";//
- 5、IDEA MAVEN 项目StartUp
俊果果
一、Maven1、下载点击连接跳转到下载页面image.png下载时不要挂代理,会无法连接2、仓库地址点此链接跳转到MavenRepository3、配置解压下载的zip到文件夹Z:\ProgrammingTools\apache-maven-3.6.0配置环境变量MAVEN_HOMEimage.pngPath环境变量新增mavenbin目录image.png命令行输入mvn-v,以下输出说明配置
- tio websocket 客户端 java 代码 工具类
java知路
websocket网络协议网络
为了更好地组织代码并提高可复用性,我们可以将WebSocket客户端封装成一个工具类。这样可以在多个地方方便地使用WebSocket客户端功能。以下是使用tio库实现的一个WebSocket客户端工具类。1.添加依赖确保项目中添加了tio的依赖。如果使用的是Maven,可以在pom.xml文件中添加以下依赖:com.github.xiaoymintio-core2.1.10com.github.x
- java后端处理前端上传二进制流excel文件
撸不动码的猴子
javajavapoiexcelvue
最近项目中有需要上传excel文档,后端解析入库,项目技术选型springcloud+vue+postgres.后台接收二进制流,使用@RequestParam(value=“file”)MultipartFilefile去接收,然后就是引入poi依赖,进行操作.poi就是对office文件处理的依赖jar包,加入maven加入依赖后,对其进行操作.我把它提取成方法,尽量避免在controller
- 【附源码】计算机毕业设计java智慧后勤系统设计与实现
计算机毕设程序设计
javamybatismysql
项目运行环境配置:Jdk1.8+Tomcat7.0+Mysql+HBuilderX(Webstorm也行)+Eclispe(IntelliJIDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:SSM+mybatis+Maven+Vue等等组成,B/S模式+Maven管理等等。环境需要1.运行环境:最好是javajdk1.8,我们在这个平台上运行的。其他版本理论上也可以。2.ID
- maven项目如何将自定义的jar引入本地仓中,并编译通过
lics10
mavenjar
只需3步,轻松实现自定义jar包引入本地仓。1、在pom.xml文件中加入坐标com.hicap.echannelservice.ncclib//随便写ncclib-jar//随便写1.0//随便指定2、根据以上pom中的依赖,更替填写下方我给你的命令行(-Dfile=、-DgroupId=、-DartifactId=、-Dversion=)。注意-Dfile=后是你jar所在的绝对路径,填写好后
- K8S发布应用步骤详解
cn--萍诚1号
kubernetes
前言首先以SpringBoot应用为例介绍一下k8s的发布步骤。1.从代码仓库下载代码,比如GitLab;2.接着是进行打包,比如使用Maven;3.编写Dockerfile文件,把步骤2产生的包制作成镜像;4.上传步骤3的镜像到远程仓库,比如Harhor;5.编写Deployment文件;6.提交Deployment文件到k8s集群;从以上步骤可以看出,发布需要的工具和环境至少包括:代码仓库(G
- Java Base64加密与解密
Decimon
运行环境:开发工具:IntelliJIDEA2017.1.4开发环境:JDK1.8、Maven3.5.0等(其他没啥影响的就不列举了)步骤:1、在pom.xml添加依赖commons-codeccommons-codec1.10这里用的是Apache的CommonsCodec工具包,一款很好用的工具包,除了base64还有别的用法,具体可以自行去看API,这里不赘述。2、在代码中使用publicc
- NIFI源码Maven打包遇到问题记录
西风凋丶碧树
mavendubbojava
0.maven打包遇到问题打包失败了,不要clean!!!1.文件commons-daemon-1.2.1-bin-windows.zip放在C:\Users\z00050365\AppData\Local\Temp下,不需解压;2.文件swagger-ui-3.12.0.tar.gz解压后放在D:\DataCenter\code\nifi-rel-nifi-1.25.0\nifi-registr
- Maven
天微亮。
mavenjava
Maven基本介绍基本介绍是一个项目管理工具,在本地仓库维护项目需要的jar包重要的配置文件:pom.xml
- 大厂高频面试题复习JAVA学习笔记-学习路线
addaduvyhup
java开发语言
对于应届生,要找到一份java工作,你得大概学会:java基础:javase、jvm、juc、gc、mysql、jdbc,计网计组Java微服务基础Maven→Gradle→Spring6→SpringMVC→MyBatis→MyBatisPlus→SSM->Redis7->SpringBoot2->SpringCloudjava微服务生态:Git-Docker-Elasticsearch→Zoo
- 父类是给java项目SpringCloud微服务 中SpringBoot解决继承父类后 maven标红
不太会写
javaspringbootspringcloud
解决继承父类后maven标红问题:Project:org.example:SpringCloud_wfw:1.0-SNAPSHOTLocation::X:/SpringCloud_微服务/pom.xmlProblems:'packaging'withvalue'jar'isinvalid.Aggregatorprojectsrequire'pom'a父类中packaging改成pomMaven父类
- springboot日志管理
听~宇
SSMspringbootjavalog4j
1.使用logback记录日志Springboot已经默认帮你整合好了logback,日志输出文件在当前项目路径log文件夹下(1)Maven依赖org.projectlomboklombok(2)Logback配置%d%p(%file:%line\)-%m%nUTF-8日志目录,没有会自动创建-->日志策略,每天简历一个日志文件,或者当天日志文件超过64MB时-->log/file/fileLo
- Maven生命周期详解
明月几时有666
mavenlifecyclephasegoal
文中加粗显示的英文是在官方文档中出现的术语,我使用的相应术语的中文翻译,不能保证十分准确,严谨起见,在使用中文直译的术语后,使用了对应的英文属于。由于博主水平有限,非常欢迎大家能够批评指正。一构建声明周期基础知识我们在日常中,经常提及Maven(美式发音/ˈmeɪvn/)中的一个专业术语:声明周期Lifecycle,然而,它在官方文档中的名称却是:BuildLifecycle(直译为,构建生命周期
- 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