基本功能:

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

题目要求:

项目目录:

网页界面:

程序源码:

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. 1471 - Defense Lines

    After the last war devastated your country, you - as the king of the land of Ardenia - decided it wa ...

  2. 在js中arguments对象的理解

    一.在函数调用的时候,浏览器每次都会传递进两个隐式参数 函数的上下文对象this 封装实参的对象arguments 二.arguments 对象 arguments 对象实际上是所在函数的一个内置类数 ...

  3. vue 使用webpack打包后路径报错以及 alias 的使用

    一.vue 使用webpack打包后路径报错(两步解决) 1. config文件夹 ==> index.js ==> 把assetsPublicPath的 '/ '改为 './' 2. b ...

  4. vue中处理时间格式化的问题

    vue main.js中修改Date原型链,插入(百度) Date.prototype.format = function(fmt) { var o = { "M+" : this ...

  5. addEventListener() 方法,事件监听(去哪儿网用到过)

    addEventListener() 方法,事件监听 你可以使用 removeEventListener() 方法来移除事件的监听. 语法 element.addEventListener(event ...

  6. mysql高可用解决方案

    浅谈mysql主从复制的高可用解决方案 1.熟悉几个组件(部分摘自网络)1.1.drbd     —— DRBD(Distributed Replicated Block Device),DRBD号称 ...

  7. 大数据vs计算机

    大数据有两个方向,一个是偏计算机的,另一个是偏经济的.你学过Java,所以你可以偏将计算机 基础1. 读书<Introduction to Data Mining>,这本书很浅显易懂,没有 ...

  8. (转载)window安装mysql

    一.MYSQL的安装 1.打开下载的mysql安装文件mysql-5.5.27-win32.zip,双击解压缩,运行“setup.exe”. 2.选择安装类型,有“Typical(默认)”.“Comp ...

  9. codeforces -1214 E

    题目https://codeforces.com/problemset/problem/1214/E 就是得知奇数之间不产生影响,先造出一条链,再用偶数往里插就行.链要di从大到小排个序呀!! #in ...

  10. 2019 ICPC南昌网络赛 B题

    英雄灭火问题忽略了一点丫 一个超级源点的事情,需要考虑周全丫 2 #include<cstdio> #include<cstring> #include<queue> ...