真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java源代碼還原 還原的代碼

求大神告知 linux系統(tǒng)下,JAVA如何操作mysql備份和還原。求源代碼~~~~測試通過的加分。

java是跨平臺的 不分操作系統(tǒng) 因?yàn)樗僮鞯氖莏ava虛擬機(jī) java虛擬機(jī)才把代碼轉(zhuǎn)換成操作系統(tǒng)可識別的

專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)西藏免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上1000家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

您就隨便拿個(gè)windows下的java操作mysql數(shù)據(jù)庫的 復(fù)制粘貼到linux下的eclipse編譯器里 執(zhí)行就可以備份mysql了 一點(diǎn)代碼都不需要改因?yàn)橛玫亩际莔ysql jdbc的driver jar

什么是java源代碼 怎么查看

你說的java源代碼是指編譯成的class文件前的java文件。

當(dāng)我們運(yùn)行.java文件時(shí),它會被系統(tǒng)編譯成.class文件,例如Test.java編譯之后就是Test.class,

源文件就是指Test.java文件,

一般部署項(xiàng)目時(shí),有.class文件就可以發(fā)布運(yùn)行了,但是如果想修改這個(gè)系統(tǒng),.class是不能修改的,要有.java文件才能修改

也可以上網(wǎng)去下反編譯軟件,就是能把.class文件大部分還原成.java文件的工具,但不是100%還原,而且如果不是正版的,小心有毒啊,什么的。

不小心把.java文件刪除了,只剩下.class文件.能不能恢復(fù)

用反編譯工具可以將.class文件反編譯為.java文件

下載地址

不過反編譯并不能得到和原始文件一摸一樣的java文件,會有一些不同

如何防止JAVA程序源代碼被反編譯

我們都知道JAVA是一種解析型語言,這就決定JAVA文件編譯后不是機(jī)器碼,而是一個(gè)字節(jié)碼文件,也就是CLASS文件。而這樣的文件是存在規(guī)律的,經(jīng)過反編譯工具是可以還原回來的。例如Decafe、FrontEnd,YingJAD和Jode等等軟件。下面是《Nokia中Short數(shù)組轉(zhuǎn)換算法》

類中Main函數(shù)的ByteCode:0 ldc #162 invokestatic #185 astore_16 return其源代碼是:short [] pixels = parseImage("/ef1s.png");

我們通過反編譯工具是可以還原出以上源代碼的。而通過簡單的分析,我們也能自己寫出源代碼的。

第一行:ldc #16

ldc為虛擬機(jī)的指令,作用是:壓入常量池的項(xiàng),形式如下ldc index這個(gè)index就是上面的16,也就是在常量池中的有效索引,當(dāng)我們?nèi)タ闯A砍氐臅r(shí)候,我們就會找到index為16的值為String_info,里面存了/ef1s.png.

所以這行的意思就是把/ef1s.pn作為一個(gè)String存在常量池中,其有效索引為16。

第二行:2 invokestatic #18

invokestatic為虛擬機(jī)指令,作用是:調(diào)用類(static)方法,形式如下

invokestatic indexbyte1 indexbyte2

其中indexbyte1和indexbyte2必須是在常量池中的有效索引,而是指向的類型必須有Methodref標(biāo)記,對類名,方法名和方法的描述符的引用。

所以當(dāng)我們看常量池中索引為18的地方,我們就會得到以下信息:

Class Name : cp_info#1

Name Type : cp_info#19

1 和19都是常量池中的有效索引,值就是右邊中的值,再往下跟蹤我就不多說了,有興趣的朋友可以去JAVA虛擬機(jī)規(guī)范。

這里我簡單介紹一下parseImage(Ljava/lang/String;)[S 的意思。

這就是parseImage這個(gè)函數(shù)的運(yùn)行,我們反過來看看parseImage的原型就明白了

short [] parseImage(String)

那么Ljava/lang/String;就是說需要傳入一個(gè)String對象,而為什么前面要有一個(gè)L呢,這是JAVA虛擬機(jī)用來表示這是一個(gè)Object。如果是基本類型,這里就不需要有L了。然后返回為short的一維數(shù)組,也就是對應(yīng)的[S。是不是很有意思,S對應(yīng)著Short類型,而“[”對應(yīng)一維數(shù)組,那有些朋友要問了,兩維呢,那就“[[”,呵呵,是不是很有意思。

好了,調(diào)用了函數(shù),返回的值要保存下來吧。那么就是第三行要做的事情了。


新聞名稱:java源代碼還原 還原的代碼
網(wǎng)頁URL:http://weahome.cn/article/hhhced.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部