mysql中文乱码完结

mysql中文乱码终结

转自:http://blog.chinaunix.net/space.php?uid=9195812&do=blog&id=2006339

我自己都不知道为了中文问题烦恼了多少个日子,最恨瑞典人了-谁叫他发明了mysql,还设置了默认设置:latin1.曾经也在想假如中国人发明了 mysql(my see狗),呵呵,那么我们还有这样烦恼吗?默认的就是gk2312 或者gbk.倘若考虑到台湾朋友加一个big5.就得了。可是呢?事实不是这样的,没有办法,自己只好baidu一下,google一下,甚至yahoo 一下。能找到的方法都试过了,好久了,直到今天让我找到了,想明白了。所以急切和大家分享以下心得。

  为了说的明白一些,我觉个例子:

很简单,就是从html中接受两个输入,然后由jsp处理写到mysql且从数据库返回这个结果显示出来。

Mysql_jstl.html

<html>

<head>

  <title>CH14 – Mysql_jstl.html</title>

<meta http-equiv=”Content-Type” content=”text/html; charset= GB2312″>

</head>

<body>

<h2>将信息存入 Mysql 中 – 使用 JSTL 写法</h2>

<form name=”form” action=”Mysql_jstl.jsp” method=”post” >

  <p>姓:<input name=”last_name” type=”text” id=”last_name”></p>

  <p>名:<input name=”first_name” type=”text” id=”first_name”></p>

  <p>

    <input type=”submit” value=”传送”>

    <input type=”reset” value=”取消”>

  </p>

</form>

</body>

</html>

Mysql_jstl.jsp

<%@ page contentType=”text/html;charset=GB2312″ %>

<%@ taglib prefix=”c” uri=”http://java.sun.com/jsp/jstl/core” %>

<%@ taglib prefix=”sql” uri=”http://java.sun.com/jsp/jstl/sql” %>

<%@ taglib prefix=”fmt” uri=”http://java.sun.com/jsp/jstl/fmt” %>

<html>

<head>

  <title>CH14 – Mysql_jstl.jsp</title>

</head>

<body>

<h2>将信息存入 Mysql 中 – 使用 JSTL 写法</h2>

<fmt:requestEncoding value=”GB2312″ />

<c:set var=”birth” value=”1978/12/11″ />

<c:set var=”sex” value=”F” />

<c:set var=”email” value=”aaa@asdf.com” />

<sql:setDataSource driver=”com.mysql.jdbc.Driver”

         url=”jdbc:mysql://localhost:3306/sample?useUnicode=true&characterEncoding=UTF-8″

         user=”root”

         password=”44444″ />

<sql:update>

  INSERT INTO employee(employee_id, last_name, first_name, birth, sex, emmail)

  VALUES ( ? , ? , ? , ? , ? , ? )

 

  <sql:param value=”${employee_id}” />

  <sql:param value=”${param.last_name}” />

  <sql:param value=”${param.first_name}” />

  <sql:param value=”${birth}” />

  <sql:param value=”${sex}” />

  <sql:param value=”${email}” />

</sql:update>

<sql:query var=”result”>

  SELECT * FROM employee

</sql:query>

从 employee 取出所有新增的姓名:<br>

<c:forEach items=”${result.rows}” var=”row” >

新增姓名:<c:out value=”${row.last_name}” />

     <c:out value=”${row.first_name}” /><br>

</c:forEach>

</body>

</html>

接下来就是创建数据库,名字为sample

然后建立一个table: employee,内容如下(其中应该是email,可是我不小心在建数据库打错了,将错就错了):

+————-+——————+——+—–+———+—————-+

| Field       | Type             | Null | Key | Default | Extra          |

+————-+——————+——+—–+———+—————-+

| employee_id | int(10) unsigned | NO   | PRI | NULL    | auto_increment |

| last_name   | varchar(20)      | YES  |     | NULL 

mysql中文乱码完结

相关文章:

你感兴趣的文章:

标签云: