Java
caixuanji
这个作者很懒,什么都没留下…
展开
-
【高并发】高并发秒杀系统架构解密,不是所有的秒杀都是秒杀!
【高并发】高并发秒杀系统架构解密,不是所有的秒杀都是秒杀!很多小伙伴反馈说,高并发专题学了那么久,但是,在真正做项目时,仍然不知道如何下手处理高并发业务场景!甚至很多小伙伴仍然停留在只是简单的提供接口(CRUD)阶段,不知道学习的并发知识如何运用到实际项目中,就更别提如何构建高并发系统了!究竟什么样的系统算是高并发系统?今天,我们就一起解密高并发业务场景下典型的秒杀系统的架构,结合高并发专题下的其他文章,学以致用。电商系统架构在电商领域,存在着典型的秒杀业务场景,那何谓秒杀场景呢。简单的来说就是转载 2020-08-04 09:27:51 · 415 阅读 · 0 评论 -
Java 在IDEA中使用Maven项目架构管理工具介绍!!!
Java 在IDEA中使用Maven项目架构管理工具介绍!!!原创 2020-07-10 17:22:39 · 503 阅读 · 0 评论 -
Java Maven项目架构管理工具配置介绍!!!
Java Maven项目架构管理工具配置介绍!!!文章目录0、前言1、下载解压2、配置环境3、配置完成,命令行测试版本4、修改配置文件,使用阿里云镜像5、配置本地仓库 6、在IDEA工具中使用Maven0、前言Maven项目架构管理工具配置介绍,详细可参考官网地址:https://maven.apache.org/1、下载解压目前的版本为3.6.3,版本会持续更新!!!!我们选择下载apache-maven-3.6.3-bin.zip下载完成后我们得到一个压缩包:解原创 2020-07-10 11:11:21 · 384 阅读 · 0 评论 -
IDEA编辑工具连接MySQL数据库操作及报错解决!!!
IDEA编辑工具连接MySQL数据库操作及报错解决!!!首先我们的目标是在IDEA编辑器里可以直接连接到MySQL数据库,相当于IDEA里可以直接有一个对应的数据库可视化管理工具!!!!!文章目录1.在右边侧边栏看到Database,点击它2.选择“+”号,选择Data Source里的MySQL3.弹出对话框,填写User,password4.点击测试连接按钮,问题来了,报错5.修改6.连接成功啦!7.当我们连接成功后,还可以选择自己项目需要的数据库8.如何显示可视化效果 -原创 2020-07-08 14:56:43 · 1389 阅读 · 0 评论 -
JAVA 使用JDBC连接mysql数据库的坑!!
JAVA 使用JDBC连接mysql数据库的坑!!1.源代码展示package com.xuanji.lesson01;import java.sql.*;//我的第一个jdbc程序public class JDBCFirstDemo { public static void main(String[] args) throws ClassNotFoundException, SQLException { //1.加载驱动 Class.forNam原创 2020-07-08 12:07:36 · 5458 阅读 · 0 评论 -
Java SE注解简单介绍
注解简单介绍注解:Java Annotation注解与注释注解:对程序作出解释,可以被其他程序读取注释:程序注释,对程序作出解释,主要方便程序员进行代码理解跟后期维护注解的作用不是程序本身,可以对程序作出解释。可以被其他程序(比如:编译器)读取。注解的格式注解是以“@注释名”在代码中存在的,还可以添加一些参数值,例如:@SuppressWarnings(value=“unchecked”)。注解在哪里使用?可以附加在package、class、method、fie原创 2020-05-17 15:55:31 · 258 阅读 · 0 评论 -
Java多线程案例-龟兔赛跑
多线程案例-龟兔赛跑要求:首先有一个赛道距离,然后随着时间要离终点越来越近。判断比赛是否结束。可以打印出胜利者。在故事中是乌龟赢的,兔子需要睡觉,所以需要模拟兔子睡觉。最终,乌龟赢得比赛。//模拟龟兔赛跑public class Race implements Runnable{ //胜利者 private static String winner; @Override public void run() { for (int i =原创 2020-05-16 21:12:52 · 900 阅读 · 2 评论 -
Java GUI编程贪吃蛇小游戏实现5 失败判定 积分系统
失败判定添加状态boolean isFail=false;//游戏失败状态paintComponent方法添加代码if (isFail){ g.setColor(Color.red); g.setFont(new Font("微软雅黑",Font.BOLD,40));//设置字体 g.drawString("失败,按下空格重新开始游戏",300,300); }keyPressed事件改写代码if (key原创 2020-05-16 01:22:52 · 535 阅读 · 1 评论 -
Java GUI编程贪吃蛇小游戏实现4 让小蛇吃食物长大
让小蛇吃食物长大设置食物的坐标int foodx; int foody; Random random=new Random();初始化方法把食物随机分布在面板上foodx=25+25*random.nextInt(34); foody=75+25*random.nextInt(24);paintComponent方法添加代码显示食物//画食物 Data.food.paintIcon(this,g,foodx,foody);ac原创 2020-05-16 01:00:21 · 692 阅读 · 1 评论 -
Java GUI编程贪吃蛇小游戏实现3 让小蛇动起来
让小蛇动起来面板类实现两个接口public class GamePanel extends JPanel implements KeyListener, ActionListener {重写方法//键盘监听事件 @Override public void keyPressed(KeyEvent e) { int keyCode = e.getKeyCode();//获得键盘按键是哪一个 if (keyCode==KeyEvent.VK_SPA原创 2020-05-16 00:49:22 · 650 阅读 · 1 评论 -
Java GUI编程贪吃蛇小游戏实现2 绘制静态的小蛇
绘制静态的小蛇游戏的面板GamePanel类添加代码 //定义蛇 int length; int[] snakeX=new int[600]; int[] snakeY=new int[500]; String fx; //游戏当前的状态:开始,停止 boolean isStart=false;//默认是不开始 //构造器 public GamePanel(){ init(); } //初始化原创 2020-05-16 00:18:49 · 357 阅读 · 1 评论 -
Java GUI编程贪吃蛇小游戏实现1 界面设计
标题原创 2020-05-15 23:31:10 · 843 阅读 · 1 评论 -
IDEA快捷键 快速生成代码总结
IDEA快捷键 快速生成代码总结自动代码目标快捷代码生成主方法psvm+回车打出System.out.println();sout+回车打出for循环条件+for+回车打出for循环fori+回车打出增强型for循环arrays.for优化导入的类和包Ctrl+Alt+O生成代码(如get,set方法,构造函数等) 或者右键(Generate)Alt+InsertCtrl+Alt+T生成try catch 或者 Alt+原创 2020-05-15 16:17:26 · 11732 阅读 · 2 评论 -
Java GUI编程03 三种布局
流式布局public class TestFlowLayout { public static void main(String[] args) { Frame frame = new Frame(); Button button1 = new Button("button1"); Button button2 = new Button("button2"); Button button3 = new Button("button3"原创 2020-05-14 15:00:22 · 287 阅读 · 0 评论 -
Java GUI编程02 Frame窗口+Panel面板
Frame窗口+Panel面板import java.awt.*;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;//Panel可以看成一个空间,但不能单独存在public class TestPanel { public static void main(String[] args) { Frame frame = new Frame(); Panel pane原创 2020-05-14 14:39:08 · 348 阅读 · 0 评论 -
Java GUI编程01 展示/显示窗口
展示/显示单个窗口import java.awt.*;public class TestFrame { public static void main(String[] args) { //Frame Frame frame = new Frame("我的第一个Java图像界面窗口"); //需要设置可见性 frame.setVisible(true); //设置窗口大小 frame.setSize原创 2020-05-14 14:22:57 · 1149 阅读 · 0 评论 -
Java神奇代码奇葩代码
Java神奇代码奇葩代码的实质类里面还有类!!!!!成员内部类可以获取私有属性public class Outer { private int id=10; public void out(){ System.out.println("这是外部类的方法"); } public class Inner{ public void in(){ System.out.println("这是内部类的方法");原创 2020-05-14 11:30:11 · 778 阅读 · 1 评论 -
Java抽象类和接口简单介绍
Java抽象类abstract修饰符可以用来修饰方法也可以修饰类,如果修饰方法,那么该方法就是抽象方法;如果修饰类,那么该类就是抽象类。抽象类中可以没有抽象方法,但是有抽象方法的类一定要声明为抽象类。抽象类,不能使用new关键字来创建对象,它是用来让子类继承的。抽象方法,只有方法的声明,没有方法的实现,它是用来让子类实现的。子类继承抽象类,那么久必须要实现抽象类没有实现的抽象方法,否则该子类也要声明为抽象类。Java接口接口就是规范,或者说是一种约束,定义的是一组规则,体现了现实世界中原创 2020-05-14 11:06:02 · 219 阅读 · 0 评论 -
Java多态简单介绍
Java多态多态:即同一方法可以根据发送对象的不同而采用多种不同不同的行为方式。一个对象的实际类型是确定的,但可以指向对象的引用的类型有很多。多态存在的条件有继承关系子类重写父类的方法父类引用指向子类对象注意:多态是方法的多态,属性没有多态性。父类和子类要有联系,如果没有联系,会出现类型转换异常(ClassCastException)。方法不能被重写的情况static方法:static方法属于类,它不属于实例,不能被重写。final常量:常量不能被原创 2020-05-14 10:20:36 · 166 阅读 · 0 评论 -
Java重写简单介绍
Java重写重写:需要有继承关系,子类重写父类的方法。方法名必须相同。参数列表必须相同。修饰符:范围可以扩大但不能缩小 public>protected>default>private抛出的异常范围可以被缩小,但不能扩大重写,子类的方法名,参数和父类必须要一致;方法体可以不同。为什么需要重写?父类的功能,子类不一定需要或者不一定满足。...原创 2020-05-13 23:27:58 · 148 阅读 · 0 评论 -
Java Super和this区别及Super注意点
Super和this区别代表的对象不同this:本身调用这个对象super:代表父类对象前提this:没用继承也可以使用super:只能在继承条件才可以使用构造方法this():本类的构造super():分类的构造Super注意点super调用父类的构造方法,必须在构造方法的第一行代码出现。super必须只能出现在子类的方法或者构造方法中。super和this不能同时调用构造方法,不能同时出现在构造方法。...原创 2020-05-13 23:13:08 · 156 阅读 · 0 评论 -
Java面向对象与面向过程简单介绍
Java面向对象与面向过程简单介绍面向过程思想步骤清晰简单,第一步做什么,第二步做什么…面向过程适合处理一些较为简单的问题面向对象思想物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的探索。面向对象适合处理复杂的问题,适合处理需要多人协作的问题!为了描述复杂的事物,为了从宏观上把握,从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需要面向过程的思路去处原创 2020-05-13 22:00:08 · 221 阅读 · 0 评论 -
Java二维数组转稀疏数组,稀疏数组还原二维数组
Java稀疏数组当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存该数组。稀疏数组的处理方式是:记录数组一共有几行激烈,有多少个不同值。把具有不同值的元素和行列及只记录在一个小规模的数组中,从而缩小程序的规模。左边为原始数组,右边为稀疏数组稀疏数组的转换public static void main(String[] args) { //1.创建一个二维数组11*11 0:没有棋子 1:黑棋 2:白棋 int[原创 2020-05-13 21:32:44 · 370 阅读 · 1 评论