project表单导入mysql数据库,注册表单(JS)---->tomcat------->数据库(mysql)--------菜鸟小结...

先来说说整体思路

1.在HTML文件中写一个注册表单

(表单中的数据传给2中的servlet)

2.在web项目中创建一个servlet

(处理表单传过来的数据,并写入数据库中)

3.创建相应需求的数据库

(存放表单中填写的数据)

---------------------------------------------------------------------------------------------------------------------------------------------------

下面是我的HTML+JavaScript代码

需要注意的是form标签中的属性

method设置是表单提交的方式(post:提交到指定的位置)

action设置的是提交的位置(我这里给的是web项目中servlet的路径)

PS:由于我修改了tomcat的配置文件(端口改为80),所以可以直接写项目路径.

如果你没有修改,那么action中应该填写的是:

IP地址+端口号+servlet的路径(相对路径)

上面两个属性的操作,相当于将表单数据传到了tomcat服务器

表单的提交

userName

passWord

function sub () {

//onsubmit事件根据方法的返回值对表单进行操作

//获取输入项的值

var userName = document.getElementById("userName").value;

var passWord = document.getElementById("passWord").value;

//对输入项的值进行判断

if (userName == "") {

alert("userName不能为空")

//不提交数据返回false

return false;

} else if (passWord == ""){

alert("passWord不能为空")

//不提交数据返回false

return false;

}

//提交数据

return true;

}

function success() {

document.write("注册成功");

}

---------------------------------------------------------------------------------------------------------------------------------------------------

下面是我的mysql工具类代码

由于连接数据库时会有很多重复操作(代码),于是将其提取出来写成工具类

这里读取配置文件使用的是ResourceBundle类中的getBundle("配置文件名")方法

getString("配置文件中的键")-------根据键获取值(键值对)

PS:这里对mysql进行操作是需要导入一个mysql的jar包的

public class JdbcUtil {//通过读取配置文件内容进行操作

public static String drivername;

public static String url;

public static String username;

public static String password;

public static String sql;

//在类加载时候,执行读取文件的操作

static {

drivername = ResourceBundle.getBundle("db").getString("drivername");

url = ResourceBundle.getBundle("db").getString("url");

username = ResourceBundle.getBundle("db").getString("username");

password = ResourceBundle.getBundle("db").getString("password");

sql = ResourceBundle.getBundle("db").getString("sql");

}

//加载驱动,进行初始化

public static Connection load() throws Exception{

Class.forName(drivername);

//创建与数据库的连接

Connection conn = DriverManager.getConnection(url,username,password);

return conn;

}

//释放资源

public static void release(Connection conn,java.sql.Statement stmt,ResultSet rs){

if (rs != null) {

try {

rs.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

rs = null;

if (stmt != null) {

try {

stmt.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

stmt = null;

if (conn != null) {

try {

conn.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

conn = null;

}

}

这个是配置文件

有了配置文件后,我们不用再去修改源码.

有什么操作直接修改配置文件即可.

drivername=com.mysql.jdbc.Driver

url=jdbc:mysql://localhost:3306/lx

username=root

password=root

sql=select * from stu where id=3

#sql=insert into stu values(4,'zhuhaifan',66,88)

#sql=delete from stu where id=4

#sql=update stu set id=4,username='chenchen'where id=5

---------------------------------------------------------------------------------------------------------------------------------------------------

下面的是我的servlet代码

通过ServletRequest 类中的getParameter()方法获取表单中的数据

同样是是根据键获取值(键值对)

接下来就是使用Jdbc对mysql数据库进行操作了

需要注意的是写sql操作语句时使用连接符+将参数拼接进去

public class TJ_servlet extends HttpServlet {

@Override

//获取表单提交的数据

public void service(ServletRequest srq, ServletResponse srp)

throws ServletException, IOException {

String username = srq.getParameter("userName");

String password = srq.getParameter("passWord");

insert(username,password);

}

private void insert(String username,String password) {

//创建空的引用

Connection con = null;

Statement sta = null;

ResultSet rs = null;

//

try {

// 加载驱动,获取连接

con = JdbcUtil.load();

// 获取处理对象

sta = con.createStatement();

// 编写sql代码

//插入操作insert into user values(id,username,password)

String sql = "insert into user values(null,'"+username+"','"+password+"')";

// 执行sql,查询

// 判断是否存在

if (sta.executeUpdate(sql) > 0) {

System.out.println("插入成功");

} else {

System.out.println("插入失败");

}

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally {

// 释放资源

JdbcUtil.shifang(con, sta, null);

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值