tomcat连接mysql数据库(1)
1.软件安装(1) JDK:jdk-7u25-windows-i586.exe 设置环境变量:
1.软件安装
(1) JAVA环境
JDK:jdk-7u25-windows-i586.exe
设置环境变量:
变量名:JAVA_HOME 变量值:D:\software5\JDK7u25 在path中添加:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
使其生效:(1) 重启电脑 或者(2) 在dos中执行set PATH=c然后关闭dos,重新打开dos,输入echo %PATH%看是否包含JAVA_HOME路径;输入java,javac
看是否输出如下内容:
C:\Documents and Settings\Administrator>java
用法: java [-options] class [args...]
(执行类)
或 java [-options] -jar jarfile [args...]
(执行 jar 文件)
其中选项包括:
-d32 使用 32 位数据模型 (如果可用)
-d64 使用 64 位数据模型 (如果可用)
-client 选择 "client" VM
-server 选择 "server" VM
-hotspot 是 "client" VM 的同义词 [已过时]
默认 VM 是 client.
-cp <目录和 zip/jar 文件的类搜索路径>
-classpath <目录和 zip/jar 文件的类搜索路径>
用 ; 分隔的目录, JAR 档案
和 ZIP 档案列表, 用于搜索类文件。
-D<name>=<value>
........(省略)
C:\Documents and Settings\Administrator>javac用法: javac <options> <source files>
其中, 可能的选项包括:
-g 生成所有调试信息
-g:none 不生成任何调试信息
-g:{lines,vars,source} 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径> 指定查找用户类文件和注释处理程序的位置
-cp <路径> 指定查找用户类文件和注释处理程序的位置
-sourcepath <路径> 指定查找输入源文件的位置
-bootclasspath <路径> 覆盖引导类文件的位置
-extdirs <目录> 覆盖所安装扩展的位置
-endorseddirs <目录> 覆盖签名的标准路径的位置
......(省略)
C:\Documents and Settings\Administrator>java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b17)
Java HotSpot(TM) Client VM (build 23.25-b01, mixed mode, sharing)
检验java能否正常运行java程序
dos中输入edit test.java,在打开的界面输入:
<span style="font-size:14px;">public class test {
public static void main(String[] args) {
System.out.println("Hello java!");
}
}</span>
按ALT+F键打开编辑菜单,选择save,然后再选择exit退出。
dos下输入javac test.java ,dir看下是否有test.class生成,输入java test 输出如下内容:
C:\DOCUME~1\ADMINI~1>javac test.java
C:\DOCUME~1\ADMINI~1>java test
Hello java!
C:\DOCUME~1\ADMINI~1>
(2)mysql环境
mysql-5.6.17-win32.zip
配置环境变量:
path中添加:G:\mysql-5.6.17-win32\bin;
在dos中执行set PATH=c然后关闭dos,重新打开dos,输入mysql应该可以连接数据库(以匿名方式连接),如果用指定用户连接则为mysql -u root -P 3306(数据库端口号(默认),安装时有提示)
C:\DOCUME~1\ADMINI~1>mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 38
Server version: 5.6.17 MySQL Community Server (GPL)
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
C:\DOCUME~1\ADMINI~1>mysql -u root -p
Enter password: *****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 39
Server version: 5.6.17 MySQL Community Server (GPL)
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
如果刚安装好mysql,超级用户root是没有密码的,故直接回车即可进入到mysql中了,mysql的提示符是: mysql>
方法1: 用set password命令
mysql -u root
mysql> set password for 'root'@'localhost' = password('newpass');
方法2:用mysqladmin
mysqladmin -u root password "newpass"
如果root已经设置过密码,采用如下方法
mysqladmin -u root password oldpass "newpass"
方法3: 用update直接编辑user表
mysql -u root
mysql> use mysql;
mysql> update user set password = password('newpass') where user = 'root';
mysql> flush privileges;
在丢失root密码的时候,可以这样
mysqld_safe --skip-grant-tables&
mysql -u root mysql
mysql> update user set password=password("new password") where user='root';
mysql> flush privileges;
(3) tomcat
apache-tomcat-6.0.39.zip
配置环境变量:
变量名:CATALINA_HOME 变量值:D:\software7\tomcat\apache-tomcat-6.0.39
lib中添加: D:\software7\tomcat\apache-tomcat-6.0.39\lib;
path中添加:D:\software7\tomcat\apache-tomcat-6.0.39\bin;
执行set PATH=c使其生效,到D:\software7\tomcat\apache-tomcat-6.0.39\bin下执行:
setclasspath.bat
startup.bat
如果出现:
.....
INFO: Server startup in xxx ms 表示安装成功
tomcat简介:
Tomcat是Apache 软件基金会的Jakarta(雅加达) 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发。由于有了Sun 的参不和支持,
最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现。
Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户丌是很多的场合下被普遍使用,是开发和调试JSP 程序的首选
当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。
Tomcat和IIS、Apache等Web服务器一样,也具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力丌如Apache服务器。
tomcat目录结构:
bin: 所有的可执行文件
lib: jar包存放位置
conf: 配置文件,服务器的修改都要从此文件夹开始
logs: 日志文件,如果服务器出现错误,会自动记录
webapps: 所有可执行web项目都会放在此目录
验证
点击startup.bat启动tomcat服务,浏览器输入http://127.0.0.1:8080 看是否能够打开tomcat自带的网页
更改服务器的*.xml文件需要重新启动服务,因为需要读取配置文件
配置虚拟目录
Tomcat配置虚拟目录是必须的,因为所有的开发有可能是在其他目录中完成的
但是要配置需要的目录,首先要有严格要求,配置的虚拟目录必须有以下的目录结构要求。
–WEBROOT 虚拟目录就是映射到此文件夹中
|-WEB-INF
|-web.xml 配置文件,有格式要求
如果不知道该文件的格式,可以直接从TOMCAT中找到此配置要求
到 webapps的WEB-INF目录下,拷贝出web.xml文件
然后,编辑该文件,去掉注释部分即可。
文件夹建完了,web.xml文件也建好了,但是服务器并丌知道存在这样一个工作目录。所以,还必须在Server.xml文件中配置此工作目录(虚拟目录)
在server.xml文件中加入如下配置,一定要在</host>之上迚行配置
<Context path=“/demo” docBase=“D:\Demo”/>
<Context path=“/demo” docBase=“D:\Demo”/>
–其中Context表示上下文,表示配置一个新的上下文
path表示浏览器中的输入路径:必须有”/”
docBase表示此路径对应着硬盘上的真实目录。
以后就可以输入:http://localhost:8888/demo找到硬盘中D:\Demo文件夹中的内容了。不过,服务器首先还是要重启。
运行虚拟目录,localhost:8888/demo
出了右图所示的问题。404表示客户端错误,文件没找到,路径出现了错误。
这是因为在Tomcat中将目录的列表功能关闭了。
如果要通过浏览器观察一个目录中的全部内容,则要修改conf文件夹下的web.xml文件。将listings中对应的改为true
但是,需要注意的是,项目发布的时候,尽量关闭该功能,确保安全。
测试虚拟目录
<span style="font-size:14px;"><html>
<head>
<title> hello world </title>
</head>
<body>
<%
out.println("hello world");
%>
</body>
</html></span>
点击hello.jsp
2.连接数据库mysql测试
不需要重启服务
将mysql的jdbc驱动程序放到tomcat的lib中:mysql_connect_jdbcdriver.jar
test1.jsp中内容如下:
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<%@ page import="java.sql.*" %>
<html>
<head>
<title>My JSP starting page</title>
</head>
<body>
<h1>
<%
try {
//加载驱动
Class.forName("com.mysql.jdbc.Driver");
//建立连接
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb","root","mysql");
//创建状态
Statement state=con.createStatement();
//插入
//String sql="insert into student values('Gosling','java'),('002','zxy')";
//state.executeUpdate(sql);
//更新
//String sql1="update student set stuID='001' where stuName='java'";
// state.executeUpdate(sql1);
//修改
//String sql3="update student set stuName='html' where stuID='002'";
//state.executeUpdate(sql3);
//查询
//String sql2="select stuID,stuName from student where stuID='001'";
String sql2="select * from student";
ResultSet rs=state.executeQuery(sql2);
while(rs.next()){
String uID=rs.getString("StuID");
String uName=rs.getString("stuName");
out.println("stuID:"+uID+" "+"stuName:"+uName+"<br>");
}
out.println("Operator success..."+"<br>");
state.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
}
%>
</h1>
</body>
</html>
连接mysql数据库,做如下操作:
mysql> create database mydb;
Query OK, 1 row affected (0.02 sec)
mysql> use mydb;
Database changed
mysql> create table student(stuID char(20),stuNamechar(20));
Query OK, 0 rows affected (0.08 sec)
mysql>insert into student values('abc','jack');
Query OK, 1 row affected (0.03 sec)
然后点击test1.jsp, 显示如下:
更多推荐
所有评论(0)