毕业设计进行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 }  6
7
8 收件人:${i_name_to} - ${d_name_to }  
9
10
11
12
最后贴一个结果
希望能帮到有需要的朋友!欢迎留言和给出更好的方法!