首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

JavaWeb快速入门7

2012-10-19 
JavaWeb快速入门七连接数据库create databasemytest -- 创建数据库use databasemytest --使用mytest?CRE

JavaWeb快速入门七

连接数据库

create databasemytest; -- 创建数据库

use databasemytest; --使用mytest

?

CREATE TABLEuser (

? `id` INTEGER UNSIGNED NOT NULLAUTO_INCREMENT,

? `name` VARCHAR(45),

? `password` VARCHAR(45),

? PRIMARY KEY (`id`)

) –创建表

package servlet;

?

import java.io.IOException;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.SQLException;

?

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

?

public class RegisterServlet extends HttpServlet {

?

??? public void doGet(HttpServletRequest request, HttpServletResponseresponse)

?????????? throws ServletException, IOException {

?????? /*

?????? ?* 这里选择将所有以get方式提交的全部交给doPost方法处理; get方式提交是将所有的要传递的参数附加在地址栏后传过来,

?????? ?* 这样在参数少的情况或者没有参数的情况会考虑这种方式, 因为附加在地址栏的字符不安全,二字符不能超过一定的大小

?????? ?* 在网页中大部分时候都要传递大量的数据,尤其有上传文件就不能选择get方式提交

?????? ?*/

?????? doPost(request, response);

??? }

?

??? public void doPost(HttpServletRequest request, HttpServletResponseresponse)

?????????? throws ServletException, IOException {

?????? String registerName = request.getParameter("name");

?????? String registerPassword = request.getParameter("password");

?

?????? Connectionconn = null;

?????? PreparedStatement ps = null;

?????? try {

?????????? // 1.注册驱动

?????????? Class.forName("com.mysql.jdbc.Driver");

?

?????????? // 2.建立连接

?????????? String url = "jdbc:mysql://localhost:3306/mytest";

?????????? String user = "root";

?????????? String password = "root";

?????????? conn = DriverManager.getConnection(url,user, password);

?

?????????? // 3.创建语句 ;这里的问号是占位符

?????????? String sql = "insert intouser(name,password) values(?,?)";

?????????? ps =conn.prepareStatement(sql);

?????????? ps.setString(1,registerName);// 将第一个?用name的值替换

?????????? ps.setString(2,registerPassword);

?

?????????? // 4.执行语句

?????????? ps.executeUpdate();

?

?????????? // 5.释放资源

?????????? conn.close();

?

?????? } catch (SQLException e){

?????????? e.printStackTrace();

?????? } catch(ClassNotFoundException e) {

?????????? e.printStackTrace();

?????? }

?

?????? // 将页面中form表单提交过来的参数保存到request对象中,采用map的形式保存的

?????? request.setAttribute("registerName", registerName);// 在页面中通过registerName取得name的值

?????? request.setAttribute("registerPassword", registerPassword);

?????? request.getRequestDispatcher("/register_success.jsp").forward(request,

????????????? response);

??? }

}

?

重新部署测试,检查数据库是否新增数据

热点排行