jdbc mysql 换行符_textarea 带换行符保存数据与带换行符展示数据

毕业设计进行ing~

最近要想要实现一个站内邮箱,想要带换行地输出邮件主体内容。

这两天为了解决这个问题百度了好多东西,发现相关问题有很多记录,可能这确实是大多数初学者也碰到的问题。自己找了好多地方都没找到明确的解决方法。

其实解决了实在是很简单,但我真的几经周折才实现了自己想要的功能。

在这里希望自己可以尽可能详细地说明自己解决的过程,但愿能给所有寻找解决方法的朋友一个好的参考。

首先简单说一下问题和解决思路

问题1希望读进去的数据能保存为带换行的格式;

解决思路:在输入textarea表单的jsp页面写一个js前端代码,使其对传输到后端的文本中的回车转换为

核心代码如下:

1 functionfun() {2 var a=document.getElementById("e_main");//获取textarea表单的数据,其中“e_main"为textarea的id属性值

3 var b=a.value;4 a.value=b.replace(/\n/g,"
");//回车转换为

5 }

问题2希望读出来的数据能保存为带换行的格式。

解决思路:此时存进数据库中的元素已经是带换行的,只要读出来的时候将"\r\n"替换成
即可

核心代码:

1 e_main=e_main.replace("\r\n","
");

实现实例:

首先是编写邮件页面的jsp代码

核心代码:

1 /*获取textarea表单元素并且转换值的js代码*/

2

3 functionfun() {4 var a=document.getElementById("e_main");//获取textarea表单的数据,其中“e_main"为textarea的id属性值

5 var b=a.value;6 a.value=b.replace(/\n/g,"
");//回车转换为

7 }8

9

10 /*form内代码*/

11

12

13

14

15

16 收信ID

17

18 name="i_id_to" placeholder="请在这里输入收信者的ID号" οninput="test2()">

19 邮件主题

20

21 name="e_name" placeholder="请在这里输入邮件的主题" >

22

23 添加附件

24

25

26

27

28

29 邮件正文30

31 插入图片

32

33

34

35

36

37 value="发送邮件" onClick="return check();">

38

39

其次为输出页面jsp页面的核心代码

首先是java部分:

1

2 String e_id = request.getParameter("e_id");3 request.setAttribute("e_id", e_id);4 //数据库jdbc的驱动装载

5 Class.forName("com.mysql.jdbc.Driver").newInstance();6 //建立数据库连接

7 url = "jdbc:mysql://127.0.0.1:3306/managementsys?user=root&password=123456&useUnicode=true&characterEncoding=gb2312";8 conn =DriverManager.getConnection(url);9 //建立一个Statement对象,用于执行sql语句

10 Statement stat =conn.createStatement();11 //执行查询并且得到查询结果。

12 sql = "select * from email_message where e_id="+e_id;13 pstat =conn.prepareStatement(sql);14 rs =pstat.executeQuery();15

16 String i_name_to,i_name_from,i_id_from,i_id_to,d_name_from,d_id_from,d_id_to,e_name,e_main,d_name_to;17 //将查询的结果集中的记录输出到页面上。

18 while(rs.next()) {19 i_name_to= rs.getString("i_name_to").trim();20 i_name_from= rs.getString("i_name_from").trim();21 i_id_from= rs.getString("i_id_from").trim();22 i_id_to= rs.getString("i_id_to").trim();23 d_name_from= rs.getString("d_name_from").trim();24 d_id_to= rs.getString("d_id_to").trim();25 e_name= rs.getString("e_name").trim();26 e_main= rs.getString("e_main").trim();27 d_name_to= rs.getString("d_name_to").trim();28 e_main=e_main.replace("\r\n","
"); /*此句实现对换行符的转换*/29 request.setAttribute("i_name_to", i_name_to);30 request.setAttribute("i_name_from", i_name_from);31 request.setAttribute("i_id_from", i_id_from);32 request.setAttribute("i_id_to", i_id_to);33 request.setAttribute("d_name_from", d_name_from);34 request.setAttribute("d_id_to", d_id_to);35 request.setAttribute("e_name", e_name);36 request.setAttribute("e_main", e_main);37 request.setAttribute("d_name_to", d_name_to);38 }39

40 %>

输出页面的jsp前端代码

1

2

3

4 标题:${e_name }5 from: ${i_name_from} - ${d_name_from } &nbsp6

7

8 收件人:${i_name_to} - ${d_name_to } &nbsp

9

10

11

${e_main }

12

最后贴一个结果

be4407de23e090dc418461e3edb45ac8.png

希望能帮到有需要的朋友!欢迎留言和给出更好的方法!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值