只能寫個大概的,要寫數(shù)據(jù)到數(shù)據(jù)庫中,先得在數(shù)據(jù)庫中建庫,庫里建表,表里建字段,然后java里建立數(shù)據(jù)庫連接,用SQL語言寫數(shù)據(jù)到表中的字段\x0d\x0aClass.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance(); \x0d\x0a//String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=數(shù)據(jù)庫名"; //7.0、2000\x0d\x0aString url="jdbc:sqlserver://localhost:1433;DatabaseName=數(shù)據(jù)庫名"; //2005\x0d\x0aConnection conn=null;\x0d\x0aconn= DriverManager.getConnection(url,用戶名,密碼); \x0d\x0aPreparedStatement pst=null;\x0d\x0apst=conn.prepareStatement("Insert Into grade(表名) Values (?)");\x0d\x0apst.setInt(1,你要寫的整弄數(shù)據(jù));\x0d\x0a//pst.setString(2,你要寫的字符串?dāng)?shù)據(jù));\x0d\x0apst.addBatch();\x0d\x0apst.executeBatch();
創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站制作、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的陽東網(wǎng)站設(shè)計(jì)、移動媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
在接收富文本時,數(shù)據(jù)庫接收含有圖片內(nèi)容,圖片會自動轉(zhuǎn)換為Base64編碼保存到數(shù)據(jù)庫,導(dǎo)數(shù)據(jù)庫性能降低。
解決:在接收富文本內(nèi)容時,將接收到的圖片轉(zhuǎn)換為文件上傳到Minio(Minio具體使用可參考文檔),然后將base64編碼替換為圖片地址保存
用到的工具類
使用正則表達(dá)式提取接收內(nèi)容的Base64編碼工具類
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ImgBaseUtil {
public static ListString getImgStr(String htmlStr) {
ListString 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 /數(shù)據(jù)
img = m_image.group();
// 匹配img中的src數(shù)據(jù)
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編碼轉(zhuǎn)換為文件流的工具類
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
內(nèi)容接收并完成處理工具類
public class RichTextUtil {
/**
*
* @param text 富文本內(nèi)容
* @return 返回處理圖片后的數(shù)據(jù)
*/
public String richText(String text,MinioUtils minioUtils,MinioConfig minioConfig){
String s=new String(text);
String result=null;//返回結(jié)果
ListString imgStr = ImgBaseUtil.getImgStr(s); //每組base64編碼圖片
if (imgStr.isEmpty()){
return text;
}
for (String s1:imgStr){ //每個base64轉(zhuǎn)換并上傳
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); //前邊替換過,繼續(xù)替換
}
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();//接收到的內(nèi)容
RichTextUtil richTextUtil = new RichTextUtil();
String s1 = richTextUtil.richText(s,minioUtils,minioConfig);
entity.setContent(s1);//最后將轉(zhuǎn)換過的內(nèi)容替換就行
//數(shù)據(jù)庫保存一下實(shí)體類內(nèi)容
return entity;
}
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
Minio使用可查詢相關(guān)資料或了解本博客SpringBoot對Minio的簡單使用鏈接:
文章知識點(diǎn)與官方知識檔案匹配
Java技能樹使用JDBC操作數(shù)據(jù)庫數(shù)據(jù)庫操作
95211 人正在系統(tǒng)學(xué)習(xí)中
打開CSDN APP,看更多技術(shù)內(nèi)容
...如D:\tmp)并回顯_靜靜看大海的博客_java 富文本保存...
1、項(xiàng)目需求: 使用百度富文本編輯器實(shí)現(xiàn)“重要節(jié)假日高速出行指南內(nèi)容”編輯,功能涉及圖片、視頻上傳。 2、存在問題 百度富文本編輯器默認(rèn)將圖片、視頻上傳至項(xiàng)目里,如果使用Tomcat作為服務(wù)器的時候,如果不配置圖片保存路徑,將圖片保存在項(xiàng)...
繼續(xù)訪問
java 保存富文本_如何從Web應(yīng)用程序保存富文本并將其顯示在富文本框中...
我建議彈出打開的寫字板(開始 - 運(yùn)行... - wordpad),并亂用不同的字體樣式等 . 然后將其保存為某處的RTF文檔 . 在您選擇的純文本編輯器中打開該文檔(我使用Notepad++),這將幫助您更輕松地找出RTF . ...
繼續(xù)訪問
Bootstrap富文本組件wysiwyg數(shù)據(jù)保存到mysql的方法
Bootstrap提供了一個叫wysiwyg的富文本組件,用來顯示和編輯富文本數(shù)據(jù),但如何將編輯后的數(shù)據(jù)保存到MySQL數(shù)據(jù)庫,卻不得而知。另外,如何將mysql數(shù)據(jù)庫中的數(shù)據(jù)顯示到wysiwyg也不得而知,對于這兩個問題,讓我來告訴你解決方案! 一、效果展示 首先,我們先來看看效果如何: 富文本中有一張圖片,還有一個數(shù)字列表 我們可以看到編輯后的數(shù)據(jù)保存成功,以及保存后對應(yīng)的展示。 二、富文本 度娘對于富文本的解釋如下: 富文本格式(Rich Text Format, 一般簡稱為RTF)是由微軟公司開發(fā)的跨平臺文檔格式。大多數(shù)的文字處理軟件都能讀取和保存RTF文檔。RTF是Rich
富文本保存到數(shù)據(jù)庫
標(biāo)題 富文本保存到數(shù)據(jù)庫 -idea String html = "p wx:nodeid='135'1.地方/pp wx:nodeid='156'2.第三方"; // 前端傳過來的富文本內(nèi)容 String temp = HtmlUtils.htmlEscapeHex(html); System.err.println("存數(shù)據(jù)庫=\r\n" + temp); resume.setExperience(temp); Strin
繼續(xù)訪問
java中使用poi如何導(dǎo)富文本,Apache的POI - 讀取和存儲DB富文本內(nèi)容
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. ...
繼續(xù)訪問
富文本保存到數(shù)據(jù)庫_黑潮之羽的博客_富文本保存到數(shù)據(jù)庫
富文本保存到數(shù)據(jù)庫 String html = "1.地方2.第三方"; // 前端傳過來的富文本內(nèi)容 String temp = HtmlUtils.htmlEscapeHex(html); System.err.println("存數(shù)據(jù)庫=\r\n" + temp); resume.setExperience(temp); String returnHt...
繼續(xù)訪問
java富文本
【代碼】java富文本。
繼續(xù)訪問
富文本編輯器存MYSQL數(shù)據(jù)庫
一、MYSQL數(shù)據(jù)庫對應(yīng)數(shù)據(jù)類型選用 longtest類型,對應(yīng)java和mybatis框架類型為string。 二、富文本編輯器有特殊字符,存數(shù)據(jù)庫會轉(zhuǎn)義 在java代碼中,添加org.springframework.web.util.HtmlUtils 包下的 HtmlUtils.htmlEscapeHex(String);把html的特殊字符轉(zhuǎn)換成符合Intel HEX文件的字符串 HtmlUtils.htmlUnescape(...
繼續(xù)訪問
Java開發(fā)之富文本編輯器TinyMCE
一、題外話 最近負(fù)責(zé)了一個cms網(wǎng)站的運(yùn)維,里面存在很多和編輯器有關(guān)的問題,比如編輯一些新聞博客,論文模塊。系統(tǒng)采用的是FCKEditor,自我感覺不是很好,如下圖 特別是在用戶想插入一個圖片的話,就很麻煩,所有用戶共享一個文件目錄,這樣就不好了,于是便想到了TinyMCE編輯器,博客園默認(rèn)的也是這個編輯器,接下 來,我們開始吧 二、TinyMCE編輯器集成步驟 2.1:下載相關(guān)文件...
繼續(xù)訪問
Java實(shí)現(xiàn)多文件上傳下載,kindeditor富文本保存為word文件,文件列表分頁顯示
介紹 SpringBoot+Thymeleaf+Mybaits項(xiàng)目部分功能, 實(shí)現(xiàn)文件的多文件上傳和下載,以及將kindeditor富文本內(nèi)容保存為.doc文件 文件上傳/創(chuàng)建后以列表形式顯示,并且可以分頁顯示 提示 簡單記錄,僅供參考,代碼并不完整,需要簡單修改后才能使用(沒提供.css文件,需要刪除html中的class;另外部分變量通過session獲取,可以適當(dāng)修改) 關(guān)鍵代碼 html: !DOCTYPE html html lang="en" xmlns:th="http
繼續(xù)訪問
JAVA:富文本框截圖,將圖片的Base64轉(zhuǎn)File文件進(jìn)行保存
代碼】JAVA:富文本框截圖,將圖片的Base64轉(zhuǎn)File文件進(jìn)行保存。
繼續(xù)訪問
java 富文本框內(nèi)容 保存與恢復(fù),將富文本框內(nèi)容直接保存到文件中。(不使用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...
繼續(xù)訪問
java富文本編輯數(shù)據(jù)存儲到數(shù)據(jù)庫簡單實(shí)現(xiàn)
java富文本編輯數(shù)據(jù)存儲到數(shù)據(jù)庫簡單實(shí)現(xiàn)-小白日記 前端代碼 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 ...
繼續(xù)訪問
Java解析富文本
富文本Java解析
繼續(xù)訪問
java 關(guān)于處理富文本保存,查詢,更新過慢問題
java 關(guān)于處理富文本保存,查詢,更新過慢問題 首先了解為什么富文本保存,查詢,更新會過慢 數(shù)據(jù)庫富文本字段類型為:longtext 類型 假如富文本里面只保存文字的話,保存,查詢,更新都會很快 注意:只有富文本里面插入圖片或者視頻的時候才會變的很慢–因?yàn)榍岸烁晃谋窘M件會把圖片或視頻直接轉(zhuǎn)化為base64編碼,這樣保存量數(shù)據(jù)就會變的極大! 解決方案: 后端提供一個文件上傳的接口,前端富文本要插入圖片的時候直接調(diào)上傳接口,先把圖片或者視頻上傳到服務(wù)器,返回圖片的url,前端把url直接放到 im
繼續(xù)訪問
記一次富文本編輯器保存內(nèi)容到數(shù)據(jù)庫轉(zhuǎn)換內(nèi)容的問題
項(xiàng)目上要用到富文本編輯器,保存到數(shù)據(jù)庫的時候它會自動轉(zhuǎn)換成非HTML的格式,再次從數(shù)據(jù)庫讀取到頁面后格式全亂了。如圖:如果我們要按一開始我們輸入的格式正常顯示需要對保存的內(nèi)容進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換成正常的HTML的格式方法是需要用到commons-lang3-3.3.2.jar 這個jar包下面的一個工具類String qualiHtml=StringEscapeUtils.unescapeHtml4(r...
繼續(xù)訪問
java 富文本 word_Java導(dǎo)出富文本到word
源碼地址:背景最近用java開發(fā)一個中車項(xiàng)目管理系統(tǒng),里面有一個維修單word導(dǎo)出功能??捎梅桨冈诰W(wǎng)上查找資料,總結(jié)出兩種比較可行的方案。(1) 制作word模板,導(dǎo)出成mht文件(單頁面網(wǎng)頁格式),然后往模板里渲染數(shù)據(jù),最終生成word文檔。(2) 制作word模板,導(dǎo)出成xml文件,然后往模板里渲染數(shù)據(jù),最終生成word文檔。兩種都是采用模板的思想,比用poi去組織word格式簡單的很多很多。...
繼續(xù)訪問
191210P4 Java富文本編輯之圖片鏈接本地化
Java富文本編輯之圖片鏈接本地化 作者:邵發(fā) 官網(wǎng): 本文介紹在圖文混編項(xiàng)目中(博客、新聞等),如何將富文本中的圖片外鏈轉(zhuǎn)為本地鏈接的問題。本文是Java學(xué)習(xí)指南系列教程的官方配套文檔,項(xiàng)目源碼在本文末尾說明。 所謂富文本Rich Text,就是以HTML形式表示的文本。在前端通常由富文本編輯器得到,比如UEditor,KindEditor,w...
繼續(xù)訪問
java 富文本框內(nèi)容 保存與恢復(fù)_使用富文本編輯器保存數(shù)據(jù)后進(jìn)行fastjson格式轉(zhuǎn)換異常及序列化處理...
最近線上的ELK日志監(jiān)控爆出幾個異常問題,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...
繼續(xù)訪問
富文本編輯器內(nèi)容存儲至Mysql
文章目錄概述獲取富文本編輯器內(nèi)容后端數(shù)據(jù)處理 概述 在所有的編輯器中,大概最受歡迎的就是富文本編輯器和MarkDown編輯器了,無論哪一種編輯器,我們需要知道的是,發(fā)給后端的內(nèi)容是帶著html標(biāo)簽的字符串,而我們需要把這些字符串存儲到數(shù)據(jù)庫中,其實(shí)原理非常簡單,為了便于理解,我們首先創(chuàng)建一張表: CREATE TABLE `tb_title` ( `title_id` int(11) NOT NULL COMMENT '文章Id', `sort_id` int(11) DEFAULT NULL CO
繼續(xù)訪問
富文本數(shù)據(jù)保存
原文: Bootstrap提供了一個叫wysiwyg的富文本組件,用來顯示和編輯富文本數(shù)據(jù),但如何將編輯后的數(shù)據(jù)保存到mysql數(shù)據(jù)庫,卻不得而知。另外,如何將mysql數(shù)據(jù)庫中的數(shù)據(jù)顯示到wysiwyg也不得而知,對于這兩個問題,讓我來告訴你解決方案! 一、效果展示 首先,我們先來看...
繼續(xù)訪問
最新發(fā)布 java 將富文本轉(zhuǎn)化為word,保留原本格式
通過java,將富文本轉(zhuǎn)化為word
繼續(xù)訪問
熱門推薦 Bootstrap wysiwyg,將富文本數(shù)據(jù)保存到mysql
Bootstrap提供了一個叫[wysiwyg]()的富文本組件,用來顯示和編輯富文本數(shù)據(jù),但如何將編輯后的數(shù)據(jù)保存到mysql數(shù)據(jù)庫,卻不得而知
繼續(xù)訪問
java富文本框信息如何保存
java
開發(fā)語言
寫評論
評論
10
3
踩
分享
首先你得先連接數(shù)據(jù)庫
然后發(fā)送查詢語句select
好久沒連數(shù)據(jù)庫了,忘了數(shù)據(jù)庫查詢不到內(nèi)容在Java中報(bào)什么錯了,你可以試下,然后根據(jù)報(bào)錯內(nèi)容進(jìn)行判斷
如果沒報(bào)錯,那就能查到內(nèi)容,發(fā)送update語句進(jìn)行修改
如果報(bào)錯,是因?yàn)闆]查到內(nèi)容報(bào)錯,那就發(fā)送alter語句進(jìn)行新增
當(dāng)前標(biāo)題:jAVA代碼存放數(shù)據(jù)庫 java的數(shù)據(jù)庫
分享網(wǎng)址:http://jinyejixie.com/article4/dophdie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站排名、定制網(wǎng)站、軟件開發(fā)、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)