问题1:数据库无法插入汉字,能够正常的通过前台输入数字、字符插入这些数据,但是输入汉字能够调用到数据库,即能够发送SQL语句到数据库stat.executeUpdate(sql);能运行,但是无法将数据插入数据库();
报错如下:
Incorrect string value: '\xE5\x95\xA5' for column 'data' at row 1
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3976)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3912)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2530)
答:通过调试,发现输入的汉字能够被Javabean类接收;通过查找资料得到解决方法:
String url ="jdbc:mysql://localhost/test?user=root&password=andan178&useUnicod"+
"e=true&characterEncoding=utf-8" ;
/*修改为:
String url ="jdbc:mysql://localhost/test?user=root&password=andan178&useUnicod"+ "e=true&characterEncoding=utf-8" ;
*/
问题2:
解决汉字插入数据库显示的是???的形式。对mysql安装目录下的my.ini配置文件进行修改,在文件中添加
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
之后以管理员的身份运行cmd,输入net stop mysql,然后输入net start mysql即可解决以上问题。
参考博客:https://www.cnblogs.com/houqi/p/5713176.html
问题3:
java.sql.SQLException: Column 'message' not found.
问题描述:通过数据库查找出的数据,希望能够返回到前台,前台并未捕获该数据;
答:
解决思路:可能是前台的使用<div>${show}</div>获取后台数据时出错了。没有添加迭代器,<s:iterator id="aa" value="list">;迭代器各参数的介绍如下博客。
https://blog.csdn.net/sshxdwy/article/details/48712383
最终的原因:问题在于调用Dao包函数时,rs应该使用数据库中列名,而不是Javabean对象中的属性名,即
while(rs.next()){
cnbean.setMessage(rs.getString("data"));//而不是rs.getString("message")!
}
问题4:
数据库如何更新数据,即插入一条数据,当即删除一条数据。
答:使用的update方式,即数据库中只有一条数据,每次点击保存,就会调用Dao包中的UpdateDao类中的Update方法,然后将data数据部分进行替换即可。
问题5:
之前解决了数据库存储汉字时显示???异常,之后通过修改配置文件解决了问题,但是在上一步操作中,进行了删表操作,然后重新创建表,加入id属性,之后就出现了类似以前没有修改mysql配置文件时的问题。如下:
java.sql.SQLException: Incorrect string value: '\xE6\xB1\x89\xE5\xAD\x97' for column 'data' at row 1
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3976)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3912)
答:解决方法是:由于删除了表格,重新建表是没有设置ENGINE=MyISAM DEFAULT CHARSET=utf8属性,导致表格的属性仍旧为lain1,所以需要在创建表的后面加上上面的属性设置语句。Linux加ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
问题5:
如何直接在jsp页面显示数据库内容,而不通过按钮操作显示处出来。
答:通过在jsp中添加Java后台代码,步骤先在首部导入Java包,再在head头部中加入申明对象语句,最后在body部分显示。
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="com.my.dao.UpdateDao" %>
<%@ page import="com.my.bean.UpDateBean" %>
<title>Insert title here</title>
<%
UpDateBean cnbean=new UpdateDao().GetDate();
%>
<div id="show"><%=cnbean.getMessage()%></div>
问题6:
如何设置textarea的自适应大小,以及外边框框的大小
<textarea class="comments" rows=18 name=s1 cols=27 onpropertychange= "this.style.posHeight=this.scrollHeight "></textarea>
问题7:
数据库如何存储图片内容
https://blog.csdn.net/u010512964/article/details/59549110
https://zhidao.baidu.com/question/622245126559056292.html
问题8:
需改Linux服务器的mysql的my.cnf配置文件
https://blog.csdn.net/failure01/article/details/8862516
重启MySQL方法
root@iZwz90n4kx90uy36z8w9fnZ:/usr/local/mysql# ./support-files/mysql.server restart
Shutting down MySQL
.. *
Starting MySQL
问题9:
字体设置:
https://blog.csdn.net/sinat_39430615/article/details/77142137