1. 搭建环境
2. 在MySQL 中建立数据库表
表结构如下:
Id:无实意主键,采用自增方式生成
stuId :学号
Name:姓名
Password:密码
registerDate:注册时间
email: Email
phone:电话号码
sex :性别
对应的SQL 语句如下:
DROP TABLE IF EXISTS `account`;
CREATE TABLE `account` (
`Id` int(11) NOT NULL auto_increment,
`stuId` varchar(20) NOT NULL,
`name` varchar(50) NOT NULL,
`sex` varchar(6) ,
`registerDate` date ,
`email` varchar(100) ,
`phone` varchar(30 ,
`password` varchar(20) ,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
3. 新建Web 项目
在Eclipse 中新建 "Dynamic Web Project" ,命名为 RegisterSystem , Target Runtime 选项选择“ Apache Tomcat v6.0 ”,其它选项默认即可,点击完成,创建项目完毕。
4. 开发实体类Account
新建类,命名为“Account ”,为该类定义属性,其中属性与数据表的各列相对应。为类添加方法,方法只需包括对属性的 Get 和 Set 方法,不包含任何业务逻辑。
5. 配置数据源
数据源的配置有如下三种方法:
方法 一:
在Tomcat6.0 解压目录 conf 下找到 context.xml, 在其中的 <Context></Context> 中加入如下代码:
<Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource"
password="lectery" username="root" driverClassName="org.gjt.mm.mysql.Driver"
url="jdbc:mysql://localhost/exp01" maxActive="100" maxIdle="30" maxWait="5000"/>
在工程应用中/WEB-INF/ 下的 web.xml 中加入如下代码:
<resource-ref>
<description>MySQL DataSource</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
把MySQL-Connector-java-3.0.12-bin.jar( 可换更高版本 ) 加到 Tomcat 安装目录中的 lib 目录下和工程中的 lib 目录下。
方 法 二:
在Tomcat6.0 解压目录 conf 下找到 server.xml, 在其中的 <GlobalNamingResources></GlobalNamingResources> 中加入如下代码:
<Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource"
password="lectery" username="root" driverClassName="org.gjt.mm.mysql.Driver"
url="jdbc:mysql://localhost/exp01" maxActive="100" maxIdle="30" maxWait="5000"/>
在Tomcat6.0 解压目录 conf 下找到 context.xml, 在其中的 <Context></Context> 中加入并修改成如下代码:
<Context path="/RegisterSys" debug="1" reloadable="true" docBase="E:\EclipseWorkPlace\RegisterSys\WebRoot">
<ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.Datasource"/>
<!--此处可能有系统其它自动生成的内容 -->
</Context>
在工程中/WEB-INF/ 下的 web.xml 中加入如下代码:
<resource-ref>
<description>MySQL DataSource</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
把MySQL-Connector-java-3.0.12-bin.jar( 或更高版本 ) 加到 Tomcat 安装目录中的 lib 目录下和工程中的 lib 目录下。
方法三:
在Tomcat6.0 解压目录 conf 下找到 server.xml, 在其中的 <Host></Host> 中加入如下代码:
<Context path="/RegisterSys" docBase="E:\EclipseWorkPlace\RegisterSys\WebRoot"
debug="5" reloadable="true" crossContext="true">
<Logger className="org.apache.catalina.logger.FileLogger"
prefix="localhost_MysqlTest_log." suffix=".txt"
timestamp="true"/>
<Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource" password="lectery"
username="root" driverClassName="org.gjt.mm.mysql.Driver" url="jdbc:mysql://localhost/exp01"
maxActive="100" maxIdle="30" maxWait="5000"/>
</Context>
在工程中/WEB-INF/ 下的 web.xml 中加入如下代码:
<resource-ref>
<description>MySQL DataSource</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
把MySQL-Connector-java-3.0.12-bin.jar( 或更高版本 ) 加到 Tomcat 安装目录中的 lib 目录下和工程中的 lib 目录下。
通过以上三步,大部分时候还是起作用的,但有时会出现异常,因此不建议使用。
以上几种方案在实践中经受了测试,方法一和二比较稳定,方发三比较不稳定,所以对于方法三的采用须谨慎。为简单起见,本实验中采用了方法一的做法,经过测试数据源配置成功。