简单的基于Servlet的注册案例

效果(暂时只能输入英文)

 

整体项目架构:

前端注册界面网页:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<form action="Register" method="post">
		<table align="center">
			<tr>
				<td>name</td>
				<td>
					<input type="text" name="name"/>
				</td>
			</tr>
			<tr>
				<td>gender</td>
				<td>
					<input type="text" name="gender"/>
				</td>
			</tr>
			<tr>
				<td>salary</td>
				<td>
					<input type="text" name="salary"/>
				</td>
			</tr>
			<tr>
				<td>joinDay</td>
				<td>
					<input type="text" name="joinDay"/>
				</td>
			</tr>
			<tr align="center">
				<td colspan="2">
					<input type="submit" value="注册"/>
				</td>
			</tr>
		</table>
	</form>
</body>
</html>

数据库:

数据库名称为:dbjdbc      表名为 : emp   (后面的配置文件也是这么写的)

表创建语句:

CREATE TABLE `emp` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `NAME` varchar(10) DEFAULT NULL,
  `gender` char(1) DEFAULT NULL,
  `salary` double DEFAULT NULL,
  `join_date` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=gbk

c3p0配置文件内容:

<?xml version="1.0" encoding="UTF-8"?>
<!-- XML文件类似HTML文件,是一种树形结构的文件,上面的这个是文件的根节点 -->

<!-- 这里可以从名字看出,是c3p0的配置 -->
<c3p0-config>
	<default-config>
		<!-- 这是一个注释,XML文件的注释格式就是这样 -->
		<!-- 这下面四个是这个配置文件的必须项,出了错或者里面填写错误一定会失败,连接不到 -->
		<!-- 配置文件的内容,c3p0的jar包里面会读取这个文件这里面的配置,来连接到我们想要连接的数据库 -->
		<property name="driverClass">com.mysql.jdbc.Driver</property>
		<property name="jdbcUrl">jdbc:mysql:///dbjdbc</property>
		<property name="user">root</property>
		<property name="password">yht</property>
		
		<!-- 连接池参数 -->
		<!-- 这里是基本参数的设置,如果没有会有默认值,根据项目的运作情况,可以在这里面进行更改 -->
    	        <property name="initialPoolSize">5</property>
    	        <property name="maxPoolSize">10</property>
    	        <property name="checkoutTimeout">2000</property>
    	        <property name="maxIdleTime">1000</property>
	
	</default-config>
	
	
</c3p0-config>

后台

Bean

package com.yht.bean;

public class Emp {
	private int id;
	private String name;
	private String gender;
	private double salary;
	private String joinDay;
	
	public Emp() {
		super();
	}

	public Emp(int id, String name, String gender, double salary, String joinDay) {
		super();
		this.id = id;
		this.name = name;
		this.gender = gender;
		this.salary = salary;
		this.joinDay = joinDay;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getGender() {
		return gender;
	}

	public void setGender(String gender) {
		this.gender = gender;
	}

	public double getSalary() {
		return salary;
	}

	public void setSalary(double salary) {
		this.salary = salary;
	}

	public String getJoinDay() {
		return joinDay;
	}

	public void setJoinDay(String joinDay) {
		this.joinDay = joinDay;
	}
	
	
}

Dao:

package com.yht.dao;

import com.yht.bean.Emp;

public interface EmpDao {
	public int insertEmp(Emp emp);
}

Impl:

package com.yht.dao.impl;

import java.sql.SQLException;

import org.apache.commons.dbutils.QueryRunner;

import com.yht.bean.Emp;
import com.yht.dao.EmpDao;
import com.yht.utils.C3P0Utils;

public class EmpDaoImpl implements EmpDao{

	@Override
	public int insertEmp(Emp emp) {
		int result = 0;
		QueryRunner qr = new QueryRunner(C3P0Utils.getDataSource());
		String sql = "insert into emp values (null,?,?,?,?)";
		try {
			result = qr.update(sql,emp.getName(),emp.getGender(),emp.getSalary(),emp.getJoinDay());
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return result;
		
	}

}

Servlet:

package com.yht.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.yht.bean.Emp;
import com.yht.dao.EmpDao;
import com.yht.dao.impl.EmpDaoImpl;

public class Register extends HttpServlet {

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doPost(request,response);
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String name = request.getParameter("name");
		String gender = request.getParameter("gender");
		String salary = request.getParameter("salary");
		String joinDate = request.getParameter("joinDay");
		
		Emp emp = new Emp();
		emp.setName(name);
		emp.setGender(gender);
		emp.setSalary(Double.parseDouble(salary));
		emp.setJoinDay(joinDate);
		
		EmpDao dao = new EmpDaoImpl();
		int result = dao.insertEmp(emp);
		
		PrintWriter out = response.getWriter();
		if(result!=0){
			out.print("<h1 >success</h1>");
		}else{
			out.print("<h1 >fail</h1>");
		}
		
	}

}

C3p0Utils:

package com.yht.utils;

import java.sql.Connection;
import java.sql.SQLException;

import javax.sql.DataSource;

import com.mchange.v2.c3p0.ComboPooledDataSource;

public class C3P0Utils {
	
	private static DataSource ds = new ComboPooledDataSource();
	
	public static DataSource getDataSource(){
		return ds;
	}
	
	public static Connection getConnection(){
		Connection conn = null;
		
		try {
			conn = ds.getConnection();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return conn;
	}
}

web配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>Register</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <servlet>
    <description></description>
    <display-name>Register</display-name>
    <servlet-name>Register</servlet-name>
    <servlet-class>com.yht.servlet.Register</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Register</servlet-name>
    <url-pattern>/Register</url-pattern>
  </servlet-mapping>
</web-app>

jar包下载:

https://blog.csdn.net/qq_39565202/article/details/103295300

https://blog.csdn.net/qq_39565202/article/details/103297422

https://blog.csdn.net/qq_39565202/article/details/103302042

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值