要求:

链接:https://pan.baidu.com/s/15NdAt-aiv-X9sRbMSfXYXQ 
提取码:7agw

web模板:

链接:https://pan.baidu.com/s/1Af33mSflqFHj-1gj4sOOpw 
提取码:wpye

对于这个web模板的修改是以测试的形式进行的,以前只是从零开始写一些简单的网页,没有接触过在模板的基础上修改网页,刚刚看到要求时,不知道从哪下手。

测试过后,感觉先了解模板的基本架构很重要,然后再按照要求去修改。我没有完成全部要求,只实现了一些,在编码的过程中遇到了许多问题,有的还待解决,以

后会进一步学习并解决问题。

模板的登录界面

登录的servlrt路径在login.html中已给出,下图

登录用的servlet

package com.Servlet;

import java.io.IOException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import com.DBUtil.DBUtil; public class LoginServlet extends HttpServlet{
private static final long serialVersionUID = 1L; //当从jsp跳转到servlet类时,首先执行service函数(这是定理)
protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException {
req.setCharacterEncoding("UTF-8");//设置字符集,避免乱码
String username = req.getParameter("user");//获取jsp界面的username1和password1的值
String password = req.getParameter("pwd"); Connection conn = DBUtil.getConn();//这里就是从DBUtil类里面得到连接
Statement state =null;
ResultSet rs = null;
int f=0;
try
{
String sql = "select * from user";//SQL语句
state = conn.createStatement();
rs=state.executeQuery(sql);
while(rs.next())
{ if(rs.getString("password").equals(password) && rs.getString("username").equals(username))
{
f=1; }
}
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
DBUtil.close(rs, state, conn);
} if(f==1)
{
System.out.println("登录成功!");
resp.sendRedirect(req.getContextPath()+"/main.html");
}
else
{
System.out.println("登录失败!");
resp.sendRedirect(req.getContextPath()+"/login.html");
}
} }

将该servlet的路径配置成上面所看到的路径

下面是xml文件

<?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_3_0.xsd" version="3.0">
<display-name>WJDC_web</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>
<servlet-name>CreateUserServlet</servlet-name>
<servlet-class>com.Servlet.CreateUserServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CreateUserServlet</servlet-name>
<url-pattern>/CreateUserServlet/CreateUserServlet</url-pattern>
</servlet-mapping> <servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.Servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/dengluServlet</url-pattern>
</servlet-mapping>
</web-app>

注册界面的jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html> <%@page import="com.Servlet.*"%>
<%@page import="com.Bean.*"%>
<%@page import="com.DBUtil.*"%>
<%@page import="com.Servlet.*"%>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css"> </style>
</head>
<body> <div class="colorcloth">
<div class="container">
<section>
<form action="${pageContext.request.contextPath}/CreateUserServlet/CreateUserServlet" method="post" onsubmit="return check()">
<!---${pageContext.request.contextPath}的目的是找到主工程的名字,/Servlet/Userservlet就是web.xml下面配置的路径,也就是servlet的路径--->
<span class="user">用户名</span>
<input type="text" name="user" class="buser" id="iuser" placeholder=" Usename">
<br/>
<span class="password">密码</span>
<input type="password" name="password" class="bpassword" id="ipassword" placeholder=" Password">
<br/>
<span class="again-password">确认密码</span>
<input type="password" name="again-password" class="bagain-password" id="iagain-password" placeholder=" Password">
<br/>
<span class="phone">手机号码</span>
<input type="text" name="phone" class="bphone" id="iphone" placeholder=" Phone">
<br/>
<span class="unit">所属单位</span>
<input type="text" name="unit" class="bunit" id="iunit" placeholder=" Unit">
<br/>
<input type="submit" value="创建" class="butn">
</form>
</section> <c:if test="${param.createerrortemp.equals('1') }">
<div class="createerror" id="icreateerror">
<p>两次输入的密码不一致</p>
</div>
</c:if> </div>
</div> <script type="text/javascript"> function check() { var username = document.getElementById("iuser");
var password = document.getElementById("ipassword");
var againpassword = document.getElementById("iagain-password");
var phone = document.getElementById("iphone");
var unit = document.getElementById("iunit"); var changdu = phone.value.length; //非空
if(username.value == '') {
alert('用户名为空');
username.focus();
return false;
}
if(password.value == '') {
alert('密码为空');
password.focus();
return false;
}
if(againpassword.value == '') {
alert('第二次输入密码为空');
againpassword.focus();
return false;
}
if(phone.value == '') {
alert('电话号码为空');
phone.focus();
return false;
} if(changdu != 11){
alert('电话号码长度错误');
phone.focus();
return false;
} if(unit.value == '') {
alert('所属单位为空');
unit.focus();
return false;
} if(password.value != againpassword.value) {
alert('密码不一致');
password.focus();
return false;
} } </script> </body>
</html>

注册所用的servlet

package com.Servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import com.Dao.*; public class CreateUserServlet extends HttpServlet {
private static final long serialVersionUID = 1L; //当从jsp跳转到servlet类时,首先执行service函数(这是定理)
protected void service(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException {
req.setCharacterEncoding("UTF-8");//设置字符集,避免乱码 String username = req.getParameter("user");
String password = req.getParameter("password");
String againpassword = req.getParameter("again-password");
String phone = req.getParameter("phone");
String unit = req.getParameter("unit"); if(!(password.equals(againpassword))) {
resp.sendRedirect(req.getContextPath()+"/register.jsp?createerrortemp=1");
}
else {
Dao dao = new Dao();
dao.createUser(username, password, phone, unit);
resp.sendRedirect(req.getContextPath()+"/main.html");
}
}
}

Dao文件

package com.Dao;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List; import com.Bean.*;
import com.DBUtil.DBUtil; public class Dao { //创建账户
public int createUser(String usernamee, String passwordd, String phonee, String unitt) { String username = usernamee;
String password = passwordd;
String phone = phonee;
String unit = unitt; Connection conn = DBUtil.getConn();//这里就是从DBUtil类里面得到连接
Statement state =null;
String sql = null; sql = "insert into user (username,password,phone,unit) values ('"+username+"','"+password+"','"+phone+"','"+unit+"')"; try {
state = conn.createStatement();
state.executeUpdate(sql);//执行sql语句
conn.close();
} catch (SQLException e) {
e.printStackTrace();
} return 0;
} }

对于系统菜单那一块的代码还是没弄明白,之后会继续学习,往下进行

在Java web模板的上进行编写的更多相关文章

  1. JAVA WEB快速入门之从编写一个基于SpringBoot+Mybatis快速创建的REST API项目了解SpringBoot、SpringMVC REST API、Mybatis等相关知识

    JAVA WEB快速入门系列之前的相关文章如下:(文章全部本人[梦在旅途原创],文中内容可能部份图片.代码参照网上资源) 第一篇:JAVA WEB快速入门之环境搭建 第二篇:JAVA WEB快速入门之 ...

  2. java web+模板

    这次测试需要在java web的基础上套入模板,在测试的过程中我遇到了许多问题,现在我可以使用模板来美化网页的许多格式.但是模板的许多代码我还是看不懂,其中有jquery的许多代码.在今后我会学习相关 ...

  3. JAVA WEB快速入门之从编写一个基于SpringMVC框架的网站了解Maven、SpringMVC、SpringJDBC

    接上篇<JAVA WEB快速入门之通过一个简单的Spring项目了解Spring的核心(AOP.IOC)>,了解了Spring的核心(AOP.IOC)后,我们再来学习与实践Maven.Sp ...

  4. java web(四)文件上传与下载

     一.文件上传原理 1.在TCP/IP中,最早出现的文件上传机制是FTP ,它是将文件由客户端发送到服务器的标准机制:但是在jsp使用过程中不能使用FTP方法上传文件,这是由jsp运行机制所决定. 通 ...

  5. JAVA WEB快速入门之从编写一个JSP WEB网站了解JSP WEB网站的基本结构、调试、部署

    接上篇<JAVA WEB快速入门之环境搭建>,在完成了环境搭建后(JDK.Tomcat.IDE),现在是万事具备,就差写代码了,今天就来从编写一个JSP WEB网站了解JSP WEB网站的 ...

  6. java+web+大文件上传下载

    文件上传是最古老的互联网操作之一,20多年来几乎没有怎么变化,还是操作麻烦.缺乏交互.用户体验差. 一.前端代码 英国程序员Remy Sharp总结了这些新的接口 ,本文在他的基础之上,讨论在前端采用 ...

  7. java web学习总结(二十三) -------------------编写自己的JDBC框架

    一.元数据介绍 元数据指的是"数据库"."表"."列"的定义信息. 1.1.DataBaseMetaData元数据 Connection.g ...

  8. Java WEB ----- 文件的上传

    最近学到的web阶段的文件的上传,就想记录一下,帮助自己复习以及帮助大家学习,一般我都会把上传的文件存到服务器中的web-inf 下面,因为这样用户不会直接访问到,我们存到数据库的一般都是路径.这里没 ...

  9. Java Web(十一) 文件上传与下载

    文件上传 上传的准备工作 表单method必须为post 提供file组件 设置form标签的enctype属性为multipart/form-data,如果没有设置enctype属性,浏览器是无法将 ...

随机推荐

  1. 【转】MySQL-Utilities,mysql工具包

    原文:https://blog.csdn.net/leshami/article/details/52795777 MySQL Utilities 是一组基于python语言编写的python库的命令 ...

  2. c语言程序命名规范:函数、变量、数组、文件名

    函数: //send or recv data task void send_recv_data(void *pvParameters); //get socket error code. retur ...

  3. 迭代器与iterable

    迭代器与iterable 最近在学习ES6,有两个概念一直纠缠不清,就是迭代器与iterable,查阅了一些资料,简单来说迭代器就是包含next方法的对象,而iterable是包含可以在其值上迭代的迭 ...

  4. BATJ的常见java面试题

    JAVA基础 JAVA中的几种基本数据类型是什么,各自占用多少字节. String类能被继承吗,为什么. 不可以,因为String类有final修饰符,而final修饰的类是不能被继承的,实现细节不允 ...

  5. 极*Java速成教程 - (1)

    序言 众所周知,程序员需要快速学习新知识,所以就有了<21天精通C++>和<MySQL-从删库到跑路>这样的书籍,Java作为更"高级"的语言也不应该落后, ...

  6. HashMap、HashTable、ConcurrentHashMap、TreeMap、LinkedHashMap、WeakHashMap区别

    1. HashMap   标准链地址法实现(下图).数组方式存储key/value,线程非安全,允许null作为key和value,key不可以重复,value允许重复,不保证元素迭代顺序是按照插入时 ...

  7. 如何在Ubuntu上在多个PHP版本之间切换 (for swoole)

    摘要: 之前一直用Php7.0,今天想用7.2试下一些特性,安装完之后,切换回7.0却不能再使用7.0的swoole了,原来是切换方式出现了问题 一 从PHP 7.0 切换到 PHP 7.2 Apac ...

  8. java面试02——基础

    1. JDK . JRE 和JVM有什么区别? JDK:Java Development Kit 的简称,Java 开发工具包,提供了 Java 的开发环境和运行环境. JRE:Java Runtim ...

  9. (转) oracle清空数据库脚本

    在开发过程中,可能经常需要重新初始化数据库,在初始化之前,我们肯定希望不再有以前的老表.存储过程等用户对象,用下面的教本就可以做到这一点: BEGIN     FOR rec IN     (SELE ...

  10. Gym-100814K 数位DP 模拟除法

    Johnny is a brilliant mathematics student. He loves mathematics since he was a child, now he is work ...