jsp实现textarea中的文字保存换行空格存到数据库

原创 2016年06月04日 09:17:32

UploadNews.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>上传新闻</title>
<SCRIPT LANGUAGE="JavaScript">
function upload(){
    document.getElementById("article").value = document
    .getElementById("content").value;
    document.getElementById("formid").submit();
    }
</SCRIPT>
</head>
<body>
    <form method="post" action="ShangchuanNews.jsp" id="formid">
        <table border="0" align="center">
            <tr>
                <td>title&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text"
                    name="title" value="a" size="40">
                </td>
            </tr>
            <tr>
                <td>author&nbsp;&nbsp;<input type="text" name="author"
                    size="40">
                </td>
            </tr>
            <tr>
                <td><input type="hidden" id="article"
                    name="articleName" /></td>
            </tr>
            <tr>
                <td>date(xxxx.xx.xx)<input type="text" name="date" size="40">
                </td>
            </tr>
            <tr>
                <td><div align="center">
                        <input type="button" value="submit" class="btn2" onclick = "upload();" />
                    </div></td>
            </tr>
            <tr>
                <td><textarea rows="30" cols="80" id="content"></textarea></td>
            </tr>
        </table>

    </form>
</body>
</html>

换行函数在ShangchuanNews.jsp 代码如下

<%@page import="java.io.PrintWriter"%>
<%@page import="java.net.URLDecoder"%>
<%@ page language="java" contentType="text/html; charset=utf-8"  
    pageEncoding="utf-8" %>  
<%@ page import="java.sql.*" %>  

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  


<html>  
<head>  
<meta http-equiv="Content-Type" content="text/html; utf-8">  
<title>上传新闻</title>  

</head>  
<body>  
<%! // 字符处理函数 换行符变成<br>
public String turn(String str) {  

    while (str.indexOf("\n") != -1) {  
        str = str.substring(0, str.indexOf("\n")) + "<br>"  
                + str.substring(str.indexOf("\n") + 1);  
    }  
    while (str.indexOf(" ") != -1) {  
        str = str.substring(0, str.indexOf(" ")) + "&nbsp"  
                + str.substring(str.indexOf(" ") + 1);  
    }  
    return str;  
}  
%>
<% 

try {
    request.setCharacterEncoding("utf-8");
    String title = request.getParameter("title");
    String author = request.getParameter("author");
    String article = request.getParameter("articleName");
    String articlebr = turn(article);
    String date = request.getParameter("date");

    String driverClass="com.mysql.jdbc.Driver";
    String url = "jdbc:mysql://****.****/****?characterEncoding=utf8";//存到数据库不会乱码
    String user="***"; 
    String password="****";
    Connection conn;
    int i=0;
    Class.forName(driverClass).newInstance();
    conn = DriverManager.getConnection(url,user,password);
    String sql = "insert into news (id,title,author,article,date) "
            + "values(?,?,?,?,?)";
    Connection conn1 = DriverManager.getConnection(url, user, password);
    PreparedStatement pstmt;
    pstmt = (PreparedStatement) conn1.prepareStatement(sql);
    pstmt.setString(1, null);
    pstmt.setString(2, title);
    pstmt.setString(3, author);
    pstmt.setString(4, articlebr);
    pstmt.setString(5, date);

    i = pstmt.executeUpdate();
    conn1.close();
    pstmt.close();
    out.println("<br>上传成功");

} catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
%>  
</body>  
</html>  
版权声明:本文为博主原创文章,未经博主允许不得转载☺

相关文章推荐

textarea内容有换行时存入数据库丢失问题的解决

问题现状: 网页开发的过程中需要提供一个文本框给用户输入一段内容,但内容长度有限还没有到使用富文本编辑器插件的地步。因此提供了一个textarea供用户输入。 在调试过程中发现,textarea中...
  • dos_186
  • dos_186
  • 2015年09月14日 17:50
  • 4638

textarea中换行符存入数据库中为\r\n原因

在网页开发中,有时发现textarea中输入的换行符存入数据库中变成了\r\n而不是换行符,这是由于在读取textarea中的数据的时候,先把他们转换为了字符串然后存入的数据库,那么换行符就会被译成\...

解决textarea有换行时的数据存库及赋值问题

解决textarea有换行时的数据存库及赋值问题; 解决报错$('#description').val('测试换行 第二行'); 报错意思是字符串没有正确结束,这是因...
  • lzu2216
  • lzu2216
  • 2017年05月22日 16:53
  • 962

textarea 存入数据库后 换行 、空格显示

兼容性:IE9以上、FF、chrome在换行处匹配/\n/               IE7-8在换行处先匹配/\r/,再匹配/\n/   html:  name="" id="test_n...
  • Koutput
  • Koutput
  • 2017年07月05日 17:16
  • 178

textarea: 保留textarea中的换行,将源样式显示在页面

项目中有一个需求,就是保留textarea中的换行,在网页中按原格式显示。 由于textarea中的换行为“\r\n", 用js获取textarea中的内容保存到数据库中时,“\r\n"变成了空格。...

textarea文字换行保存到数据后读出来没有换行 解决方案

1.需要保存数据库之前把textarea中的换行字符转换为存储到数据库。 2当读取的时候在把 替换成textarea的换行符\n就好了 注意:使用replace 方法的时候需要用正则表达式,否则只能替...
  • jspamd
  • jspamd
  • 2015年03月28日 16:49
  • 14074

textarea显示问题 (保留换行空格等 格式) 解决方案

pre { white-space: pre-wrap; /* css-3 */ white-space: -moz-pre-wrap; /* Mozilla, sinc...

获取textarea中的换行和空格并转义显示在网页上

textarea获取空格
  • Senssic
  • Senssic
  • 2014年12月18日 12:35
  • 2188

文本区Textarea数据后台自动换行的处理方法

用户在textarea输入的数据内容有换行时,数据传送至服务器端,再将数据显示出来,原本用户有断行的地方皆不见了,其实解决这问题很简单,如下:JDK1.4之后多了个好方法:replaceAll()。x...

textarea标签的转义

textarea 标签中包含的字符串中含有字符串需要转义 需要将进行转义变成<textarea></textarea>...
  • baokx
  • baokx
  • 2014年05月22日 16:44
  • 2004
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:jsp实现textarea中的文字保存换行空格存到数据库
举报原因:
原因补充:

(最多只允许输入30个字)