當前位置:首頁 » 編程語言 » java生成器

java生成器

發布時間: 2022-12-10 21:27:40

『壹』 昆明java培訓:學習java需要什麼軟體java編程軟體哪個好

學習java要什麼軟體?java編程軟體哪個好?昆明北大青鳥java培訓小編為你詳細解答!一、JDK(JavaDevelopmentKit)JDK是整個Java的核心,包括了Java運行環境(JavaRuntimeEnvirnment),一堆Java工具和Java基礎的類庫(rt.jar)。
不論什麼Java應用伺服器實質都是內置了某個版本的JDK。
因此掌握JDK是學好Java的第一步。
最主流的JDK是Sun公司發布的JDK,除了Sun之外,還有很多公司和組織都開發了自己的JDK,例如IBM公司開發的JDK,BEA公司的Jrocket,還有GNU組織開發的JDK等等。
其中IBM的JDK包含的JVM(JavaVirtualMachine)運行效率要比SunJDK包含的JVM高出許多。
而專門運行在x86平台的Jrocket在服務端運行效率也要比SunJDK好很多。
但不管怎麼說,我們還是需要先把SunJDK掌握好。
1、JDK的下載和安裝JDK又叫做J2SE(Java2SDKStandardEdition),可以從Sun的Java網站上下載到,#/j2se/downloads.html;,JDK當前最新的版本是J2SDK1.4.2,建議下載該版本的JDK,下載頁面在這里:http://#/j2se/1.4.2/download.html。
下載好的JDK是一個可執行安裝程序,默認安裝完畢後會在C:ProgramFilesJava目錄下安裝一套JRE(供瀏覽器來使用),在C:j2sdk1.4.2下安裝一套JDK(也包括一套JRE)。
然後我們需要在環境變數PATH的最前面增加java的路徑C:j2sdk1.4.2in。
這樣JDK就安裝好了。
2、JDK的命令工具JDK的最重要命令行工具:java:啟動JVM執行classjavac:Java編譯器jar:Java打包工具javadoc:Java文檔生成器這些命令行必須要非常非常熟悉,對於每個參數都要很精通才行。
對於這些命令的學習,JDKDocumentation上有詳細的文檔。
二、JDKDocumentationDocumentation在JDK的下載頁面也有下載連接,建議同時下載Documentation。
Documentation是最最重要的編程手冊,涵蓋了整個Java所有方面的內容的描述。
可以這樣說,學習Java編程,大部分時間都是花在看這個Documentation上面的。
我是隨身攜帶的,寫Java代碼的時候,隨時查看,須臾不離手。
三、應用伺服器(AppServer)AppServer是運行Java企業組件的平台,構成了應用軟體的主要運行環境。
當前主流的AppServer是BEA公司的WeblogicServer和IBM公司的Websphere以及免費的Jboss,選擇其中一個進行學習就可以了,個人推薦Weblogic,因為它的體系結構更加干凈,開發和部署更加方便,是Java企業軟體開發人員首選的開發平台。
下面簡要介紹幾種常用的AppServer:1、TomcatTomcat嚴格意義上並不是一個真正的AppServer,它只是一個可以支持運行Serlvet/JSP的Web容器,不過Tomcat也擴展了一些AppServer的功能,如JNDI,資料庫連接池,用戶事務處理等等。
Tomcat被非常廣泛的應用在中小規模的JavaWeb應用中,因此本文做一點下載、安裝和配置Tomcat的介紹:Tomcat是Apache組織下Jakarta項目下的一個子項目,它的主網站是:#/tomcat/;,Tomcat最新版本是Tomcat4.1.27,軟體下載的連接是:http://#/dist/jakarta/tomcat-4/binaries/;。
下載Tomcat既可以直接下載zip包,也可以下載exe安裝包(個人建議zip更干凈些),不管哪種情況,下載完畢安裝好以後(zip直接解壓縮就可以了)。
需要設置兩個環境變數:JAVA_HOME=C:j2sdk1.4.2CATALINA_HOME=D: omcat4(你的Tomcat安裝目錄)這樣就安裝好了,啟動Tomcat運行CATALINA_HOMEinstartup.bat,關閉Tomcat運行shutdown.bat腳本
Tomcat啟動以後,默認使用8080埠,因此可以用瀏覽器訪問http://localhost:8080來測試Tomcat是否正常啟動。
Tomcat提供了兩個Web界面的管理工具,URL分別是:http://localhost:8080/admin/index.jsp;http://localhost:8080/manager/html;在啟用這兩個管理工具之前,先需要手工配置一下管理員用戶和口令。
用一個文本工具打開CATALINA_HOMEconf omcat-users.xml這個文件,加入如下幾行:這樣用戶「robbin」就具備了超級管理員許可權。
重新啟動Tomcat以後,你就可以使用該用戶來登陸如上的兩個管理工具,通過Web方式進行Tomcat的配置和管理了。
2、BEAWeblogicWeblogic可以到BEA的網站上免費注冊之後下載到最新的Weblogic8.1企業版,License可以免費使用1年時間,其實這已經完全足夠了。
Weblogic的下載連接:#/index.jsp,Weblogic的在線文檔:http://#/;。
3、IBMWebshpereWebsphere同樣可以下載到免費的試用版本,到IBM的developerWorks網站可以看到Websphere試用產品的下載和相關的Websphere的資料,developerWorks中文網站的連接是:#/developerWorks/cn/wsdd/;,Websphere的下載連接:http://#/wsdd/downloads/WASsupport.html;。
4、JbossJboss是免費開源的AppServer,可以免費的從Jboss網站下載:#/index.html,然而Jboss的文檔是不免費,需要花錢購買,所以為我們學習Jboss設置了一定的障礙。
在Jdon上有幾篇不錯的Jboss配置文檔,可以用來參考:http://#/idea.html;四、Java應用的運行環境Java的應用可以簡單分為以下幾個方面:1、Java的桌面應用桌面應用一般僅僅需要JRE的支持就足夠了。
2、JavaWeb應用Java的Web應用至少需要安裝JDK和一個web容器(例如Tomcat),以及一個多用戶資料庫,Web應用至少分為三層:Browser層:瀏覽器顯示用戶頁面Web層:運行Servlet/JSPDB層:後端資料庫,向Java程序提供數據訪問服務3、Java企業級應用企業級應用比較復雜,可以擴展到n層,最簡單情況會分為4層:Browser層:瀏覽器顯示用戶頁面Client層:Java客戶端圖形程序(或者嵌入式設備的程序)直接和Web層或者EJB層交互Web層:運行Servlet/JSPEJB層:運行EJB,完成業務邏輯運算DB層:後端資料庫,向Java程序提供數據訪問服務4、Java嵌入式應用Java嵌入式應用是一個方興未艾的領域,從事嵌入式開發,需要從Sun下載J2ME開發包,J2ME包含了嵌入式設備專用虛擬機KVM,和普通的JDK中包含的JVM有所不同。
另外還需要到特定的嵌入式廠商那裡下載模擬器。

『貳』 java自帶的uuid生成器生成的uuid靠譜嗎

這是靠譜的。
因為java自帶的UUID類,它是通過結合機器的網卡、時間、一個隨即數來生成ID的。如果一台機器每秒產生10000000個ID,可以保證(概率意義上)3240年不重復。

『叄』 java中隨機數生成器中的種子是什麼類型的參數表示什麼隨機數上限,隨機區間長度

首先:
Random r=new Random(seedValue);

中的seedValue是種子,使用r.netInt()或者r.netLong()生成的值和種子沒有明顯的關系。
但如果同時聲明兩個Random類的實例,種子用同一個的話,那麼產生同一個類型的隨機數時,他們的結果是一樣的。
netLong()的范圍是Long類型所能表示的數據范圍,同理netInt()。

『肆』 java代碼生成器怎麼用

zip包,然後自動下載下來

1.預先定義好模板

最後放出源代碼:

package com.et.controller.system.createcode;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletResponse;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import com.et.controller.base.BaseController;
import com.et.util.DelAllFile;
import com.et.util.FileDownload;
import com.et.util.FileZip;
import com.et.util.Freemarker;
import com.et.util.PageData;
import com.et.util.PathUtil;

/**
* 類名稱:FreemarkerController
* 創建人:Harries
* 創建時間:2015年1月12日
* @version
*/
@Controller
@RequestMapping(value=」/createCode」)
public class CreateCodeController extends BaseController {

/**
* 生成代碼
*/
@RequestMapping(value=」/proCode」)
public void proCode(HttpServletResponse response) throws Exception{
PageData pd = new PageData();
pd = this.getPageData();

/* ============================================================================================= */
String packageName = pd.getString(「packageName」); //包名 ========1
String objectName = pd.getString(「objectName」); //類名 ========2
String tabletop = pd.getString(「tabletop」); //表前綴 ========3
tabletop = null == tabletop?」」:tabletop.toUpperCase(); //表前綴轉大寫
String zindext = pd.getString(「zindex」); //屬性總數
int zindex = 0;
if(null != zindext && !」」.equals(zindext)){
zindex = Integer.parseInt(zindext);
}
List<String[]> fieldList = new ArrayList<String[]>(); //屬性集合 ========4
for(int i=0; i< zindex; i++){
fieldList.add(pd.getString(「field」+i).split(「,fh,」)); //屬性放到集合裡面
}

Map<String,Object> root = new HashMap<String,Object>(); //創建數據模型
root.put(「fieldList」, fieldList);
root.put(「packageName」, packageName); //包名
root.put(「objectName」, objectName); //類名
root.put(「objectNameLower」, objectName.toLowerCase()); //類名(全小寫)
root.put(「objectNameUpper」, objectName.toUpperCase()); //類名(全大寫)
root.put(「tabletop」, tabletop); //表前綴
root.put(「nowDate」, new Date()); //當前日期

DelAllFile.delFolder(PathUtil.getClasspath()+」admin/ftl」); //生成代碼前,先清空之前生成的代碼
/* ============================================================================================= */

String filePath = 「admin/ftl/code/」; //存放路徑
String ftlPath = 「createCode」; //ftl路徑

/*生成controller*/
Freemarker.printFile(「controllerTemplate.ftl」, root, 「controller/」+packageName+」/」+objectName.toLowerCase()+」/」+objectName+」Controller.java」, filePath, ftlPath);

/*生成service*/
Freemarker.printFile(「serviceTemplate.ftl」, root, 「service/」+packageName+」/」+objectName.toLowerCase()+」/」+objectName+」Service.java」, filePath, ftlPath);

/*生成mybatis xml*/
Freemarker.printFile(「mapperMysqlTemplate.ftl」, root, 「mybatis_mysql/」+packageName+」/」+objectName+」Mapper.xml」, filePath, ftlPath);
Freemarker.printFile(「mapperOracleTemplate.ftl」, root, 「mybatis_oracle/」+packageName+」/」+objectName+」Mapper.xml」, filePath, ftlPath);

/*生成SQL腳本*/
Freemarker.printFile(「mysql_SQL_Template.ftl」, root, 「mysql資料庫腳本/」+tabletop+objectName.toUpperCase()+」.sql」, filePath, ftlPath);
Freemarker.printFile(「oracle_SQL_Template.ftl」, root, 「oracle資料庫腳本/」+tabletop+objectName.toUpperCase()+」.sql」, filePath, ftlPath);

/*生成jsp頁面*/
Freemarker.printFile(「jsp_list_Template.ftl」, root, 「jsp/」+packageName+」/」+objectName.toLowerCase()+」/」+objectName.toLowerCase()+」_list.jsp」, filePath, ftlPath);
Freemarker.printFile(「jsp_edit_Template.ftl」, root, 「jsp/」+packageName+」/」+objectName.toLowerCase()+」/」+objectName.toLowerCase()+」_edit.jsp」, filePath, ftlPath);

/*生成說明文檔*/
Freemarker.printFile(「docTemplate.ftl」, root, 「說明.doc」, filePath, ftlPath);

//this.print(「oracle_SQL_Template.ftl」, root); 控制台列印

/*生成的全部代碼壓縮成zip文件*/
FileZip.zip(PathUtil.getClasspath()+」admin/ftl/code」, PathUtil.getClasspath()+」admin/ftl/code.zip」);

/*下載代碼*/
FileDownload.fileDownload(response, PathUtil.getClasspath()+」admin/ftl/code.zip」, 「code.zip」);

}

}

『伍』 generator生成器是什麼意思java

generator
[英][ˈdʒenəreɪtə(r)][美][ˈdʒɛnəˌretɚ]
n.
發電機,發生器; 電力公司; 生產者,創始者; [樂]基礎低音;

1
They have a generator when the electricity fails.
他們有一台發電機,以備停電時所需。

『陸』 Java使用字元串生成器來保存購物車中的商品信息,並能實現商品信息的添加、刪除以及修改等功能

publicclassCart{
publicStringBuilderdata;
publicfloattotal;
publicCart(){
data=newStringBuilder();
}
publicvoidbuy(Goodsg){
g.gtotal=g.gnum*g.gprice;
total=total+g.gtotal;
data.append("[");
data.append(g.gname+"|");
data.append(g.gprice+"|");
data.append(g.gnum+"|");//還是豎線看著方便
data.append(g.gtotal);
data.append("]");
}
publicvoiddelete(Goodsg){
ints=data.indexOf(g.gname);
inte=data.indexOf("]",s);
data.delete(s-1,e+1);
total=total-g.gtotal;//刪除商品,需要修改總額
}
publicvoipdate(Goodsg){
data.replace(3,10,"["+g.gname+"|"+g.gprice+"|"+g.gnum+"|"+g.gtotal);
}
publicvoidshow(){
System.out.print("總計金額:"+total+"");
System.out.println(data);
}
}


//Excute類里有點小錯誤,
//總覺得update方法不對頭,你想怎麼做?

『柒』 java代碼生成器能生成c語言代碼嗎用什麼方法能實現呢

按照我的理解,可以的,代碼生成器是跨平台,而且是跨語言的(至少是跨文本語言的,UML暫時不好說,)。
代碼生成器作為一種開發工具,一般不直接作為程序的一部分,通常也不直接或間接(如通過AOP)被程序調用,他是通過編程的方式生成所需要的代碼,然後將生成的代碼作為源文件,復制到開發工具的代碼區,然後進行編譯。由於代碼生成器是在編譯之前運行的,因此它可以跨語言,你不但可以用代碼生成器生成高級語言,也可以生成匯編語言,甚至機器碼(0、1代碼)。
但編寫代碼生成器是一個難點,它需要你了解目標編程語言的語法。如果別人已經把你需要的代碼生成器寫好了,你只需按要求使用即可,此時就不需要了解目標編程語言的語法。
JNI是通過Java調用C語言(或其他語言,一般是C),它的實現機制與代碼生成器不同(JNI是通過代碼調用實現功能,而代碼生成器是生成代碼,復制代碼進行使用),由於C是底層語言,一些底層操作單靠Java無法實現,所以才需要JNI。
以上是我對代碼生成器的個人理解,雖然提問時間已過了很久,但依然希望能對你及其他網友有所幫助。

『捌』 如何用JAVA編寫個8位密碼生成器(只能是大小寫字母和數字)

1.先回答你第一個問題:ch!=null這句語句肯定是錯誤的,因為ch表示的是一個字元,null表示的是空對象,所以如果寫ch!=null,編譯的時候肯定是要報錯的,你必須寫成ch!=' ',前面的為英文引號,引號中間有一個空格。
2.回答你第2個問題,就是怎麼使str!=null,你可以在for語句中加一個判斷,假如ch== ' ',則這次循環不算,則結果中肯定不會出現null的,見下面的代碼。
int j=0,n=0,i=0;
Srting str="";
char ch;
for(j=0;j<=7;j++){
n=Math.random()*122;
i=(int)n;
if((i>=48 && i<=57)||(i>=65 && i<=90) || (i>=97 && i<=122)){
ch=(char)i;
}
//判斷來了
else {
j=j-1; //即是這次循環不算,則不可能出現null了

}

}
3.回答你第三個問題:如何輸出這24個數呢?見下代碼
for (int i = 1; i < 5; i++) {
for (int j = 1; j < 5; j++) {
if (i!=j) {
for (int j2 = 1; j2 < 5; j2++) {
if (j2!=j&&j2!=i) {
System.out.println(""+i+j+j2); //這句話把數字轉換為字元串,
//便於輸出

}
}
}
}
}

4. 我對你的意思理解為:用一個字元替換指定位的字元,如果是這樣的話,replace不能夠做到。
replace的方法原型為:
String replace(char oldChar, char newChar) ;
意思為:返回一個新的字元串,它是通過用 newChar 替換此字元串中出現的所有 oldChar 得到的。
如果要完成樓主的要求,請看以下代碼,我寫了一個替換函數:
String tihuan(String string,int index,char ch){
//index表示你要替換的字元位置,第一位為1
char[] chs=string.toCharArray();
chs[index-1]=ch;
String string1=new String(chs);
return string1;

}
//多多指教啊
//希望對你有幫助啊

『玖』 java代碼生成器用途

代碼生成器就是根據特定的要求制定格式,靈活輸出在項目中重復要用到的代碼,節省項目時間,現在免費的代碼生成器codesmith我經常用的,小玩意,不花錢

『拾』 java:使用數組,循環,if判斷及隨機數工具類完成彩票生成器

按照你的要求編寫的35選7彩票生成器的Java程序如下

importjava.util.Arrays;
publicclassF{
publicstaticStringrandom(){
int[]a=newint[7];
intcount=0;
while(count<7){
booleanflag=false;
inttmp=(int)(Math.random()*35)+1;
for(inti=0;i<a.length;i++){
if(tmp==a[i]){
flag=true;
}
}
if(flag==false){
a[count]=tmp;
count++;
}
}
//對選出的7個數排序
Arrays.sort(a);
//輸出35選7的結果並在個位數前補0
Strings="";
for(inti=0;i<a.length;i++){
if(i==a.length-1){
if(a[i]<10){
s=s+"0"+a[i];
}else{
s=s+a[i];
}
}else{
if(a[i]<10){
s=s+"0"+a[i]+",";
}else{
s=s+a[i]+",";
}
}
}
returns;
}
publicstaticvoidmain(String[]args){
System.out.println(random());
}
}

運行結果

05,10,14,16,22,28,31

多試幾次會有不同結果

熱點內容
微信在安卓手機的哪個文件夾 發布:2025-01-21 18:43:52 瀏覽:51
sql127001 發布:2025-01-21 18:31:50 瀏覽:112
伺服器ip是什麼格式 發布:2025-01-21 18:13:13 瀏覽:706
oa和郵箱的初始密碼在哪裡改 發布:2025-01-21 18:08:46 瀏覽:52
如何去除pdf的加密 發布:2025-01-21 18:08:46 瀏覽:565
雲端的伺服器怎麼設置ip 發布:2025-01-21 17:48:52 瀏覽:186
會議腳本 發布:2025-01-21 17:41:29 瀏覽:23
android的toast 發布:2025-01-21 17:41:28 瀏覽:9
linux默認安裝的mysql 發布:2025-01-21 17:40:08 瀏覽:912
java輸出資料庫 發布:2025-01-21 17:35:38 瀏覽:963