从derby中的jtextpane中保存内容?

时间:2014-01-05 00:49:19

标签: java swing jdbc derby jtextpane

如何在德比中保存jtextpane中的内容? 我正在编写一个具有jtetxpane和derby db的软件,当我将文本保存为String时,在读取它时,它会丢失所有字体样式,如粗体或斜体。 我将字符串whit保存为preparedStatemend.so如何在德比中保存文本?我在想一个blob,那么如何从jtextpane中保存blob并阅读呢?或者我该如何保存? 我该怎么办呢? 抱歉,如果我的英语不好。

插入:

        try {
        String driver = "org.apache.derby.jdbc.EmbeddedDriver";
        String dbName = "bdprueba";
        String dbParam = "create=true"; //la base de datos se creará si no existe todavía
        String connectionURL = "jdbc:derby:" + dbName + ";" + dbParam;
        String sql="insert into persona (texto) values(?)";

        Connection conn = DriverManager.getConnection(connectionURL);
        PreparedStatement st = conn.prepareStatement(sql);
        st.setString(1, texto.getText());
        st.executeUpdate();
        conn.close();
    } catch (SQLException ex) {
        Logger.getLogger(Editor.class.getName()).log(Level.SEVERE, null, ex);
    } catch (BadLocationException ex) {
        Logger.getLogger(Editor.class.getName()).log(Level.SEVERE, null, ex);
    }

选择

    try {
        String driver = "org.apache.derby.jdbc.EmbeddedDriver";
        String dbName = "bdprueba";
        String dbParam = "create=true"; 
        String connectionURL = "jdbc:derby:" + dbName +"" ;
        Class.forName(driver);
        Connection conn =  DriverManager.getConnection(connectionURL); 
        Statement st = conn.createStatement();
        ResultSet rs =  st.executeQuery("select texto from persona");
        while(rs.next())
        {      
            texto.setText(rs.getString("Texto"));            
        }
    } catch (ClassNotFoundException ex) {
        Logger.getLogger(Editor.class.getName()).log(Level.SEVERE, null, ex);
    } catch (SQLException ex) {
        Logger.getLogger(Editor.class.getName()).log(Level.SEVERE, null, ex);
    }

Grasias ambos

谢谢你们两个

2 个答案:

答案 0 :(得分:0)

尝试使用文档而不是getText()

jtextpane.getDocument()

答案 1 :(得分:0)

您可以保存字符串,然后在保存并比较两个字符串后立即读取它吗?如果它们是相同的那么问题不是数据库部分。

我会检查目标JtextPane的编辑器套件。它必须与源JTextPane中的相同。如果字符串不同则会出现DB问题。

查看http://www.java2s.com/Code/Java/Database-SQL-JDBC/Saveimagetoderbydatabase.htm示例。您可以存储文本(字符串的字节)而不是图像。