基本功能:

  实现信息录入到数据库和信息规范检查

题目要求:

项目目录:

网页界面:

程序源码:

package Dao;

import java.sql.Connection;
import java.sql.Statement; import DB.DB; public class Dao {
public boolean add(String a,String b,String c,String d,String e,String f,String g,String h,String i,String j,String k,String l) { String sql = "insert into u(username,userpass,sex,name,xueid,email,xueyuan,xi,banji,nian,place,comment) values('" + a + "','" + b + "','" +c + "','" + d + "','" + e + "','" +f + "','" + g + "','" + h + "','" + i + "','" +g + "','" + k + "','" + l + "')";
Connection conn = DB.getConn();
Statement state = null;
int h1=0;
boolean p = false;
try {
state = conn.createStatement();
h1 = state.executeUpdate(sql);
} catch (Exception q) {
q.printStackTrace();
} finally {
DB.close(state, conn);
}
if(h1>0) {
p = true;
}
return p;
}
}

Dao.java

package DB;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; public class DB {
public static String db_url = "jdbc:mysql://localhost:3306/runoob?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false";
public static String db_user = "root";
public static String db_pass = "scfroot5201314@";
public static Connection getConn () {
Connection conn = null; try {
Class.forName("com.mysql.cj.jdbc.Driver");
conn = DriverManager.getConnection(db_url, db_user, db_pass);
} catch (Exception e) {
e.printStackTrace();
} return conn;
}
public static void close (Statement state, Connection conn) {
if (state != null) {
try {
state.close();
} catch (SQLException e) {
e.printStackTrace();
}
} if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public static void close (ResultSet rs, Statement state, Connection conn) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
} if (state != null) {
try {
state.close();
} catch (SQLException e) {
e.printStackTrace();
}
} if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
} }

DB.java

package Servlet;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import Dao.Dao; /**
* Servlet implementation class Servlet
*/
@WebServlet("/Servlet")
public class Servlet extends HttpServlet {
private static final long serialVersionUID = 1L;
Dao dao = new Dao(); protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("utf-8");
add(req, resp);
} private void add(HttpServletRequest req, HttpServletResponse resp) {
String a = req.getParameter("username");
String b = req.getParameter("userpass");
String c = req.getParameter("sex");
String d = req.getParameter("name"); String e = "2018"+req.getParameter("xueid");
String f = req.getParameter("email");
String g = req.getParameter("xueyuan");
String h = req.getParameter("xi"); String i = req.getParameter("banji");
String j = req.getParameter("nian");
String k = req.getParameter("place");
String l = req.getParameter("comment");
boolean p = dao.add(a, b, c, d, e, f, g, h,i,j,k,l);
try {
if (p) {
req.setAttribute("message", "添加成功!");
req.getRequestDispatcher("text.jsp").forward(req, resp);
} else {
req.setAttribute("message", "添加失败!");
req.getRequestDispatcher("text.jsp").forward(req, resp);
}
} catch (ServletException | IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} }
}

Servlet.java

<%@page contentType="text/html;charset=UTF-8"%>
<script language="JavaScript">
function check() {
//得到用户输入的信息 var username = document.form.username.value;
var userpass = document.form.userpass.value;
var sex = document.form.sex.value;
var name = document.form.name.value;
var xueid= document.form.xueid.value;
var xueyuan =document. form.xueyuan.value;
var xi = document.form.xi.value;
var email =document. form.email.value;
var banji = document.form.banji.value;
var nian =document. form.nian.value;
var place = document.form.place.value;
var comment = document.form.comment.value; //判断用户名长度
if (!minLength(username, 6)) {
alert("用户名长度小于6位!");
form.username.focus();
return false;
}
if (!maxLength(username, 12)) {
alert("用户名长度大于12位!");
form.username.focus();
return false;
}
if(!isDigital(username)){
alert("用户名只有字母可以开头");
form.username.focus();
return false;
} //判断口令长度
if (!minLength(userpass, 8)) {
alert("密码长度小于8位!");
form.userpass.focus();
return false;
}
if (!minLength(xueid, 4)) {
alert("学号长度小于8位!");
form.xueid.focus();
return false;
}
if (!isNumber(xueid)) {
alert("学号必须是数字");
form.xueid.focus();
return false;
} //验证E-mail的格式是否正确
if (!isEmail(email)) {
alert("E-mail格式不正确!");
form.email.focus();
return false;
} document.form.submit();
} //验证是否满足最小长度
function minLength(str, length) {
if (str.length >= length)
return true;
else
return false;
}
//判断是否满足最大长度
function maxLength(str, length) {
if (str.length <= length)
return true;
else
return false;
}
//判断首字母
function isDigital(str) { if (str.charAt(0) >= 'a' && str.charAt(0) <= 'z'||(str.charAt(0) >= 'A' && str.charAt(0) <= 'Z'))
return true;
else
return false; } //判断是否是整数
function isNumber(str)
{
for(i=0;i<str.length;i++)
{
//每一位都是0~9的数字,如果是第1位,则可以是“-”号
if(str.charAt(i)>='0'&&str.charAt(i)<='9'
||str.charAt(i)=='-'&&i==0)
continue;
else
return false;
}
return true;
} //判断是否是E-mail
function isEmail(email) {
if (email.length == 0)
return false;
index1 = email.indexOf('@');
index2 = email.indexOf('.');
if (index1 < 1//@符号不存在,或者在第一个位置
|| index2 < 1//.符号不存在,或者在第一个位置
|| index2 - index1 < 2//.在@的左边或者相邻
|| index2 + 1 == email.length)//.符号后面没有东西
return false
else
return true;
}
</script>
<html>
<head>
<title>添加学生信息</title>
</head>
<body>
<%
Object message = request.getAttribute("message");
if(message!=null && !"".equals(message)){
%>
<script type="text/javascript">
alert("<%=request.getAttribute("message")%>");
</script>
<%} %>
<form name="form" action="Servlet" method="post"> <table align="center"> <tr>
<td>登录账号:</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>登陆密码:</td>
<td><input type="password" name="userpass"></td>
</tr> <tr>
<td>性别:</td>
<td><select name="sex"> <option value="男" selected>男</option>
<option value="女 " >女</option> </select></td>
</tr>
<tr>
<td>姓名:</td>
<td><input type="text" name="name"></td>
</tr>
<tr>
<td>学号:</td>
<td>2018<input type="text" name="xueid" maxlength="4"></td>
</tr>
<tr>
<td>电子邮件:</td>
<td><input type="text" name="email">
</td>
</tr>
<tr>
<td>所在学院:</td>
<td><input type="text" name="xueyuan"></td>
</tr>
<tr>
<td>所在系:</td>
<td><input type="text" name="xi"></td>
</tr>
<tr>
<td>所在班级:</td>
<td><input type="text" name="banji"></td>
</tr>
<tr>
<td>入学年份(届):</td>
<td><select name="nian"> <option value="2017">2017</option>
<option value="2018 " selected>2018</option>
<option value="2019 ">2019</option> </select></td>
</tr>
<tr>
<td>生源地:</td>
<td><input type="text" name="place"></td>
</tr>
<tr>
<td>备注:</td>
<td><textarea rows="8" name="comment" cols="40"></textarea></td>
</tr>
<tr> <td><input type="button" value="提交" onclick="check()"></td>
</tr>
</table>
</form>
</body>
</html>

text.jsp

第一个javaWeb项目-注册界面的更多相关文章

  1. (转)一个JavaWeb项目开发总结

    原文地址:http://www.cnblogs.com/lzb1096101803/p/4907775.html 一.学会如何读一个JavaWeb项目源代码 步骤:表结构->web.xml-&g ...

  2. 一个JavaWeb项目开发总结

    一.学会如何读一个JavaWeb项目源代码 步骤:表结构->web.xml->mvc->db->spring ioc->log->代码 先了解项目数据库的表结构,这 ...

  3. 转:创建一个javaweb项目,以及导出war包

    一.使用IDEA创建一个javaweb项目 1.File->New Project选择Web Application 1 2 然后填写好路径和项目名称,点击确定. 1 2 2.先看一下刚创建好的 ...

  4. 怎用不用工具创建一个javaWeb项目

    整体步骤是: 1: 新建一个文件夹:  以项目名称命名 2:在新建的文件夹下再新建一个文件夹 WEB-INF  (注意:大小写) 和 一个文件  index.jsp : index.jsp里面的代码: ...

  5. 用STS和Maven的方式创建一个JavaWeb项目

    一.创建项目 1.Eclipse中用Maven创建项目,选maven-archetype-webapp,如下图: 创建好项目后,目录如下: 至此,项目已经创建完毕,下边是配置.关键所在!!! 二.项目 ...

  6. 从基于idea的第一个javaweb项目到shell脚本项目自动发布(jdk1.8,mysql5.7,maven3.5,tomcat9,subversion,centos7.3)之一

    首先说一下为什么写这篇文章,因为从正式参加工作就做javaweb开发,一路走来,碰到了很多的问题,每次问题都想从度娘那里得到准确的答案,但是,每个人遇到的问题不尽相同,问题的解决方案有时候也只是仅供参 ...

  7. IDEA2017.3.3创建第一个javaweb项目及tomcat部署实战

    一.创建简单web项目 1. 选择jdk(这里有点小问题不是很理解,通过java -verbose查找出来的jdk路径在C盘,这里并不能识别,而我jdk安装的时候有自己的路径在D盘,导入后就是图中的j ...

  8. (一)新建一个javaweb项目

    一.为了不影响其他项目,可以重新选择一个新的工作目录:swith workspace 二.为了尽可能统一项目,所使用的编程环境,包括:Tomcat.JRE都是项目组自己的,所以在新建项目的时候要注意选 ...

  9. javaweb开发2.新建一个javaweb项目

    1.File → New → Dynamic Web Project 2.创建一个Dynamic Web Project 3.点击“Next”下一步 4.点击“Next”下一步 5.点击“Finish ...

随机推荐

  1. H3C DHCP地址分配方式

  2. 一道非常棘手的 Java 面试题:i++ 是线程安全的吗

    转载自  一道非常棘手的 Java 面试题:i++ 是线程安全的吗 i++ 是线程安全的吗? 相信很多中高级的 Java 面试者都遇到过这个问题,很多对这个不是很清楚的肯定是一脸蒙逼.内心肯定还在质疑 ...

  3. ASP.NET MVC4.0+EF+LINQ+bui+网站+角色权限管理系统(5)

    我参考了bui官网,里面提供了大量的接口案例和效果,之前下载的前端框架完全不需要bootstrap,所以从这一节开始,不再使用bootstrap(当然不想改变的也可以继续使用之前的框架,不影响使用), ...

  4. 关于electron中入口文件main.js一些重要参数(持续更新maybe)

    const {app, BrowserWindow} = require('electron') const path = require('path') let mainWindow functio ...

  5. tensorflow学习笔记——ResNet

    自2012年AlexNet提出以来,图像分类.目标检测等一系列领域都被卷积神经网络CNN统治着.接下来的时间里,人们不断设计新的深度学习网络模型来获得更好的训练效果.一般而言,许多网络结构的改进(例如 ...

  6. ssh批量免密

    expect命令在linux下实现批量ssh免密 发布时间:2017-11-27 08:41:39 投稿:laozhang 本次文章主要给大家讲解了在linux系统下用expect命令实现批量ssh免 ...

  7. 搭建个人/企业私有云盘-seafile

    一.安装依赖组件 安装前的准备工作安装 Seafile 服务器之前,请确认已安装以下软件MariaDB 或者 MySQL 服务器 (MariaDB 是 MySQL 的分支),python 2.7 (从 ...

  8. 0001 认识WEB( 标准)

    认识WEB 1. 认识网页 网页主要由文字.图像和超链接等元素构成.当然,除了这些元素,网页中还可以包含音频.视频以及Flash等. 思考: 网页是如何形成的呢? 总结 网页有图片.链接.文字等元素组 ...

  9. docker容器内存占用过高(例如mysql)

    简介 该文章适用于配置低,特别是内存低的服务器,在用容器部署服务时有可能会因为容器占用内存过高导致服务挂掉时参考解决(不是运行在容器里的话,也是可以修改mysql的配置文件限制内存占用) 最近用doc ...

  10. 【题解】HDU Homework(倍增)

    [题解]HDU Homework(倍增) 矩阵题一定要多多检查一下是否行列反了... 一百个递推项一定要存101个 说多了都是泪啊 一下午就做了这一道题因为实在是太菜了太久没写这种矩阵的题目... 设 ...