2016-09-0111:06:53 使用sql标签库+tomcat+mysql手动创建一个jsp
1、
1.1安装tomcat服务器
学习JavaWeb开发一般都使用Tomcat服务器,该服务器支持全部JSP以及Servlet规范
Apache官方网站下载tomcat,这里我用的是tomcat6.0(网上有很多下载教程故此处略过)
要注意一点的是:
1>tar.gz文件是Linux操作系统下的安装版本
2>exe文件是Windows系统下的安装版本
3>zip文件是Windows系统下的压缩版本
安装好以后如下:
以上目录从上到下依次:
存放启动和关闭tomcat的脚本文件
存放服务器各种配置文件
存放服务器支撑的jar包
存放日志文件
存放运行时产生的临时文件
Web应用所在目录,即供外界访问的web资源存放目录
Tomcat工作目录
接下来打开浏览器,输入http://localhost:8080/,能显示如下界面代表安装成功。
1.2配置tomcat环境
关于有没有必要配置环境变量目前我也不确定,去年学习Java web的时候,老师给我们授课也没有配置,这个问题暂搁置?
1>新建变量名:CATALINA_BASE,变量值:C:\tomcat
2>新建变量名:CATALINA_HOME,变量值:C:\tomcat
3>打开PATH,添加变量
值:%CATALINA_HOME%\lib;%CATALINA_HOME%\bin
4> classpath
.;%CATALINA_HOME%/lib/servlet-api.jar;.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar
2、安装MySQL数据库
数据库的安装这里也不详细概述了,网上一搜一大堆;主要注意一下(我做项目过程中遇到的问题) 如果在插入带有中文字符串的语句报错时,打开安装目录下的my.ini文件,
将其中的utf8编码改为gbk,如下:
3、配置虚拟目录
首先在tomcat安装文件下的conf文件夹中打开server.xml文件:
Context标签为配置的虚拟目录:docBase 路径是web项目将要放置目录;
Path是配置的虚拟目录;
Reloadable:设置为true的作用是当你更改web.xml文件中的内容后直接刷新浏览器即可而不用重启服务器
然后在docBase指定的目录下配置如下图:
. 注意: WEB-INF必须大写,相信大家都看到了jsp文件也放在这里,放在这里可以被外界访问到,如果jsp文件放在WEB-INF中则外界请求是访问不到的;
. WEB-INF下的目录结构如下:
classes文件夹下存放编译后的class字节码文件;
lib文件夹下存放需要用到的jar包;
web.xml是配置文件。
5、编写jsp文件
sqlTest.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*,java.sql.*"%>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<html>
<head>
<title>SELECT 操作</title>
</head>
<body>
<!--
JDBC 驱动名及数据库 URL
数据库的用户名与密码,需要根据自己的设置
useUnicode=true&characterEncoding=utf-8 防止中文乱码
-->
<sql:setDataSource var="kk" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/testkk?useUnicode=true&characterEncoding=utf-8"
user="root" password="kk"/>
<sql:query dataSource="${kk}" var="result">
SELECT * from websites;
</sql:query>
<h1>JSP 数据库实例 - 菜鸟教程</h1>
<table border="1" width="100%">
<tr>
<th>ID</th>
<th>站点名</th>
<th>站点地址</th>
</tr>
<c:forEach var="row" items="${result.rows}">
<tr>
<td><c:out value="${row.id}"/></td>
<td><c:out value="${row.name}"/></td>
<td><c:out value="${row.url}"/></td>
</tr>
</c:forEach>
</table>
</body>
</html>
需要导入到lib的包有(放在tomcat安装文件下的lib文件夹下也可以):
mysql-connector-java-5.1.6-bin.jar
jstl-1.2_1.jar
jar包下载地址:jar下载:http://www.mvnrepository.com/
创建数据库:
Create databases testkk;
创建数据表:
CREATE TABLE `websites` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` char(20) NOT NULL DEFAULT '' COMMENT '站点名称',
`url` varchar(255) NOT NULL DEFAULT '',
`alexa` int(11) NOT NULL DEFAULT '0' COMMENT 'Alexa 排名',
`country` char(10) NOT NULL DEFAULT '' COMMENT '国家',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
插入数据(批量插入):
INSERT INTO `websites` VALUES ('1', 'Google', 'https://www.google.cm/', '1', 'USA'), ('2', '淘宝', 'https://www.taobao.com/', '13', 'CN'), ('3', '菜鸟教程', 'http://www.runoob.com', '5892', ''), ('4', '微博', 'http://weibo.com/', '20', 'CN'), ('5', 'Facebook', 'https://www.facebook.com/', '3', 'USA');
启动服务器;
打开浏览器输入:http://localhost:8080/kk/sqlTest.jsp 结果如下:
删除id号是1的数据以及修改ID号为3 的名字如下(此处不再详述):
本次练习基本过程如上,由于时间关系内容不够详细,比如:虚拟目录的配置目前所了解到的总共有三种,以后遇到了再行添加;