當前位置:首頁 » 數據倉庫 » java和什麼資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

java和什麼資料庫

發布時間: 2023-03-11 23:25:27

㈠ java與oracle資料庫相連,用的是哪個jar文件

class12.jar文件。

㈡ Java資料庫主要有哪些

常用的資料庫有Mysql緩存資料庫 一般使用 Redis ,比較大型的項目我們一般一會使用orcal

㈢ java需要使用什麼資料庫

oracle、mysql、sqlserver等資料庫都行,java支持多種資料庫,只需要導入對應資料庫的驅動jar包就行。

㈣ java存儲富文本到什麼資料庫

在接收富文本時,資料庫接收含有圖片內容,圖片會自動轉換為Base64編碼保存到資料庫,導資料庫性能降低。

解決:在接收富文本內容時,將接收到的圖片轉換為文件上傳到Minio(Minio具體使用可參考文檔),然後將base64編碼替換為圖片地址保存
用到的工具類

使用正則表達式提取接收內容的Base64編碼工具類
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class ImgBaseUtil {
public static List<String> getImgStr(String htmlStr) {
List<String> list = new ArrayList<>();
String img = "";
Pattern p_image;
Matcher m_image;
// String regEx_img = "<img.*src=(.*?)[^>]*?>"; //圖片鏈接地址
String regEx_img = "<img.*src\\s*=\\s*(.*?)[^>]*?>";
p_image = Pattern.compile(regEx_img, Pattern.CASE_INSENSITIVE);
m_image = p_image.matcher(htmlStr);
while (m_image.find()) {
// 得到<img />數據
img = m_image.group();
// 匹配<img>中的src數據
Matcher m = Pattern.compile("src\\s*=\\s*\"?(.*?)(\"|>|\\s+)").matcher(img);
while (m.find()) {
list.add(m.group(1));
}
}
return list;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
將Base64編碼轉換為文件流的工具類
import org.springframework.web.multipart.MultipartFile;
import sun.misc.BASE64Decoder;

import java.io.*;

public class BASE64DecodedMultipartFile implements MultipartFile {

private final byte[] imgContent;
private final String header;

public BASE64DecodedMultipartFile(byte[] imgContent, String header) {
this.imgContent = imgContent;
this.header = header.split(";")[0];
}

@Override
public String getName() {
return System.currentTimeMillis() + Math.random() + "." + header.split("/")[1];
}

@Override
public String getOriginalFilename() {
return System.currentTimeMillis() + (int) Math.random() * 10000 + "." + header.split("/")[1];
}

@Override
public String getContentType() {
return header.split(":")[1];
}

@Override
public boolean isEmpty() {
return imgContent == null || imgContent.length == 0;
}

@Override
public long getSize() {
return imgContent.length;
}

@Override
public byte[] getBytes() throws IOException {
return imgContent;
}

@Override
public InputStream getInputStream() throws IOException {
return new ByteArrayInputStream(imgContent);
}

@Override
public void transferTo(File dest) throws IOException, IllegalStateException {
new FileOutputStream(dest).write(imgContent);
}

public static MultipartFile base64ToMultipart(String base64) {
try {
String[] baseStrs = base64.split(",");

BASE64Decoder decoder = new BASE64Decoder();
byte[] b = new byte[0];
b = decoder.decodeBuffer(baseStrs[1]);

for (int i = 0; i < b.length; ++i) {
if (b[i] < 0) {
b[i] += 256;
}
}
return new BASE64DecodedMultipartFile(b, baseStrs[0]);
} catch (IOException e) {
e.printStackTrace();
return null;
}
}

}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
內容接收並完成處理工具類
public class RichTextUtil {
/**
*
* @param text 富文本內容
* @return 返回處理圖片後的數據
*/
public String richText(String text,MinioUtils minioUtils,MinioConfig minioConfig){
String s=new String(text);
String result=null;//返回結果
List<String> imgStr = ImgBaseUtil.getImgStr(s); //每組base64編碼圖片
if (imgStr.isEmpty()){
return text;
}
for (String s1:imgStr){ //每個base64轉換並上傳
String s2= UUID.randomUUID().toString().replaceAll("-","")+".jpg"; //新的文件鏈接
//上傳
MultipartFile multipartFile = BASE64DecodedMultipartFile.base64ToMultipart(s1);
assert multipartFile != null;
minioUtils.putObject1(multipartFile,minioConfig.getBucketName(),s2);
String foreverUrl=minioConfig.getEndpoint()+":"+minioConfig.getPort()+"/"+minioConfig.getBucketName()+"/"+s2;//永久鏈接

if (Objects.isNull(result)){
result=s.replace(s1,foreverUrl); //第一次替換
}
result=result.replace(s1,foreverUrl); //前邊替換過,繼續替換

}
return result;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
配合Minio工具類使用

@GetMapping("/tss")
public String dmo(@RequestBody Entity entity) throws IOException {
String s=entity.getContent();//接收到的內容
RichTextUtil richTextUtil = new RichTextUtil();
String s1 = richTextUtil.richText(s,minioUtils,minioConfig);
entity.setContent(s1);//最後將轉換過的內容替換就行
//資料庫保存一下實體類內容
return entity;
}
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
Minio使用可查詢相關資料或了解本博客SpringBoot對Minio的簡單使用鏈接: http://t.csdn.cn/IJA0G

文章知識點與官方知識檔案匹配
Java技能樹使用JDBC操作資料庫資料庫操作
95211 人正在系統學習中
打開CSDN APP,看更多技術內容

...如D:\tmp)並回顯_靜靜看大海的博客_java 富文本保存...
1、項目需求: 使用網路富文本編輯器實現「重要節假日高速出行指南內容」編輯,功能涉及圖片、視頻上傳。 2、存在問題 網路富文本編輯器默認將圖片、視頻上傳至項目里,如果使用Tomcat作為伺服器的時候,如果不配置圖片保存路徑,將圖片保存在項...
繼續訪問
java 保存富文本_如何從Web應用程序保存富文本並將其顯示在富文本框中...
我建議彈出打開的寫字板(開始 - >運行... - > wordpad),並亂用不同的字體樣式等 . 然後將其保存為某處的RTF文檔 . 在您選擇的純文本編輯器中打開該文檔(我使用Notepad++),這將幫助您更輕松地找出RTF . ...
繼續訪問
Bootstrap富文本組件wysiwyg數據保存到mysql的方法
Bootstrap提供了一個叫wysiwyg的富文本組件,用來顯示和編輯富文本數據,但如何將編輯後的數據保存到MySQL資料庫,卻不得而知。另外,如何將mysql資料庫中的數據顯示到wysiwyg也不得而知,對於這兩個問題,讓我來告訴你解決方案! 一、效果展示 首先,我們先來看看效果如何: 富文本中有一張圖片,還有一個數字列表 我們可以看到編輯後的數據保存成功,以及保存後對應的展示。 二、富文本 度娘對於富文本的解釋如下: 富文本格式(Rich Text Format, 一般簡稱為RTF)是由微軟公司開發的跨平台文檔格式。大多數的文字處理軟體都能讀取和保存RTF文檔。RTF是Rich
富文本保存到資料庫
標題 富文本保存到資料庫 -idea String html = "<p wx:nodeid='135'>1.地方</p><p wx:nodeid='156'>2.第三方"; // 前端傳過來的富文本內容 String temp = HtmlUtils.htmlEscapeHex(html); System.err.println("存資料庫=\r\n" + temp); resume.setExperience(temp); Strin
繼續訪問
java中使用poi如何導富文本,Apache的POI - 讀取和存儲DB富文本內容
Using your favorite Java-to-database framework (JDBC, Hibernate, etc.), store the String value into contents in rich_text_string, and the associated FormattingRun object data into rt_formatting_runs. ...
繼續訪問
富文本保存到資料庫_黑潮之羽的博客_富文本保存到資料庫
富文本保存到資料庫 String html = "1.地方2.第三方"; // 前端傳過來的富文本內容 String temp = HtmlUtils.htmlEscapeHex(html); System.err.println("存資料庫=\r\n" + temp); resume.setExperience(temp); String returnHt...
繼續訪問
java富文本
【代碼】java富文本。
繼續訪問

富文本編輯器存MYSQL資料庫
一、MYSQL資料庫對應數據類型選用 longtest類型,對應java和mybatis框架類型為string。 二、富文本編輯器有特殊字元,存資料庫會轉義 在java代碼中,添加org.springframework.web.util.HtmlUtils 包下的 HtmlUtils.htmlEscapeHex(String);把html的特殊字元轉換成符合Intel HEX文件的字元串 HtmlUtils.htmlUnescape(...
繼續訪問
Java開發之富文本編輯器TinyMCE
一、題外話 最近負責了一個cms網站的運維,裡面存在很多和編輯器有關的問題,比如編輯一些新聞博客,論文模塊。系統採用的是FCKEditor,自我感覺不是很好,如下圖 特別是在用戶想插入一個圖片的話,就很麻煩,所有用戶共享一個文件目錄,這樣就不好了,於是便想到了TinyMCE編輯器,博客園默認的也是這個編輯器,接下 來,我們開始吧 二、TinyMCE編輯器集成步驟 2.1:下載相關文件...
繼續訪問
Java實現多文件上傳下載,kindeditor富文本保存為word文件,文件列表分頁顯示
介紹 SpringBoot+Thymeleaf+Myts項目部分功能, 實現文件的多文件上傳和下載,以及將kindeditor富文本內容保存為.doc文件 文件上傳/創建後以列表形式顯示,並且可以分頁顯示 提示 簡單記錄,僅供參考,代碼並不完整,需要簡單修改後才能使用(沒提供.css文件,需要刪除html中的class;另外部分變數通過session獲取,可以適當修改) 關鍵代碼 html: <!DOCTYPE html> <html lang="en" xmlns:th="http
繼續訪問

JAVA:富文本框截圖,將圖片的Base64轉File文件進行保存
代碼】JAVA:富文本框截圖,將圖片的Base64轉File文件進行保存。
繼續訪問
java 富文本框內容 保存與恢復,將富文本框內容直接保存到文件中。(不使用savefile對話框)...
how can I save the contents of a rich text box without needing to open the save file dialog.i think its something like:richTextBox1.SaveFile(@"\Documents\save_file_here.rtf");but it cant find the file...
繼續訪問
java富文本編輯數據存儲到資料庫簡單實現
java富文本編輯數據存儲到資料庫簡單實現-小白日記 前端代碼 <link rel="stylesheet" href="../themes/default/default.css" /> <script charset="utf-8" src="../kindeditor-all.js"></script> <script charset="utf-8" src="../lang/zh-CN.js"></script> ...
繼續訪問

Java解析富文本
富文本Java解析
繼續訪問
java 關於處理富文本保存,查詢,更新過慢問題
java 關於處理富文本保存,查詢,更新過慢問題 首先了解為什麼富文本保存,查詢,更新會過慢 資料庫富文本欄位類型為:longtext 類型 假如富文本裡面只保存文字的話,保存,查詢,更新都會很快 注意:只有富文本裡面插入圖片或者視頻的時候才會變的很慢–因為前端富文本組件會把圖片或視頻直接轉化為base64編碼,這樣保存量數據就會變的極大! 解決方案: 後端提供一個文件上傳的介面,前端富文本要插入圖片的時候直接調上傳介面,先把圖片或者視頻上傳到伺服器,返回圖片的url,前端把url直接放到 <im
繼續訪問
記一次富文本編輯器保存內容到資料庫轉換內容的問題
項目上要用到富文本編輯器,保存到資料庫的時候它會自動轉換成非HTML的格式,再次從資料庫讀取到頁面後格式全亂了。如圖:如果我們要按一開始我們輸入的格式正常顯示需要對保存的內容進行轉換,轉換成正常的HTML的格式方法是需要用到commons-lang3-3.3.2.jar 這個jar包下面的一個工具類String qualiHtml=StringEscapeUtils.unescapeHtml4(r...
繼續訪問
java 富文本 word_Java導出富文本到word
源碼地址:背景最近用java開發一個中車項目管理系統,裡面有一個維修單word導出功能。可用方案在網上查找資料,總結出兩種比較可行的方案。(1) 製作word模板,導出成mht文件(單頁面網頁格式),然後往模板里渲染數據,最終生成word文檔。(2) 製作word模板,導出成xml文件,然後往模板里渲染數據,最終生成word文檔。兩種都是採用模板的思想,比用poi去組織word格式簡單的很多很多。...
繼續訪問
191210P4 Java富文本編輯之圖片鏈接本地化
Java富文本編輯之圖片鏈接本地化 作者:邵發 官網:http://afanihao.cn/java 本文介紹在圖文混編項目中(博客、新聞等),如何將富文本中的圖片外鏈轉為本地鏈接的問題。本文是Java學習指南系列教程的官方配套文檔,項目源碼在本文末尾說明。 所謂富文本Rich Text,就是以HTML形式表示的文本。在前端通常由富文本編輯器得到,比如UEditor,KindEditor,w...
繼續訪問
java 富文本框內容 保存與恢復_使用富文本編輯器保存數據後進行fastjson格式轉換異常及序列化處理...
最近線上的ELK日誌監控爆出幾個異常問題,jsonException的解析問題。如下:message: 2019-04-10 23:37:43,952 ERROR aop.AspectAdvice eid=410724004 not match : - ,com.alibaba.fastjson.JSONException: not match : - , atcom.alibaba.fastjs...
繼續訪問
富文本編輯器內容存儲至Mysql
文章目錄概述獲取富文本編輯器內容後端數據處理 概述 在所有的編輯器中,大概最受歡迎的就是富文本編輯器和MarkDown編輯器了,無論哪一種編輯器,我們需要知道的是,發給後端的內容是帶著html標簽的字元串,而我們需要把這些字元串存儲到資料庫中,其實原理非常簡單,為了便於理解,我們首先創建一張表: CREATE TABLE `tb_title` ( `title_id` int(11) NOT NULL COMMENT '文章Id', `sort_id` int(11) DEFAULT NULL CO
繼續訪問

富文本數據保存
原文:https://blog.csdn.net/qing_gee/article/details/49331543 Bootstrap提供了一個叫wysiwyg的富文本組件,用來顯示和編輯富文本數據,但如何將編輯後的數據保存到mysql資料庫,卻不得而知。另外,如何將mysql資料庫中的數據顯示到wysiwyg也不得而知,對於這兩個問題,讓我來告訴你解決方案! 一、效果展示 首先,我們先來看...
繼續訪問

最新發布 java 將富文本轉化為word,保留原本格式
通過java,將富文本轉化為word
繼續訪問
熱門推薦 Bootstrap wysiwyg,將富文本數據保存到mysql
Bootstrap提供了一個叫[wysiwyg](http://www.bootcss.com/p/bootstrap-wysiwyg/)的富文本組件,用來顯示和編輯富文本數據,但如何將編輯後的數據保存到mysql資料庫,卻不得而知
繼續訪問
java富文本框信息如何保存
java
開發語言
寫評論

評論

10

3



分享

㈤ Java編寫程序,一般選用什麼資料庫

可以使用mysql、sqlserver、orcale資料庫
我們最開始使用的是sqlservlet,相比mysql簡單易學。
但是三者的代碼大同小異,學會一個就能學會所有
初學完後。可以使用Navicat
Premium這個軟體。簡單易用

㈥ Java資料庫,哪個更好用

我將推薦給你們10個最高效的Java資料庫
1、MongoDB——最受歡迎,跨平台,面向文檔的資料庫
MongoDB是一個基於分布式文件存儲的資料庫,使用C++語言編寫。旨在為Web應用提供可擴展的高性能數據存儲解決方案。應用性能高低依賴於資料庫性能,MongoDB則是非關系資料庫中功能最豐富,最像關系資料庫的,隨著MongDB 3.4版本發布,其應用場景適用能力得到了進一步拓展。
MongoDB的核心優勢就是靈活的文檔模型、高可用復制集、可擴展分片集群。你可以試著從幾大方面了解MongoDB,如實時監控MongoDB工具、內存使用量和頁面錯誤、連接數、資料庫操作、復制集等。
2、Elasticsearch ——為雲構建的分布式RESTful搜索引擎
ElasticSearch是基於Lucene的搜索伺服器。它提供了分布式多用戶能力的全文搜索引擎,基於RESTful web介面。Elasticsearch是用Java開發的,並作為Apache許可條款下的開放源碼發布,是比較流行的企業級搜索引擎。
ElasticSearch不僅是一個全文本搜索引擎,還是一個分布式實時文檔存儲,其中每個field均是被索引的數據且可被搜索;也是一個帶實時分析功能的分布式搜索引擎,並且能夠擴展至數以百計的伺服器存儲及處理PB級的數據。ElasticSearch在底層利用Lucene完成其索引功能,因此其許多基本概念源於Lucene。
3、Cassandra——開源分布式資料庫管理系統
最初是由Facebook開發的,旨在處理許多商品伺服器上的大量數據,提供高可用性,沒有單點故障。
Apache Cassandra是一套開源分布式NoSQL資料庫系統。集Google BigTable的數據模型與Amazon Dynamo的完全分布式架構於一身。於2008開源,此後,由於Cassandra良好的可擴展性,被Digg、Twitter等Web 2.0網站所採納,成為了一種流行的分布式結構化數據存儲方案。
因Cassandra是用Java編寫的,所以理論上在具有JDK6及以上版本的機器中都可以運行,官方測試的JDK還有OpenJDK 及Sun的JDK。 Cassandra的操作命令,類似於我們平時操作的關系資料庫,對於熟悉MySQL的朋友來說,操作會很容易上手。
4、Redis ——開源(BSD許可)內存數據結構存儲,用作資料庫,緩存和消息代理
Redis是一個開源的使用ANSI C語言編寫的、支持網路、可基於內存亦可持久化的日誌型、Key-Value資料庫,並提供多種語言的API。
Redis 有三個主要使其有別於其它很多競爭對手的特點:Redis是完全在內存中保存數據的資料庫,使用磁碟只是為了持久性目的; Redis相比許多鍵值數據存儲系統有相對豐富的數據類型; Redis可以將數據復制到任意數。Redis 這么火,它都解決了哪些問題?
5、Hazelcast ——基於Java的開源內存數據網格
Hazelcast 是一種內存數據網格 in-memory data grid,提供Java程序員關鍵任務交易和萬億級內存應用。雖然Hazelcast沒有所謂的「Master」,但是仍然有一個Leader節點(the oldest member),這個概念與ZooKeeper中的Leader類似,但是實現原理卻完全不同。同時,Hazelcast中的數據是分布式的,每一個member持有部分數據和相應的backup數據,這點也與ZooKeeper不同。
Hazelcast的應用便捷性深受開發者喜歡,但如果要投入使用,還需要慎重考慮。
6、Ehcache——廣泛使用的開源Java分布式緩存
主要面向通用緩存、Java EE和輕量級容器。
EhCache 是一個純Java的進程內緩存框架,具有快速、精乾等特點,是hibernate中默認的CacheProvider。
主要特性有:快速簡單,具有多種緩存策略;緩存數據有兩級,內存和磁碟,因此無需擔心容量問題;緩存數據會在虛擬機重啟的過程中寫入磁碟;可以通過RMI、可插入API等方式進行分布式緩存;具有緩存和緩存管理器的偵聽介面;支持多緩存管理器實例,以及一個實例的多個緩存區域;提供Hibernate的緩存實現。Ehcache介紹及整合Spring實現高速緩存。
7、Hadoop ——用Java編寫的開源軟體框架
用於分布式存儲,並對非常大的數據用戶可以在不了解分布式底層細節的情況下,開發分布式程序。充分利用集群進行高速運算和存儲。
Hadoop實現了一個分布式文件系統(Hadoop Distributed File System),簡稱HDFS。Hadoop的框架最核心的設計就是:HDFS和MapRece。HDFS為海量的數據提供了存儲,MapRece則為海量的數據提供了計算。
8、Solr ——開源企業搜索平台,用Java編寫,來自Apache Lucene項目
Solr是一個獨立的企業級搜索應用伺服器,它對外提供類似於Web-service的API介面。用戶可以通過http請求,向搜索引擎伺服器提交一定格式的XML文件,生成索引;也可以通過Http Get操作提出查找請求,並得到XML格式的返回結果。
與ElasticSearch一樣,同樣是基於Lucene,但它對其進行了擴展,提供了比Lucene更為豐富的查詢語言,同時實現了可配置、可擴展並對查詢性能進行了優化。
9、Spark ——Apache Software Foundation中最活躍的項目,是一個開源集群計算框架
Spark 是一種與 Hadoop 相似的開源集群計算環境,但是兩者之間還存在一些不同之處,這些不同之處使 Spark 在某些工作負載方面表現得更加優越,換句話說,Spark 啟用了內存分布數據集,除了能夠提供互動式查詢外,它還可以優化迭代工作負載。
Spark 是在 Scala 語言中實現的,它將 Scala 用作其應用程序框架。與 Hadoop 不同,Spark 和 Scala 能夠緊密集成,其中的 Scala 可以像操作本地集合對象一樣輕松地。
10、Memcached ——通用分布式內存緩存系統
Memcached是一套分布式快取系統,當初是Danga Interactive為了LiveJournal所發展的,但被許多軟體(如MediaWiki)所使用。Memcached作為高速運行的分布式緩存伺服器,具有以下的特點:協議簡單,基於libevent的事件處理,內置內存存儲方式。
通過以上的分析,相信你就知道怎麼選擇了