import java.io.*; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; import javax.servlet.*; import javax.servlet.http.*; public class CreatDBServlet extends HttpServlet{ private String url,user,password; @Override public void init() throws ServletException { // TODO Auto-generated method stub String driverClass = this.getInitParameter("driverClass"); url = this.getInitParameter("url"); user = this.getInitParameter("user"); password = this.getInitParameter("password"); try { Class.forName(driverClass); } catch (ClassNotFoundException ce) { throw new ServletException(driverClass+"数据库加载失败"); } } protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub //super.doGet(req, resp); Connection conn=null; Statement stmt=null; try { conn=DriverManager.getConnection(url,user,password); stmt=conn.createStatement(); stmt.executeUpdate("drop database if exists bookstore"); stmt.executeUpdate("create database bookstore"); stmt.executeUpdate("use bookstore"); stmt.executeUpdate("create table bookinfo(id INT not null primary key,title VARCHAR(50) not null,author VARCHAR(50) not null,bookconcern VARCHAR(100) not null,publish_date DATE not null,price FLOAT(4,2) not null,amount SMALLINT,remark VARCHAR(200))ENGINE=InnoDB"); stmt.addBatch("insert into bookinfo values(1,'Java web 开发','author','.....','2006-4-20',99.00,35,null)"); stmt.executeBatch(); resp.setContentType("text/html;charset=gbk"); PrintWriter out=resp.getWriter(); out.println("success,创建数据库成功"); out.close(); } catch (SQLException se) { throw new ServletException(se); } finally { if(stmt!=null) { try { stmt.close(); } catch (SQLException se) { se.printStackTrace(); } stmt=null; } if(conn!=null) { try { conn.close(); } catch (SQLException se) { se.printStackTrace(); } conn=null; } } } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub //super.doPost(req, resp); doGet(req,resp); } }
把mysql的jdbc驱动mysql-connector-java-5.1.18-bin.jar的路径.../mysql-connector-java-5.1.18-bin.jar添加的环境变量的classpath中,并拷贝到tomcat目录中的common\lib内
在web.xml中配置参数
</servlet> <servlet> <servlet-name>CreatDBServlet</servlet-name> <servlet-class>CreatDBServlet</servlet-class> <init-param> <param-name>driverClass</param-name> <param-value>com.mysql.jdbc.Driver</param-value> </init-param> <init-param> <param-name>user</param-name> <param-value>root</param-value> </init-param> <init-param> <param-name>password</param-name> <param-value>mysql的root密码</param-value> </init-param> <init-param> <param-name>url</param-name> <param-value>jdbc:mysql://localhost:3306</param-value> </init-param> </servlet>