在eclipse中恐怕不行吧,首先要將你的class文件打包成一個(gè)jar包,然后用打包工具打包成exe文件,我給你提供一個(gè)軟件,你可以去下載下來(lái)試試
在容城等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專(zhuān)注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、做網(wǎng)站、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),成都全網(wǎng)營(yíng)銷(xiāo),外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè),容城網(wǎng)站建設(shè)費(fèi)用合理。
Jar2Exe 是一款將 jar 文件轉(zhuǎn)換成 exe 可執(zhí)行文件的工具軟件。本軟件的工作原理是使用 JNI 接口啟動(dòng) java 虛擬機(jī),并在此基礎(chǔ)上提供其他高級(jí)的功能。
主要功能:
可生成 "控制臺(tái)","圖形界面","Windows 服務(wù)" 三種類(lèi)型的 exe 可執(zhí)行文件。
生成的 exe 文件可以添加程序圖標(biāo)和版本信息。
生成的 exe 文件能對(duì) java 程序進(jìn)行加密保護(hù),運(yùn)行時(shí)不會(huì)產(chǎn)生臨時(shí)文件。
生成的 exe 文件提供系統(tǒng)任務(wù)欄圖標(biāo)功能。
生成的 exe 文件提供記錄系統(tǒng)日志功能。
生成的 Windows 服務(wù)自帶安裝/卸載服務(wù)功能,支持服務(wù)暫停/繼續(xù)
用命令提示符來(lái)生成應(yīng)用程序
打開(kāi)命令提示符,輸入javac 源代碼文件路徑\源代碼文件名稱.java ?或 javac -jar?源代碼文件路徑\源代碼文件名稱.jar
然后就可以看見(jiàn)源代碼文件的旁邊多了一個(gè) 源代碼文件名稱.class??文件 或?源代碼文件名稱.jar
直接用IDE中的構(gòu)建選項(xiàng) NetbeansIDE 和 eclipse都是現(xiàn)在很受歡迎的IDE
可以的,我說(shuō)說(shuō)大概思路,很簡(jiǎn)單,你自己具體實(shí)現(xiàn)吧,把代碼寫(xiě)給你沒(méi)意義的:
1.將你這段字符串輸出到一個(gè)文件里,用Java類(lèi)文件的方式命名。
2.調(diào)用外部javac命令將該文件編譯。
3.用類(lèi)加載器(ClassLoad)動(dòng)態(tài)加載新的class文件并用Class.forName()注冊(cè)該類(lèi),然后就可以正常使用了。
上面的每一步都能在baidu中找到實(shí)現(xiàn)方法,自己發(fā)揮吧。
主要功能: 你只要設(shè)計(jì)好數(shù)據(jù)庫(kù) 就可以生成java vo
java DAO jsp
servlet
struts-config配置信息
oracle 建表語(yǔ)句 查詢語(yǔ)句 等
可生成java struts 架構(gòu)的完整的源碼 包括 增加 刪除 修改 查詢等功能的源碼
但
1.不同的架構(gòu),需要不同的生成器
2.生成器一般需要模板技術(shù),如freeMarker、velocity等
3.生成器也是Java項(xiàng)目,可以自己修改、設(shè)計(jì)、開(kāi)發(fā)
4.生成器能節(jié)省一定的工作量
學(xué)這個(gè)? 網(wǎng)上都有現(xiàn)成的軟件,會(huì)用就行,使用很簡(jiǎn)單。 如果是想學(xué)開(kāi)發(fā)一個(gè)代碼生成器的話,我覺(jué)得沒(méi)必要啊。
你把JAVA 語(yǔ)言學(xué)會(huì)了,真正在開(kāi)發(fā)的時(shí)候自然會(huì)遇見(jiàn)這個(gè)軟件,自然就會(huì)了
不知道你問(wèn)的是不是生成這種圖片驗(yàn)證碼?如果只要一個(gè)隨機(jī)四位數(shù) 那這行代碼就夠了(new Random().nextInt(9000) + 1000;),如果是生成頁(yè)面圖片驗(yàn)證碼就是下面的了: //設(shè)定 響應(yīng)模式 resp.setContentType("image/jpeg"); // 生成令牌環(huán)數(shù)據(jù); Integer token = new Random().nextInt(9000) + 1000; // 保存令牌環(huán)數(shù)據(jù)到session中 req.getSession().setAttribute(IMAGE_TOKEN_NAME, token); // 生成令牌環(huán)圖片 ServletOutputStream out = resp.getOutputStream(); BufferedImage img = new BufferedImage(60, 20, BufferedImage.TYPE_INT_RGB); Graphics g = img.getGraphics(); g.setColor(Color.YELLOW); g.fillRect(0, 0, img.getWidth(), img.getHeight()); g.setColor(Color.BLUE); g.setFont(new Font("", Font.BOLD, 18)); g.drawString(String.valueOf(token), 10, 16); ImageIO.write(img, "jpg", out); out.close();
下面簡(jiǎn)單的介紹他們的功能和用途,執(zhí)行效率等。每個(gè)都有各自的優(yōu)缺點(diǎn)看你是做甚什么方面的研究開(kāi)發(fā)用。.net,是網(wǎng)站編程,現(xiàn)在很多都用這個(gè),但是這個(gè)語(yǔ)言編程都有統(tǒng)一思路,很好掌握。窒息那個(gè)效率不是很高;php 支持跨平臺(tái),很容易學(xué)會(huì),執(zhí)行的效率很高;asp是ASP.net的前身,它比較穩(wěn)定,比.net要弱一點(diǎn)。但是比.net好學(xué)。jsp 是網(wǎng)頁(yè)編程,這個(gè)學(xué)習(xí)大約一周就能搞定,不過(guò)這個(gè)得多實(shí)踐,不然的話,時(shí)間長(zhǎng)了,就容易忘記。
我自己做的系統(tǒng)里面用作驗(yàn)證碼的JSP的%@page contentType="image/jpeg;charset=utf-8"%%@page import="java.util.*,java.awt.*,java.awt.image.*,javax.imageio.*" %%@ page import="java.io.OutputStream" %html body %! Color getRandColor(int fc,int bc) { Random rd=new Random(); if(fc255) fc=255; if(bc255) bc=255; int red=fc+rd.nextInt(bc-fc); int green=fc+rd.nextInt(bc-fc); int blue=fc+rd.nextInt(bc-fc); return new Color(red,green,blue); } % % Random r=new Random(); response.addHeader("Pragma","No-cache"); response.addHeader("Cache-Control","no-cache"); response.addDateHeader("expires",0); int width=90; int height=23; BufferedImage pic=new BufferedImage(width,height,BufferedImage.TYPE_INT_RGB); Graphics gc=pic.getGraphics(); gc.setColor(getRandColor(200,250)); gc.fillRect(0,0,width,height); String[] rNum ={"0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f", "g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w", "x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N", "O","P","Q","R","S","T","U","V","W","X","Y","Z"}; int[] style = {Font.PLAIN,Font.BOLD,Font.ITALIC,Font.PLAIN+Font.BOLD, Font.BOLD+Font.ITALIC,Font.PLAIN+Font.ITALIC,Font.PLAIN+Font.BOLD+Font.ITALIC}; gc.setColor(Color.WHITE); gc.drawLine(0,30,90,10); gc.setColor(getRandColor(160,200)); for (int i=0;i50;i++) { int x = r.nextInt(width); int y = r.nextInt(height); int xl = r.nextInt(10); int yl = r.nextInt(10); gc.drawLine(x,y,x+xl,y+yl); } gc.setColor(getRandColor(60,150)); String rt = ""; for(int i=0;i4;i++){ String temp = rNum[r.nextInt(62)]; rt = rt+temp; gc.setFont(new Font("Times New Roman",style[r.nextInt(7)],15)); gc.drawString(temp,5+i*15+r.nextInt(10),10+r.nextInt(10)); } gc.dispose(); session.setAttribute("randNum",rt); OutputStream os=response.getOutputStream(); ImageIO.write(pic,"JPEG",os); System.out.println("當(dāng)前驗(yàn)證碼為:"+session.getAttribute("randNum")); os.flush(); os.close(); os=null; response.flushBuffer(); out.clear(); out = pageContext.pushBody(); % /body/html