javacms系統
『壹』 用java做一個CMS新聞發布系統,要用到access2003.
參考如下代碼:
MS Access在測試階段比較利於攜帶,Web開發初期我經常使用它。後期再移植到sqlServer或Oracle上。但最近在需要對資料庫中插入圖片文件時,發現了一個問題,即JDK自帶的JDBC-ODBC不支持java.sql.Blob里的方法,經過查閱Java API和程序調試,我找到了個變通的方法,即:
1,在寫入BLOB類型欄位時,使用java.sql.PreparedStatement的setBinaryStream方法,
2,讀出BLOB類型欄位時,因為返回的是位元組數組byte[]類型,可以把它轉換成ByteArrayInputStream然後讀出內容寫到文件里去。
這樣即使用JDK自帶的JDBC-ODBC驅動, 也能自如的在資料庫里讀寫上傳下載的文件了,哈哈。
import java.sql.*;
import java.io.*;
//對BLOB欄位先寫入(要求被寫入的文件存在),再讀出來
//要求先建立一個item表,有三個欄位,id(int),file_name(char),file_blob(blob)
//對Access, blob欄位應該設置成為「OLE對象」類型
public class blobtest{
public static void main(String[] args){
Connection conn = null;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
/*這里的資料庫的url一定要寫正確,這是關鍵,其中DBQ可以絕對路徑,也可以是相對路徑,為了體現數據存儲路徑的/獨立性,你可以將資料庫到不同的位試一下*/
String dbUrl = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=blob.mdb";
conn = DriverManager.getConnection(dbUrl,"","");
File file1=new File("fileToWrite.doc");
File file2=new File("fileRead.doc");
//BlobWriteForOracle( conn, file1);
//BlobReadForOracle( conn, file2);
BlobWriteForAccess( conn, file1);
BlobReadForAccess( conn, file2);
conn.close();
}catch(Exception ex){
System.err.println(ex.getMessage());
public static void BlobWriteForAccess( Connection conn, File file){
try{
conn.setAutoCommit(false); // 取消Connection對象的auto commit屬性
String file_name=file.getName();
// get maxid ( to avoid insert id repeatly )
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select max(id) from item");
rs.next();
int maxid = rs.getInt(1);
//maxid = (maxid==null)?0:maxid;
int id = maxid+1 ;
//System.out.println("write_id="+id);
PreparedStatement pstmt = conn.prepareStatement( "insert into item ( id, file_name, file_blob ) values ( " + id + ", ? , ? )" );
FileInputStream in = new FileInputStream(file );
int length = in.available();
pstmt.setString( 1, file_name );
pstmt.setBinaryStream( 2, in , in.available() );
System.out.println( "插入了 "+ pstmt.executeUpdate ()+ " 行數據, "
+ "id =" + id
+ ", 文件名是" + file.toString() +" , 共 "+ length +" bytes" );
conn.commit();
pstmt.close();
}catch(Exception ex){
ex.printStackTrace();
System.out.print("["+ex.getMessage()+"]");
try{
conn.rollback();
}catch(SQLException sqle){
System.err.println(sqle.getMessage());
}
}
public static void BlobReadForAccess( Connection conn, File file){
try{
conn.setAutoCommit(false); // 取消Connection對象的auto commit屬性
String file_name=file.getName();
// get maxid ( to avoid insert id repeatly )
Statement stmt1 = conn.createStatement();
ResultSet rs1 = stmt1.executeQuery("select max(id) from item");
rs1.next();
int maxid = rs1.getInt(1);
//maxid = (maxid==null)?0:maxid;
int id = maxid;
//System.out.println("read_id="+id);
String sql="SELECT file_blob FROM item WHERE id=" + id + ""; //
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery(sql);
rs.next();
Object obj1 = rs.getObject("file_blob"); // 得到BLOB對象
//System.out.println("type is :"+obj1.getClass().getName());
byte[] blob=(byte[])obj1;
FileOutputStream out=new FileOutputStream(file); // 建立輸出流
ByteArrayInputStream in=new ByteArrayInputStream(blob); // 建立輸入流
int size=1024;
byte[] buffer=new byte[size]; // 建立緩沖區
int len;
while((len=in.read(buffer)) != -1)
out.write(buffer,0,len);
in.close();
out.close();
conn.commit();
}catch(Exception ex){
ex.printStackTrace();
System.out.print("["+ex.getMessage()+"]");
try{
conn.rollback();
}catch(SQLException sqle){
System.err.println(sqle.getMessage());
}
『貳』 國內有哪些較好的Java開源CMS建站系統
下面給你推薦幾個Java開源CMS建站系統:
1、DoraCMS是基於Nodejs+express+mongodb編寫的一套內容管理系統,結構簡單,較目前一些開源的cms,doracms易於拓展,特別適合前端開發工程師做二次開發。
2、PublicCMS是採用2017年最新主流技術開發的免費開源JAVACMS系統。架構科學,輕松支持上千萬數據、千萬PV;支持全站靜態化,SSI,動態頁面局部靜態化等為您快速建站,建設大規模站點提供強大驅動,也是企業級項目產品原型的良好選擇。
3、電子商務平台及CMS建站系統 CmsWing
一款基於ThinkJS(Node.js MVC)和MySQL的功能強大的(PC端,手機端和微信公眾平台)電子商務平台及CMS建站系統。
『叄』 基於Java的開源CMS有哪些推薦,各自特點是什麼
選了10個最強大、最易用的CMS,向大家做一個簡要介紹。 Alfresco是一個開源的企業網站內容管理系統,它提供了文檔管理、多人協作、記錄管理、知識管理網頁內容和圖像管理等功能。它使用Spring、 Hibernate、 Lucene 和JSF等最新java技術構建了模塊化的系統架構。 Alfresco官方網站:http://www.alfresco.com/ 中文教程:http://blog.csdn.net/alfresco/ DotCMS是一個開源的企業級內容管理系統,它融入了電子商 務、個性化設置、客戶關系管理工具等功能,它可以方便的建立基於各種關系的數據結構和資料庫,它可以使用模板快速創建頁面,並且提供了一個強大的所見即所 得(WYSIWYG)編輯器。用戶可以使用載入外部模塊的功能快速的建立Ajax應用、搜索、MP3播放器、幻燈片和相冊等功能。 DotCMS官方網站http://dotcms.org/ 中文安裝教程http://www.javaeye.com/wiki/topic/277794 Magnolia是一個老牌的java內容管理系統,目前已經發布了第四版。它的獨特之處在於可以定製內容模型,以返回數組形式來搞定各種不確定的 功能。它遵循W3C標准並且在搜索引擎優化上有許多優勢。同時它支持java內容倉庫( java content repositories , JCR) 的API。 Magnolia官方網站http://www.magnolia-cms.com/home.html OpenCms 它提供了一套建立和維護網站的方便的工具。在內容建設方面,它擁有一個易於使用的界面和所見即所得編輯器,在網頁生成上它使用了一個先進的頁面模板。 OpenCMS官方網站http://www.opencms.org/opencms/en/index.html 中文網站http://www.opencms.cn/ Blandware AtLeap是一個多語種的免費Java內容管理系統,它包含了全文搜索引擎,可以算是一個能讓你方便的編寫應用的網站框架。 Atleap官方網站https://atleap.dev.java.net/ Fedora是「Flexible Extensible Digital Object Repository Architecture」的縮寫,並不是Linux發行版Fedora,是一個數字資源管理系統,它可以創建很多類型的數字圖書館、資料庫、檔案館系統 等。 Fedora官方網站http://www.fedora-commons.org/ Apache LenyaOpenEdit是一個開源的內容管理系統,它旨在建設基於在線數字資產的多媒體網站。它提供在線編輯,動態布局,拼寫檢查,用戶管理器,文件管理器,版本控制和通知工具。同時包含企業級的插件,如電子商務,內容管理,博客,活動日程表,社交網路工具等。 OpenEdit官方網站http://www.openedit.org/ 這是一個開源的 Java/XML 內容管理系統,提供了版本控制、多站點管理、調度、搜索、所見即所得編輯以及工作流程等功能。Apache Lyenya使用基於模塊的Cocoom開源程序框架。 Apache Lyenya官方網站http://lenya.apache.org/ 參考資料: http://www.adminbang.com/Webbiz/Exp/20091002-79842.html
『肆』 java開發一個網站,需要前台和後台管理系統,分別應該怎麼開發,都開發成一個獨立的項目
可以做成同一個系統,開發成為獨立系統。我曾經做過一個網站後台管理系統,主要是CMS內容管理和組織架構許可權管理,就是獨立出來分別管理兩個網站的。當然講網站和後台管理系統放在一起的話部署成本要小一些。
『伍』 java cms
CMS是什麼?
CMS是Content Management System的縮寫,意位「內容管理系統」。內容管理系統是一種位於Web前端(Web伺服器)和後端辦公系統或流程(內容創作、編輯)之間的軟體系統。
內容的創作人員、編輯人員、發布人員使用內容管理系統來提交、修改、審批、發布內容。這里指的「內容」還包括文件、表格、圖片、資料庫中的數據甚至視頻等一切你想要發布到互聯網中的信息。
一個內容管理系統通常有幾個要素:文檔模板、腳本語言或標記語言、與資料庫集成。內容的包含物右內嵌入頁面的特殊標記控制。這些標記對於一個內容管理系統通常是唯一的。這些系統通常有復雜的操作語言支持,如 Python,Perl或Java等。
內容管理在網站中的作用
CMS對站點管理和編輯人員的作用最大。這其中的好處是能夠使用模板和通用的設計元素以確保整個網站的協調。製作者只要在他們的文檔中採用少量的模板代碼,即可把精力集中在設計的內容上了。要改變網站的外觀,管理員只須修改模板而不是一個個單獨的頁面。
很多人內容管理系統允許對網站的不同層次面人員賦予不同等級的訪問許可權,這使得他們不必研究操作系統級的許可權設置,只改動瀏覽器借口即可完成。目前,新浪的CMS是C++製作的,重點強調數據結構的豐富,功能非常強大。評論回復系統做的最好的是網易,延伸閱讀做得也不錯。搜狐的圖庫系統做得最好。
其他的網站功能如搜索引擎、日歷、Web郵件等也會以第三方插件的形式集成進來。
國內CMS三大分類情況
由於針對的目標用戶不同,各個內容管理系統的一些特點都會有所不同。對於要想把CMS應用到網站中的站長而言,為了准確的網站定位,了解國內的CMS內容管理系統的分類情況是非常有必要的。
第一類,面向政府、事業單位,有內外網的應用,特點是用戶間的需求差距大,內容管理只是一個大的系統中的某一個部分,一個網站中可能有多個CMS系統。一般在實施時要求制定開發,不可能用現成產品來滿足需求。這樣的解決方案有:方正祥羽、清華萬博、WITS、中關村軟體等。這一類別的產品價格非常高,通常在幾萬元,也可能上百萬!
第二類,面向政府、媒體、ICP、大型企業,特點是維護內容的人數多,水平有高有低,但是需求比較明確,做各種類型的信息發布平台,要求承受的產品級的解決方案。相應的產品有:TurboCMS、TRS WCM、龍訊。
第三類,面向企業、個人,特點為用戶是網站技術愛好者,喜歡鑽研。需求上可能比較復雜,比如要跟BBS、用戶注冊等應用集成在一起,滿足個性化的需求,最好有原代碼,可以自己根據需要修改等等。
『陸』 JAVA CMS系統生成HTML文件
確實是這樣,每次留言後自動生成一次html,留言一般都有分頁,所以自動生成,並不浪費什麼性能。
『柒』 java程序員做過cms系統,在簡歷中項目經驗該怎麼寫
看你做的是哪個行業的CMS系統了。
現在程序員找工作,不要只寫自己會什麼技術,那些都是忽悠人的。
行內人都清楚這點,包括面試的時候,技術考官問的那些問題,不一定就是本公司用的,
為了考考你的知識面而已,或者就是他即興問的。
程序員的簡歷最吸引人力和公司高管的是你的項目經驗,和行業內業務知識。
所以我問你做的那個行業的CMS系統。這個在尋找下一家的時候很容易打動考官。
『捌』 基於Java的開源CMS有哪些推薦,各自特點是什麼
選了10個最強大、最易用的CMS,向大家做一個簡要介紹。
Alfresco是一個開源的企業網站內容管理系統,它提供了文檔管理、多人協作、記錄管理、知識管理網頁內容和圖像管理等功能。它使用Spring、 Hibernate、 Lucene 和JSF等最新java技術構建了模塊化的系統架構。
Alfresco官方網站:http://www.alfresco.com/
中文教程:http://blog.csdn.net/alfresco/
DotCMS是一個開源的企業級內容管理系統,它融入了電子商 務、個性化設置、客戶關系管理工具等功能,它可以方便的建立基於各種關系的數據結構和資料庫,它可以使用模板快速創建頁面,並且提供了一個強大的所見即所 得(WYSIWYG)編輯器。用戶可以使用載入外部模塊的功能快速的建立Ajax應用、搜索、MP3播放器、幻燈片和相冊等功能。
DotCMS官方網站http://dotcms.org/
中文安裝教程http://www.javaeye.com/wiki/topic/277794
Magnolia是一個老牌的java內容管理系統,目前已經發布了第四版。它的獨特之處在於可以定製內容模型,以返回數組形式來搞定各種不確定的 功能。它遵循W3C標准並且在搜索引擎優化上有許多優勢。同時它支持java內容倉庫( java content repositories , JCR) 的API。
Magnolia官方網站http://www.magnolia-cms.com/home.html
OpenCms
它提供了一套建立和維護網站的方便的工具。在內容建設方面,它擁有一個易於使用的界面和所見即所得編輯器,在網頁生成上它使用了一個先進的頁面模板。
OpenCMS官方網站http://www.opencms.org/opencms/en/index.html
中文網站http://www.opencms.cn/
Blandware AtLeap是一個多語種的免費Java內容管理系統,它包含了全文搜索引擎,可以算是一個能讓你方便的編寫應用的網站框架。
Atleap官方網站https://atleap.dev.java.net/
Fedora是「Flexible Extensible Digital Object Repository Architecture」的縮寫,並不是Linux發行版Fedora,是一個數字資源管理系統,它可以創建很多類型的數字圖書館、資料庫、檔案館系統 等。
Fedora官方網站http://www.fedora-commons.org/
Apache LenyaOpenEdit是一個開源的內容管理系統,它旨在建設基於在線數字資產的多媒體網站。它提供在線編輯,動態布局,拼寫檢查,用戶管理器,文件管理器,版本控制和通知工具。同時包含企業級的插件,如電子商務,內容管理,博客,活動日程表,社交網路工具等。
OpenEdit官方網站http://www.openedit.org/
這是一個開源的 Java/XML 內容管理系統,提供了版本控制、多站點管理、調度、搜索、所見即所得編輯以及工作流程等功能。Apache Lyenya使用基於模塊的Cocoom開源程序框架。
Apache Lyenya官方網站http://lenya.apache.org/
參考資料: http://www.adminbang.com/Webbiz/Exp/20091002-79842.html