JavaMe 编程连载(8) - 换肤的实现

2024-03-12 17:48
文章标签 java 实现 编程 连载 换肤

本文主要是介绍JavaMe 编程连载(8) - 换肤的实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【问题描述】

kf156(亚日)在多级菜单实现中,实现了换肤的功能。本文借鉴了kf156(亚日)的部分代码,利用JavaMe连载(7)-数据永久存储所提到的rms实现了换肤的处理。

【代码清单】

Color.java

(借鉴了kf156(亚日)的代码,有所改动,感谢署名为kf156(亚日)的网友,他的代码风格确实很好)

package com.token.view.components;
/**
* 颜色类
* 
* @author kf156(亚日)
* 
* @Email kf156@QQ.com
* 
* @CopyrightNotice 此代码仅供学习交流,您可以使用并传播本源代码,但请保留作者信息。切勿商用,若有需要,请先于本人联系。
*/
public class Color {
public static int strong = 0xFF8C00;//令牌显示颜色
public static int warning1 = 0xFF4500;// 警告颜色
public static int warning2 = 0xFF0000;// 警告颜色
public static int error = 0xFF0000;// 错误颜色
public static int background = 0xF0FAE6;// 背景颜色
public static int menuFrame = 0xB8E58A;// 窗体框架颜色
public static int label = 0xF0F8FF;// 标题颜色
public static int text = 0x314F12;// 正文颜色
public static int selectText = 0xFFFFFF;// 被选择后的正文颜色
public static int selectBg = 0x548720;// 被选择后的背景颜色
public static int cmdBarTop = 0x9FDB63;// 命令栏上半部分颜色
public static int cmdBarBottom = 0x81D130;// 命令栏下半部分颜色
public static int menuBg = 0xE0F5CB;// 命令菜单主背景色
public static int cmdSelectTop = 0x7DAB4F;// 命令菜单选中项上半部分颜色
public static int cmdSelectBottom = 0x5B9422;// 命令菜单选中项下半部分颜色
public static int linkClick = 0xFF0000;// 超链接点击后的颜色
public static int frame = 0x458B00;//边框颜色
public static int frameBg = 0x556B2F;//边框背景颜色
public static final int GREY = 0xBBBBBB;// 灰边框
public static final int BLACK = 0x0;// 黑色
public static final int WHITE = 0xFFFFFF;// 白色
public static final int TRANSLUCENCY_WRITE = 0x55FFFFFF;// 白色半透明
public static final int TRANSLUCENCY_BLACK = 0x55000000;// 黑色半透明
public static final byte STYLE_RED = 0;// 红色
public static final byte STYLE_ORANGE = 1;// 橙色
public static final byte STYLE_YELLOW = 2;// 黄色
public static final byte STYLE_GREEN = 3;// 绿色
public static final byte STYLE_LIME = 4;// 酸橙色
public static final byte STYLE_CYAN = 5;// 青色
public static final byte STYLE_AQUA = 6;// 浅绿色
public static final byte STYLE_SKY_BLUE = 7;// 天蓝色
public static final byte STYLE_BLUE = 8;// 蓝色
public static final byte STYLE_PURPLE = 9;// 紫色
public static final byte STYLE_FUCHSIA = 10;// 紫红色
public static final byte STYLE_MAGENTA = 11;// 红紫色
public static final byte STYLE_BLACK = 12;// 黑色
public static int colorName = STYLE_GREEN;// 风格名称
// 红色风格H0(#FF0000)
private static void redColor() {
background = 0xFAE7E7;// 背景颜色
label = 0xFAEBD7;// 标题颜色
text = 0x4F1212;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0xE58A8A;// 窗体框架颜色
menuBg = 0xF5CBCB;// 命令菜单主背景色
selectBg = 0x872020;// 被选择后的背景颜色
cmdBarTop = 0xDB6363;// 命令栏上半部分颜色
cmdBarBottom = 0xD13030;// 命令栏下半部分颜色
cmdSelectTop = 0xAB4F4F;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x942222;// 命令菜单选中项下半部分颜色
frame = 0xF70909;//边框颜色
frameBg = 0xD52B2B;//边框背景颜色
}
// 橙色风格H30(#FF7F00)
private static void orangeColor() {
background = 0xFAF0E6;// 背景颜色
label = 0xFFE4B5;// 标题颜色
text = 0x4F3112;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0xE5B88A;// 窗体框架颜色
menuBg = 0xF5E0CB;// 命令菜单主背景色
selectBg = 0x875420;// 被选择后的背景颜色
cmdBarTop = 0xDB9F63;// 命令栏上半部分颜色
cmdBarBottom = 0xD18130;// 命令栏下半部分颜色
cmdSelectTop = 0xAB7D4F;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x945B22;// 命令菜单选中项下半部分颜色
frame = 0xF76809;//边框颜色
frameBg = 0xD56F2B;//边框背景颜色
}
// 黄色风格H60(#FFFF00)
private static void yellowColor() {
background = 0xFAFAE6;// 背景颜色
label = 0xFFFACD;// 标题颜色
text = 0x4F4F12;// 正文颜色
// selectText = 0xFFFF00;// 被选择后的正文颜色
menuFrame = 0xE5E58A;// 窗体框架颜色
menuBg = 0xF5F5CB;// 命令菜单主背景色
selectBg = 0x878720;// 被选择后的背景颜色
cmdBarTop = 0xDBDB63;// 命令栏上半部分颜色
cmdBarBottom = 0xD1D130;// 命令栏下半部分颜色
cmdSelectTop = 0xABAB4F;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x949422;// 命令菜单选中项下半部分颜色
frame = 0xF7C709;//边框颜色
frameBg = 0xD5D52B;//边框背景颜色
}
// 绿色风格H90(#80FF00)
private static void greenColor() {
background = 0xF0FAE6;// 背景颜色
label = 0xF0F8FF;// 标题颜色
text = 0x314F12;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0xB8E58A;// 窗体框架颜色
menuBg = 0xE0F5CB;// 命令菜单主背景色
selectBg = 0x548720;// 被选择后的背景颜色
cmdBarTop = 0x9FDB63;// 命令栏上半部分颜色
cmdBarBottom = 0x81D130;// 命令栏下半部分颜色
cmdSelectTop = 0x7DAB4F;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x5B9422;// 命令菜单选中项下半部分颜色
frame = 0x458B00;//边框颜色
frameBg = 0x556B2F;//边框背景颜色
}
// 酸橙色风格H120(0x00FF00)
private static void limeColor() {
background = 0xE6FAE6;// 背景颜色
label = 0xEEE9BF;// 标题颜色
text = 0x124F12;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0x8AE58A;// 窗体框架颜色
menuBg = 0xCBF5CB;// 命令菜单主背景色
selectBg = 0x208720;// 被选择后的背景颜色
cmdBarTop = 0x63DB63;// 命令栏上半部分颜色
cmdBarBottom = 0x30D130;// 命令栏下半部分颜色
cmdSelectTop = 0x4FAB4F;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x229422;// 命令菜单选中项下半部分颜色
frame = 0x09F738;//边框颜色
frameBg = 0x2BD54D;//边框背景颜色
}
// 青色风格H150(0x00FF80)
private static void cyanColor() {
background = 0xE6FAF0;// 背景颜色
label = 0xE0FFFF;// 标题颜色
text = 0x124F31;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0x8AE5B8;// 窗体框架颜色
menuBg = 0xCBF5E0;// 命令菜单主背景色
selectBg = 0x208754;// 被选择后的背景颜色
cmdBarTop = 0x63DB9F;// 命令栏上半部分颜色
cmdBarBottom = 0x30D181;// 命令栏下半部分颜色
cmdSelectTop = 0x4FAB7D;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x22945B;// 命令菜单选中项下半部分颜色
frame = 0x4DB34D;//边框颜色
frameBg = 0x8AB34D;//边框背景颜色
}
// 浅绿色风格H180(#00FFFF)
private static void aquaColor() {
background = 0xE6FAFA;// 背景颜色
label = 0xE0EEE0;// 标题颜色
text = 0x445500;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0x88AA55;// 窗体框架颜色
menuBg = 0xE6FAFA;// 命令菜单主背景色
selectBg = 0xAECC33;// 被选择后的背景颜色
cmdBarTop = 0xBDE61A;// 命令栏上半部分颜色
cmdBarBottom = 0xB8DD22;// 命令栏下半部分颜色
cmdSelectTop = 0xB8DD22;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0xB3D52B;// 命令菜单选中项下半部分颜色
frame = 0x8E8E38;//边框颜色
frameBg = 0x8B8B00;//边框背景颜色
}
// 天蓝色风格H210(#0080FF)
private static void skyBlueColor() {
background = 0xE6F0FA;// 背景颜色
label = 0xE0FFFF;// 标题颜色
text = 0x12314F;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0x8AB8E5;// 窗体框架颜色
menuBg = 0xCBE0F5;// 命令菜单主背景色
selectBg = 0x205487;// 被选择后的背景颜色
cmdBarTop = 0x639FDB;// 命令栏上半部分颜色
cmdBarBottom = 0x3081D1;// 命令栏下半部分颜色	
cmdSelectTop = 0x4F7DAB;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x225B94;// 命令菜单选中项下半部分颜色
frame = 0x0997F7;//边框颜色
frameBg = 0x2BB3D5;//边框背景颜色
}
// 深蓝色风格H240(#0000FF)
private static void blueColor() {
background = 0xE6E6FA;// 背景颜色
label = 0xE0EEEE;// 标题颜色
text = 0x12124F;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0x8A8AE5;// 窗体框架颜色
menuBg = 0xCBCBF5;// 命令菜单主背景色
selectBg = 0x202087;// 被选择后的背景颜色
cmdBarTop = 0x6363DB;// 命令栏上半部分颜色
cmdBarBottom = 0x3030D1;// 命令栏下半部分颜色
cmdSelectTop = 0x4F4FAB;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x222294;// 命令菜单选中项下半部分颜色
frame = 0x0909F7;//边框颜色
frameBg = 0x2B2BD5;//边框背景颜色
}
// 紫色风格H270(#8000FF)
private static void purpleColor() {
background = 0xF0E6FA;// 背景颜色
label = 0xFDF5E6;// 标题颜色
text = 0x31124F;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0xB88AE5;// 窗体框架颜色
menuBg = 0xE0CBF5;// 命令菜单主背景色
selectBg = 0x542087;// 被选择后的背景颜色
cmdBarTop = 0x9F63DB;// 命令栏上半部分颜色
cmdBarBottom = 0x8130D1;// 命令栏下半部分颜色
cmdSelectTop = 0x7D4FAB;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x5B2294;// 命令菜单选中项下半部分颜色
frame = 0x6809F7;//边框颜色
frameBg = 0x6F2BD5;//边框背景颜色
}
// 紫红色风格H300(#FF00FF)
private static void fuchsiaColor() {
background = 0xFAE6FA;// 背景颜色
label = 0xFAF0E6;// 标题颜色
text = 0x4F124F;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0xE58AE5;// 窗体框架颜色
menuBg = 0xF5CBF5;// 命令菜单主背景色
selectBg = 0x872087;// 被选择后的背景颜色
cmdBarTop = 0xDB63DB;// 命令栏上半部分颜色
cmdBarBottom = 0xD130D1;// 命令栏下半部分颜色	
cmdSelectTop = 0xAB4FAB;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x942294;// 命令菜单选中项下半部分颜色
frame = 0x9709F7;//边框颜色
frameBg = 0xB32BD5;//边框背景颜色
}
// 红紫色风格H330(#FF007F)
private static void magentaColor() {
background = 0xFAE6F0;// 背景颜色
label = 0xFFEFD5;// 标题颜色
text = 0x4F1231;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0xE58AB8;// 窗体框架颜色
menuBg = 0xF5CBE0;// 命令菜单主背景色
selectBg = 0x872054;// 被选择后的背景颜色
cmdBarTop = 0xDB639F;// 命令栏上半部分颜色
cmdBarBottom = 0xD13081;// 命令栏下半部分颜色		
cmdSelectTop = 0xAB4F7D;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x94225B;// 命令菜单选中项下半部分颜色
frame = 0xC709F7;//边框颜色
frameBg = 0xD52BD5;//边框背景颜色
}
//黑色风格(#000000)
private static void blackColor() {
background = 0xEDEDED;// 背景颜色
label = 0xEAEAEA;// 标题颜色
text = 0x030303;// 正文颜色
// selectTextColor = 0xFFFFFF;// 被选择后的正文颜色
menuFrame = 0x2E2E2E;// 窗体框架颜色
menuBg = 0xC9C9C9;// 命令菜单主背景色
selectBg = 0x4A4A4A;// 被选择后的背景颜色
cmdBarTop = 0x3B3B3B;// 命令栏上半部分颜色
cmdBarBottom = 0x383838;// 命令栏下半部分颜色
cmdSelectTop = 0x2E2E2E;// 命令菜单选中项上半部分颜色
cmdSelectBottom = 0x0D0D0D;// 命令菜单选中项下半部分颜色
frame = 0x0A0A0A;//边框颜色
frameBg = 0x636363;//边框背景颜色
}
// 风格切换
public static void nextColor() {
set(++colorName);
}
/**
* 设置颜色
* 
*/
public static void set(int color) {
// System.out.println(color);
switch (color) {
case STYLE_RED:// 红色
redColor();
break;
case STYLE_ORANGE:// 橙色
orangeColor();
break;
case STYLE_YELLOW:// 黄色
yellowColor();
break;
case STYLE_GREEN:// 绿色
greenColor();
break;
case STYLE_LIME:// 酸橙色
limeColor();
break;
case STYLE_CYAN:// 青色
cyanColor();
break;
case STYLE_AQUA:// 浅绿色
aquaColor();
break;
case STYLE_SKY_BLUE:// 天蓝色
skyBlueColor();
break;
case STYLE_BLUE:// 蓝色
blueColor();
break;
case STYLE_PURPLE:// 紫色
purpleColor();
break;
case STYLE_FUCHSIA:// 紫红色
fuchsiaColor();
break;
case STYLE_MAGENTA:// 红紫色
magentaColor();
break;
case STYLE_BLACK:// 红紫色
blackColor();
break;
default:// 颜色循环完毕,返回红色
colorName = STYLE_RED;
redColor();// RED
break;
}
}
// 设置新风格
public static void setNewColor(int newColor) {
background = newColor;
menuFrame = background - 0x3A155D;
label = background - 0x25A8E5;
text = background - 0xC0ACD5;
selectText = background + 0x100518;
selectBg = background - 0x9D72C7;
cmdBarTop = background - 0x531E84;
cmdBarBottom = background - 0x742AB8;
}
}

 

ConfigureDataItem.java

package com.token.model;
//import com.token.util.StringDealMethod;
public class ConfigureDataItem {
private int id;
public String color = null;
public ConfigureDataItem(String color){
this.color = color;
}
public ConfigureDataItem(int id,byte[] data){
this.id=id;
//String temp=new String(data);
//String temp_sub[] = StringDealMethod.split(temp, ",");
this.color = new String(data);
}
public int getId(){
return id;
}
public void setId(int id){
this.id=id;
}
public String getColor(){
return color;
}
public void setData(String color){
this.color = color;
}
public byte[] getBytes(){
String temp=null;
if(color==null){
return null;
}else{
temp=color;
}
return temp.getBytes();
}
}


ConfigureDataRecord.java

package com.token.util;
import java.util.Vector;
import javax.microedition.rms.RecordComparator;
import javax.microedition.rms.RecordEnumeration;
import javax.microedition.rms.RecordStore;
import javax.microedition.rms.RecordStoreException;
import com.token.model.ConfigureDataItem;
public class ConfigureDataRecord {
private static final String RECORDSTORE_NAME="CONFIG_DB";
private static RecordStore info;
public ConfigureDataRecord(){
}
//打开RecordStore,没有则创建
public void openDataBase() {
try {
info = RecordStore.openRecordStore(RECORDSTORE_NAME, true);
}catch (RecordStoreException ex) {            
info =null;
}
}
//关闭RecordStore
public void closeDataBase() {
if (info!= null) {
try {
info.closeRecordStore();
info=null;
} catch (RecordStoreException ex) {}
}
}
//增加记录
public int db_addRecord(ConfigureDataItem item) {
try {
this.openDataBase();
byte[] data=item.getBytes();
int id=info.getNextRecordID();
info.addRecord(data,0,data.length);
this.closeDataBase();
return id;
} catch (RecordStoreException ex) { }
return -1;
}
//更新记录
public void db_updateRecord(ConfigureDataItem item){
try {
this.openDataBase();      
byte[] data=item.getBytes();
info.setRecord(item.getId(),data,0,data.length);
this.closeDataBase();
} catch (RecordStoreException ex) { }
}
//访问一条记录
public ConfigureDataItem db_getRecord(int id){
ConfigureDataItem item=null;
try {
this.openDataBase();
item = new ConfigureDataItem(id,info.getRecord(id));
this.closeDataBase();
} catch (RecordStoreException ex) { }
return item;
}
//删除一条记录
public void db_deleteRecord(int id){
try {
this.openDataBase();
info.deleteRecord(id);
this.closeDataBase();
} catch (RecordStoreException ex) {}
}
//删除所有记录
public void db_deleteAllRecord(){
try {
RecordStore.deleteRecordStore(RECORDSTORE_NAME);
} catch (RecordStoreException ex) {}
}
//访问所有记录
public Vector db_getRecords(){
Vector items=new Vector(10,3);
this.openDataBase();//打开RecordStore
RecordEnumeration enum1=null;
int ind=0;
try{
ConfigureDataItem item=null;
enum1=info.enumerateRecords(null,new InnerComparator(),false);
while(enum1.hasPreviousElement()){
ind=enum1.previousRecordId();
item=new ConfigureDataItem(ind,info.getRecord(ind));
items.addElement(item);
}
}catch(Exception ex){ex.printStackTrace();}
finally{
try{
enum1.destroy();
}catch(Exception e){}
this.closeDataBase();//关闭RecordStore
}//end finally
return items;
}
//一个简单的比较器
private class InnerComparator implements RecordComparator{
public int compare(byte[] rec1, byte[] rec2){
if(rec1.length>rec2.length)
return FOLLOWS;
else if(rec1.length<rec2.length)
return PRECEDES;
else 
return EQUIVALENT;
}
}
}


Configure.java

package com.token.util;
import com.token.model.ConfigureDataItem;
import com.token.view.components.Color;
public class Configure 
{
private static ConfigureDataRecord confRecord = new ConfigureDataRecord();
public Configure()
{
}
public static void configureColor()
{
int id = 1;
if(confRecord.db_getRecord(1)==null)
{
ConfigureDataItem confItem = new ConfigureDataItem(1,"3".getBytes());
id=confRecord.db_addRecord(confItem);
}
ConfigureDataItem confItem1 = confRecord.db_getRecord(id);
Color.set(Integer.valueOf(confItem1.getColor()).intValue());
}
}


【分析】

1 在启动时,调用

Configure.configureColor();

对颜色进行配置。

 

2 换肤的实现

在按键事件keyPressed()中,对按键进行判断。

(1) 设置颜色,调用

Color.set(color);

(2) 更新颜色配置记录

ConfigureDataItem confItem = new ConfigureDataItem(1,String.valueOf(color).getBytes());
confRecord.db_updateRecord(confItem);

(3) 刷新画面

String flag = "0";
Object [] args = {flag,""};
controller.handleEvent(UIController.EventID.EVENT_MAIN_SCREEN, args);

【代码清单】

protected void keyPressed(int keyCode) 
{
...
switch(currentlySelectedIndex)
{
...
case 4:
{
color = Integer.valueOf(confRecord.db_getRecord(1).color).intValue();
if(color<12)
{
color++;
}
else
{
color = 0;
}
Color.set(color);
ConfigureDataItem confItem = new ConfigureDataItem(1,String.valueOf(color).getBytes());
confRecord.db_updateRecord(confItem);
String flag = "0";
Object [] args = {flag,""};
controller.handleEvent(UIController.EventID.EVENT_MAIN_SCREEN, args);
break;
}
}
....
}

换肤后,将永久生效。实现效果,如图1、2所示:

图1 换肤前

 

图2 换肤后

 

 

 

 

 

转载请标明出处,仅供学习交流,勿用于商业目的

Copyright @ http://blog.csdn.net/tandesir

 

 

 

 

 

 


 

 

这篇关于JavaMe 编程连载(8) - 换肤的实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/802082

相关文章

如何使用C#串口通讯实现数据的发送和接收

《如何使用C#串口通讯实现数据的发送和接收》本文详细介绍了如何使用C#实现基于串口通讯的数据发送和接收,通过SerialPort类,我们可以轻松实现串口通讯,并结合事件机制实现数据的传递和处理,感兴趣... 目录1. 概述2. 关键技术点2.1 SerialPort类2.2 异步接收数据2.3 数据解析2.

mybatis-plus 实现查询表名动态修改的示例代码

《mybatis-plus实现查询表名动态修改的示例代码》通过MyBatis-Plus实现表名的动态替换,根据配置或入参选择不同的表,本文主要介绍了mybatis-plus实现查询表名动态修改的示... 目录实现数据库初始化依赖包配置读取类设置 myBATis-plus 插件测试通过 mybatis-plu

Java反转字符串的五种方法总结

《Java反转字符串的五种方法总结》:本文主要介绍五种在Java中反转字符串的方法,包括使用StringBuilder的reverse()方法、字符数组、自定义StringBuilder方法、直接... 目录前言方法一:使用StringBuilder的reverse()方法方法二:使用字符数组方法三:使用自

Qt把文件夹从A移动到B的实现示例

《Qt把文件夹从A移动到B的实现示例》本文主要介绍了Qt把文件夹从A移动到B的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录如何移动一个文件? 如何移动文件夹(包含里面的全部内容):如何删除文件夹:QT 文件复制,移动(

Flask 验证码自动生成的实现示例

《Flask验证码自动生成的实现示例》本文主要介绍了Flask验证码自动生成的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习... 目录生成图片以及结果处理验证码蓝图html页面展示想必验证码大家都有所了解,但是可以自己定义图片验证码

VSCode配置Anaconda Python环境的实现

《VSCode配置AnacondaPython环境的实现》VisualStudioCode中可以使用Anaconda环境进行Python开发,本文主要介绍了VSCode配置AnacondaPytho... 目录前言一、安装 Visual Studio Code 和 Anaconda二、创建或激活 conda

使用mvn deploy命令上传jar包的实现

《使用mvndeploy命令上传jar包的实现》本文介绍了使用mvndeploy:deploy-file命令将本地仓库中的JAR包重新发布到Maven私服,文中通过示例代码介绍的非常详细,对大家的学... 目录一、背景二、环境三、配置nexus上传账号四、执行deploy命令上传包1. 首先需要把本地仓中要

JAVA封装多线程实现的方式及原理

《JAVA封装多线程实现的方式及原理》:本文主要介绍Java中封装多线程的原理和常见方式,通过封装可以简化多线程的使用,提高安全性,并增强代码的可维护性和可扩展性,需要的朋友可以参考下... 目录前言一、封装的目标二、常见的封装方式及原理总结前言在 Java 中,封装多线程的原理主要围绕着将多线程相关的操

MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固 通俗易懂版)

《MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固通俗易懂版)》本文主要讲解了MySQL中的多表查询,包括子查询、笛卡尔积、自连接、多表查询的实现方法以及多列子查询等,通过实际例子和操... 目录复合查询1. 回顾查询基本操作group by 分组having1. 显示部门号为10的部门名,员

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx