jsp连接mysql以及乱码问题

一、连接mysql

1、按照记忆来记录:
首先下载好mysql-connector-java-5.1.42,然后将其解压放在tomcat的lib下:
D:\Tomcat9.0\apache-tomcat-9.0.0.M20\lib
2、为了保险起见,还要将其放在jre的安装目录下的ext下:
D:\jre\lib\ext

2、然后记得配置环境变量:
指出mysql-connector-java-5.1.42-bin.jar的位置,我这个是把解压后的整个文件夹放的位置
D:\Tomcat9.0\mysql-connector-java-5.1.42\mysql-connector-java-5.1.42-bin.jar

3、直接试着连接数据库

String DBName = "questiondb";
String DBUser = "root";
String DBPassword = "123456";
String connURL = "jdbc:mysql://localhost/" + DBName + "?useUnicode=true&characterEncoding=utf-8&useSSL=true&user=" + DBUser + "&password=" + DBPassword;
String driverName = "com.mysql.jdbc.Driver";
Class.forName(driverName).newInstance();
Connection conn = DriverManager.getConnection(connURL);

二、关于编码问题

解决中文乱码问题简单粗暴的方式!!!!将所有的编码都设置为utf-8
包含:
1、在jsp处设置编码为utf8
有很多方式设置,可以参考:
http://jingyan.baidu.com/article/2009576193ee38cb0721b416.html
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>

2、浏览器的编码
转自:http://blog.sina.com.cn/s/blog_700dec9401012il1.html
最好也设置为utf-8

3、数据库在创建表的时候也创建为utf-8

create table blog_article
(
  article_Id int unsigned not null  auto_increment,
  article_title varchar(20) not null unique,
  article_content longtext not null,
  article_date datetime not null,
  article_readTime int unsigned not null default 0,
  user_Name char(15) not null,
  category_Name char(18) not null,
  primary key(article_Id),
  foreign key(user_Name) references blog_user(user_Name) on delete cascade on update cascade,
  foreign key(category_Name) references blog_category(category_Name) on delete cascade on update cascade
)engine=innodb default charset=utf8 auto_increment=1;

4、将jsp提交的string到另外一个jsp或者将string转存到数据库都应该做到:

String option5 = "";
option5 = request.getParameter("option5");
if(option5 != NULL) {
            option5 = new String(option2.getBytes("ISO-8859-1"),"UTF-8");
        }

三、使用mysql一些语句

1、删除表格数据,表格仍然存在
delete form questions;
2、删除表格,表格和表格数据都不在了
drop table questions;
3、给某一列设置默认值
alter table questions alter column questionid set default 0;
4、修改questions表格的某一属性列的约束
alter table questions add column questionid int(11) unsigned not null auto_increment primary key;

你可能感兴趣的:(jsp连接mysql以及乱码问题)